25 #ifndef RINGBUFFER_H_INCLUDED
26 #define RINGBUFFER_H_INCLUDED
30 typedef struct _RingBuffer
gboolean ring_buffer_is_allocated(RingBuffer *self)
Definition: ringbuffer.c:51
gpointer ring_buffer_tail(RingBuffer *self)
Definition: ringbuffer.c:95
gpointer ring_buffer_element_at(RingBuffer *self, guint32 idx)
Definition: ringbuffer.c:150
gboolean ring_buffer_is_full(RingBuffer *self)
Definition: ringbuffer.c:69
void ring_buffer_init(RingBuffer *self)
Definition: ringbuffer.c:28
void ring_buffer_free(RingBuffer *self)
Definition: ringbuffer.c:57
gpointer ring_buffer_push(RingBuffer *self)
Definition: ringbuffer.c:81
gpointer ring_buffer_pop(RingBuffer *self)
Definition: ringbuffer.c:108
void ring_buffer_alloc(RingBuffer *self, guint32 size_of_element, guint32 capacity)
Definition: ringbuffer.c:39
guint32 ring_buffer_count(RingBuffer *self)
Definition: ringbuffer.c:144
gboolean ring_buffer_is_empty(RingBuffer *self)
Definition: ringbuffer.c:75
gboolean(* RingBufferIsContinuousPredicate)(gpointer element)
Definition: ringbuffer.h:40
gboolean ring_buffer_drop(RingBuffer *self, guint32 n)
Definition: ringbuffer.c:124
guint32 ring_buffer_capacity(RingBuffer *self)
Definition: ringbuffer.c:138
guint32 ring_buffer_get_continual_range_length(RingBuffer *self, RingBufferIsContinuousPredicate pred)
Definition: ringbuffer.c:161
Definition: ringbuffer.h:31
gpointer buffer
Definition: ringbuffer.h:32
guint32 head
Definition: ringbuffer.h:33
guint32 element_size
Definition: ringbuffer.h:37
guint32 tail
Definition: ringbuffer.h:34
guint32 count
Definition: ringbuffer.h:35
guint32 capacity
Definition: ringbuffer.h:36