summaryrefslogtreecommitdiffstats
path: root/lf_ringbuffer_data.h
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2010-01-12 12:53:12 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2010-01-12 12:53:12 +0100
commited364de0e13fcb70d890ffa3763e7c7ec5a5797b (patch)
tree5e47e7a20f396bfd7c6b08ceaab09adc414e21b3 /lf_ringbuffer_data.h
parent3bb0657778d620919f13e087ad05fbb6aadc63e5 (diff)
downloadlock_free-ed364de0e13fcb70d890ffa3763e7c7ec5a5797b.zip
lock_free-ed364de0e13fcb70d890ffa3763e7c7ec5a5797b.tar.gz
rename ring_buffer to ringbuffer and remove previous attempt
Diffstat (limited to 'lf_ringbuffer_data.h')
-rw-r--r--lf_ringbuffer_data.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/lf_ringbuffer_data.h b/lf_ringbuffer_data.h
new file mode 100644
index 0000000..80092d5
--- /dev/null
+++ b/lf_ringbuffer_data.h
@@ -0,0 +1,20 @@
+
+typedef char rb_data_t;
+
+#define RB_DATA_LEN 24
+
+typedef struct buffer {
+ char status;
+ rb_data_t data[RB_DATA_LEN];
+} rb_buffer_t;
+
+#define LFRB_DATA_SIZE ( sizeof(rb_data_t)*RB_DATA_LEN )
+
+#define LFRB_BUFFER_TYPE rb_buffer_t
+#define LFRB_BUFFER_SIZE ( sizeof(rb_buffer_t) )
+
+#define LFRB_IS_AVAILABLE( el ) (el.status==0)
+#define LFRB_MARK_AS_FILLED( el ) { (el).status=1; }
+#define LFRB_MARK_AS_READ( el ) { (el).status=0; }
+#define LFRB_DATA_PTR( el ) (el).data
+