-/** \file ringbuffer.h exported symbols from ringbuffer.c */
-void *ringbuffer_new(unsigned size);
-void *ringbuffer_add(void *cookie, void *data);
-void *ringbuffer_get(void *cookie, int num);
-unsigned ringbuffer_filled(void *cookie);
+/* Copyright (C) 2006 Andre Noll <maan@tuebingen.mpg.de>, see file COPYING. */
+/** \file ringbuffer.h Exported symbols from ringbuffer.c. */
+
+struct ringbuffer;
+
+struct ringbuffer *ringbuffer_new(unsigned size);
+void *ringbuffer_add(struct ringbuffer *rb, void *data);
+void *ringbuffer_get(struct ringbuffer *rb, int num);
+unsigned ringbuffer_filled(struct ringbuffer *rb);