px_queue_idx_t item_count
Number of items stored in queue.
px_queue_item_size_t item_size
Size of each item.
uint8_t * buf
Buffer to hold item data.
px_queue_idx_t idx_wr
Write index.
px_queue_idx_t items_max
Maximum number of items that can be stored in queue.
px_queue_idx_t idx_rd
Read index.
uint8_t px_queue_idx_t
Queue index size definition.
bool px_queue_wr(px_queue_t *queue, const void *item_data)
Write a new item to the queue.
bool px_queue_is_full(px_queue_t *queue)
See if the queue is full.
bool px_queue_rd(px_queue_t *queue, void *item_data)
Read the oldest item from the queue.
uint8_t px_queue_item_size_t
Queue item size definition.
void px_queue_flush(px_queue_t *queue)
Remove all items from queue.
px_queue_idx_t px_queue_get_item_count(px_queue_t *queue)
Get the number of items in the queue.
bool px_queue_discard_oldest(px_queue_t *queue)
Remove oldest item from queue.
void px_queue_init(px_queue_t *queue, void *buf, px_queue_idx_t items_max, px_queue_item_size_t item_size)
Initialises a queue structure.
bool px_queue_is_empty(px_queue_t *queue)
See if the queue is empty.