Defines event queue functionality for producer/consumer patterns. More...


Go to the source code of this file.
Data Structures | |
| struct | sys_event_queue_t |
| Event queue structure for producer/consumer patterns. More... | |
Typedefs | |
| typedef void * | sys_event_t |
| Event type for queue items. More... | |
Functions | |
| sys_event_queue_t | sys_event_queue_init (size_t capacity) |
| Initialize a new event queue. More... | |
| void | sys_event_queue_finalize (sys_event_queue_t *queue) |
| Finalize and cleanup an event queue. More... | |
| bool | sys_event_queue_push (sys_event_queue_t *queue, sys_event_t event) |
| Push an event to the queue (always succeeds) More... | |
| bool | sys_event_queue_try_push (sys_event_queue_t *queue, sys_event_t event) |
| Try to push an event without overwriting. More... | |
| sys_event_t | sys_event_queue_peek (sys_event_queue_t *queue) |
| Peek at the next event without removing it. More... | |
| sys_event_t | sys_event_queue_pop (sys_event_queue_t *queue) |
| Remove and return the next event (blocking) More... | |
| sys_event_t | sys_event_queue_try_pop (sys_event_queue_t *queue) |
| Try to remove and return the next event (non-blocking) More... | |
| sys_event_t | sys_event_queue_timed_pop (sys_event_queue_t *queue, uint32_t timeout_ms) |
| Remove and return the next event with timeout. More... | |
| size_t | sys_event_queue_size (sys_event_queue_t *queue) |
| Get the current number of events in the queue. More... | |
| bool | sys_event_queue_empty (sys_event_queue_t *queue) |
| Check if the queue is empty. More... | |
| void | sys_event_queue_shutdown (sys_event_queue_t *queue) |
| Shut down the queue gracefully. More... | |
| bool | sys_event_queue_lock (sys_event_queue_t *queue) |
| Lock the queue for manual synchronization. More... | |
| bool | sys_event_queue_unlock (sys_event_queue_t *queue) |
| Unlock the queue after manual synchronization. More... | |
| static bool | sys_event_queue_valid (sys_event_queue_t *queue) |
| Check if the queue is valid and usable for operations. More... | |
Defines event queue functionality for producer/consumer patterns.
Definition in file event.h.