28#define QUEUE_DELAY_BLOCKING 0xFFFFFFFFU
StatusCode queue_init(Queue *queue)
Create a queue with the parameters specified in settings.
Definition: queues.c:18
StatusCode queue_send_from_isr(Queue *queue, const void *item, BaseType_t *higher_prio_woken)
Place an item into the queue from an ISR.
Definition: queues.c:41
uint32_t queue_get_num_items(Queue *queue)
Retrieve the total number of spaces in the queue.
Definition: queues.c:107
void delay_ms(uint32_t time_ms)
Blocking delay for some amount of time in milliseconds.
Definition: delay.c:20
StatusCode queue_peek(Queue *queue, void *buf, uint32_t delay_ms)
Receive an item from the queue without removing it.
Definition: queues.c:80
uint32_t queue_get_spaces_available(Queue *queue)
Retrieve the space left in the queue.
Definition: queues.c:100
void queue_reset(Queue *queue)
Reset all data in the queue.
Definition: queues.c:93
StatusCode queue_receive(Queue *queue, void *buf, uint32_t delay_ms)
Retrieve an item from the queue, delaying for delay_ms before timing out.
Definition: queues.c:54
StatusCode queue_send(Queue *queue, const void *item, uint32_t delay_ms)
Place an item into the queue, delaying for delay_ms before timing out.
Definition: queues.c:28
StatusCode queue_receive_from_isr(Queue *queue, void *buf, BaseType_t *higher_prio_woken)
Retrieve an item from the queue, delaying for delay_ms before timing out.
Definition: queues.c:67
StatusCode
StatusCodes for various errors.
Definition: status.h:27
Queue storage and access struct.
Definition: queues.h:33
QueueHandle_t handle
Definition: queues.h:38
uint32_t num_items
Definition: queues.h:34
StaticQueue_t queue
Definition: queues.h:37
uint32_t item_size
Definition: queues.h:35
uint8_t * storage_buf
Definition: queues.h:36