18#ifndef ZEPHYR_INCLUDE_MPIPE_BASE_MPIPE_APP_SINK_H_
19#define ZEPHYR_INCLUDE_MPIPE_BASE_MPIPE_APP_SINK_H_
94 char msgq_buffer[CONFIG_MPIPE_BASE_APP_SINK_QUEUE_DEPTH *
sizeof(
void *)];
int mpipe_app_sink_pull(struct mpipe_app_sink *app_sink, struct net_buf **buf, k_timeout_t timeout)
Pull the next buffer.
int mpipe_app_sink_init(struct mpipe_app_sink *app_sink, uint8_t id)
Initialize an application sink element.
void(* mpipe_app_sink_cb_t)(const struct net_buf *buf, void *user_data)
Buffer callback.
Definition mpipe_app_sink.h:69
@ MPIPE_PROP_BASE_APP_SINK_CB
Buffer callback, a const struct mpipe_app_sink_cb pointer, copied.
Definition mpipe_app_sink.h:57
@ MPIPE_PROP_BASE_APP_SINK_CAPS
Capability this sink accepts, a const struct mpipe_structure pointer, copied.
Definition mpipe_app_sink.h:52
@ MPIPE_PROP_SINK_LAST
Last sink property marker (for validation/iteration).
Definition mpipe_sink.h:49
Element: the unit a pipeline is built from.
Sink: an element that consumes buffers.
Structure: one media capability, held by value.
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Message Queue Structure.
Definition kernel.h:5265
Kernel timeout type.
Definition clock.h:65
Callback registration for MPIPE_PROP_BASE_APP_SINK_CB.
Definition mpipe_app_sink.h:74
void * user_data
Passed through to the callback.
Definition mpipe_app_sink.h:78
mpipe_app_sink_cb_t fn
Function to call for every buffer.
Definition mpipe_app_sink.h:76
Application sink element structure.
Definition mpipe_app_sink.h:84
struct mpipe_sink sink
Base sink element (must be first).
Definition mpipe_app_sink.h:86
struct k_msgq msgq
Queue of buffers awaiting a pull (when no callback is set).
Definition mpipe_app_sink.h:92
struct mpipe_app_sink_cb cb
Optional buffer callback.
Definition mpipe_app_sink.h:90
struct mpipe_structure caps
Capability the sink accepts, offered at every negotiation.
Definition mpipe_app_sink.h:88
char msgq_buffer[CONFIG_MPIPE_BASE_APP_SINK_QUEUE_DEPTH *sizeof(void *)]
Backing storage for the queue.
Definition mpipe_app_sink.h:94
Sink Element Structure.
Definition mpipe_sink.h:58
Fixed-size container holding the fields of one capability.
Definition mpipe_structure.h:179
Network buffer representation.
Definition net_buf.h:1054
uint8_t user_data[]
System metadata for this buffer.
Definition net_buf.h:1164