|
oveRTOS C API
Embedded RTOS framework — build system, configuration, and portable C API
|


Go to the source code of this file.
Typedefs | |
| typedef struct ove_queue * | ove_queue_t |
| Opaque handle for a message queue object. | |
Functions | |
| OVE_NODISCARD int | ove_queue_init (ove_queue_t *q, ove_queue_storage_t *storage, void *buffer, size_t item_size, unsigned int max_items) OVE_NONNULL(1 |
| Initialise a queue using caller-supplied static storage and data buffer. | |
| OVE_NODISCARD int void | ove_queue_deinit (ove_queue_t q) |
| Release resources held by a queue initialised with ove_queue_init(). | |
| OVE_NODISCARD int | ove_queue_create (ove_queue_t *q, size_t item_size, unsigned int max_items) OVE_NONNULL(1) |
| Allocate and initialise a queue from the heap. | |
| void | ove_queue_destroy (ove_queue_t q) |
| Destroy and free a queue allocated with ove_queue_create(). | |
| OVE_NODISCARD int | ove_queue_send (ove_queue_t q, const void *data, uint64_t timeout_ns) OVE_NONNULL(1 |
| Send an item to the back of the queue, blocking if it is full. | |
| OVE_NODISCARD int static OVE_NODISCARD int | ove_queue_send_until (ove_queue_t q, const void *data, uint64_t deadline_ns) |
| Deadline-based variant of ove_queue_send. | |
| OVE_NODISCARD int | ove_queue_receive (ove_queue_t q, void *buf, uint64_t timeout_ns) OVE_NONNULL(1 |
| Receive (remove) an item from the front of the queue, blocking if it is empty. | |
| OVE_NODISCARD int static OVE_NODISCARD int | ove_queue_receive_until (ove_queue_t q, void *buf, uint64_t deadline_ns) |
| Deadline-based variant of ove_queue_receive. | |
| OVE_NODISCARD int | ove_queue_send_from_isr (ove_queue_t q, const void *data) OVE_NONNULL(1 |
| Send an item to the queue from an interrupt service routine. | |
| OVE_NODISCARD int OVE_NODISCARD int | ove_queue_receive_from_isr (ove_queue_t q, void *buf) OVE_NONNULL(1 |
| Receive an item from the queue from an interrupt service routine. | |
| OVE_NODISCARD int OVE_NODISCARD int int | ove_queue_set_notify (ove_queue_t q, ove_notify_cb cb, void *user_data) OVE_NONNULL(1) |
| Register a notify callback fired after every successful send. | |