15 #ifndef FREERTOS_RINGBUF_H
16 #define FREERTOS_RINGBUF_H
24 #define RINGBUF_TYPE_NOSPLIT 0
25 #define RINGBUF_TYPE_BYTEBUF 2
27 typedef unsigned RingbufferType_t;
28 typedef void * RingbufHandle_t;
30 RingbufHandle_t xRingbufferCreate(
size_t xBufferSize, RingbufferType_t xBufferType);
32 void vRingbufferDelete(RingbufHandle_t xRingbuffer);
34 void *xRingbufferReceiveUpTo(RingbufHandle_t xRingbuffer,
36 TickType_t xTicksToWait,
39 BaseType_t xRingbufferSendFromISR(RingbufHandle_t xRingbuffer,
42 BaseType_t *pxHigherPriorityTaskWoken);
44 void *xRingbufferReceiveUpToFromISR(RingbufHandle_t xRingbuffer,
45 size_t *pxItemSize,
size_t xMaxSize);
47 void *xRingbufferReceiveFromISR(RingbufHandle_t xRingbuffer,
size_t *pxItemSize);
49 void vRingbufferReturnItemFromISR(RingbufHandle_t xRingbuffer,
void *pvItem,
50 BaseType_t *pxHigherPriorityTaskWoken);