|
Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
|
Application source element. More...
#include <stdint.h>#include <zephyr/kernel.h>#include <zephyr/net_buf.h>#include <zephyr/mpipe/mpipe_buffer.h>#include <zephyr/mpipe/mpipe_element.h>#include <zephyr/mpipe/mpipe_src.h>#include <zephyr/mpipe/mpipe_structure.h>Go to the source code of this file.
Data Structures | |
| struct | mpipe_app_src |
| Application source element structure. More... | |
Enumerations | |
| enum | { MPIPE_PROP_BASE_APP_SRC_CAPS = MPIPE_PROP_SRC_LAST } |
| Application source property identifiers. More... | |
Functions | |
| int | mpipe_app_src_init (struct mpipe_app_src *app_src, uint8_t id) |
| Initialize an application source element. | |
| int | mpipe_app_src_alloc (struct mpipe_app_src *app_src, uint32_t size, k_timeout_t timeout, struct net_buf **buf) |
| Take a buffer of the element's pool to fill in place. | |
| int | mpipe_app_src_push_buf (struct mpipe_app_src *app_src, struct net_buf *buf, uint32_t size, k_timeout_t timeout) |
| Queue a filled buffer into the pipeline. | |
| int | mpipe_app_src_push (struct mpipe_app_src *app_src, const void *data, uint32_t size, k_timeout_t timeout) |
| Push one payload into the pipeline, by copy. | |
| int | mpipe_app_src_eos (struct mpipe_app_src *app_src, k_timeout_t timeout) |
| Declare end of stream. | |
Application source element.
The app_src element lets the application inject data into a pipeline: the application pushes payloads at its own pace and declares end of stream explicitly. The pipeline thread consumes them as any other source's buffers.