Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

Application source element. More...

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.

Detailed Description

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.