|
PipeWire 1.2.8
|
Ring buffer implementation. More...
Files | |
| file | ringbuffer.h |
| spa/utils/ringbuffer.h | |
Data Structures | |
| struct | spa_ringbuffer |
| A ringbuffer type. More... | |
Macros | |
| #define | SPA_RINGBUFFER_INIT() |
Functions | |
| static void | spa_ringbuffer_init (struct spa_ringbuffer *rbuf) |
| Initialize a spa_ringbuffer with size. | |
| static void | spa_ringbuffer_set_avail (struct spa_ringbuffer *rbuf, uint32_t size) |
| Sets the pointers so that the ringbuffer contains size bytes. | |
| static int32_t | spa_ringbuffer_get_read_index (struct spa_ringbuffer *rbuf, uint32_t *index) |
| Get the read index and available bytes for reading. | |
| static void | spa_ringbuffer_read_data (struct spa_ringbuffer *rbuf, const void *buffer, uint32_t size, uint32_t offset, void *data, uint32_t len) |
| Read len bytes from rbuf starting offset. | |
| static void | spa_ringbuffer_read_update (struct spa_ringbuffer *rbuf, int32_t index) |
| Update the read pointer to index. | |
| static int32_t | spa_ringbuffer_get_write_index (struct spa_ringbuffer *rbuf, uint32_t *index) |
| Get the write index and the number of bytes inside the ringbuffer. | |
| static void | spa_ringbuffer_write_data (struct spa_ringbuffer *rbuf, void *buffer, uint32_t size, uint32_t offset, const void *data, uint32_t len) |
| Write len bytes to buffer starting offset. | |
| static void | spa_ringbuffer_write_update (struct spa_ringbuffer *rbuf, int32_t index) |
| Update the write pointer to index. | |
Ring buffer implementation.
| #define SPA_RINGBUFFER_INIT | ( | ) |
|
inlinestatic |
Initialize a spa_ringbuffer with size.
| rbuf | a spa_ringbuffer |
|
inlinestatic |
Sets the pointers so that the ringbuffer contains size bytes.
| rbuf | a spa_ringbuffer |
| size | the target size of rbuf |
|
inlinestatic |
Get the read index and available bytes for reading.
| rbuf | a spa_ringbuffer |
| index | the value of readindex, should be taken modulo the size of the ringbuffer memory to get the offset in the ringbuffer memory |
|
inlinestatic |
Read len bytes from rbuf starting offset.
offset must be taken modulo size and len should be smaller than size.
| rbuf | a struct Ringbuffer |
| buffer | memory to read from |
| size | the size of buffer |
| offset | offset in buffer to read from |
| data | destination memory |
| len | number of bytes to read |
|
inlinestatic |
Update the read pointer to index.
| rbuf | a spa_ringbuffer |
| index | new index |
|
inlinestatic |
Get the write index and the number of bytes inside the ringbuffer.
| rbuf | a spa_ringbuffer |
| index | the value of writeindex, should be taken modulo the size of the ringbuffer memory to get the offset in the ringbuffer memory |
|
inlinestatic |
Write len bytes to buffer starting offset.
offset must be taken modulo size and len should be smaller than size.
| rbuf | a spa_ringbuffer |
| buffer | memory to write to |
| size | the size of buffer |
| offset | offset in buffer to write to |
| data | source memory |
| len | number of bytes to write |
|
inlinestatic |
Update the write pointer to index.
| rbuf | a spa_ringbuffer |
| index | new index |