From acd54f11b21ebcc3eadfbf7d4be14639fac82ca8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Thu, 1 Jan 2015 19:35:15 +0100 Subject: Add rudimentary support for jump list (CTRL+{O,I}) --- ring-buffer.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 ring-buffer.h (limited to 'ring-buffer.h') diff --git a/ring-buffer.h b/ring-buffer.h new file mode 100644 index 0000000..cfd70e0 --- /dev/null +++ b/ring-buffer.h @@ -0,0 +1,21 @@ +#ifndef RING_BUFFER_H +#define RING_BUFFER_H + +#include +#include + +/* + * Circular buffer with functions for accessing elements in order. + * One slot always remains unused to distinguish between the empty/full case. + */ + +typedef struct RingBuffer RingBuffer; + +RingBuffer *ringbuf_alloc(size_t size); +void ringbuf_free(RingBuffer*); +void ringbuf_add(RingBuffer*, const void *value); +const void *ringbuf_prev(RingBuffer*); +const void *ringbuf_next(RingBuffer*); +void ringbuf_invalidate(RingBuffer*); + +#endif -- cgit v1.2.3