Zephyr Project API 4.5.0-rc2
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

Queue element structure. More...

#include <mpipe_queue.h>

Data Fields

struct mpipe_transform transform
 Base transform element.
struct mpipe_thread thread
 Dedicated thread for downstream processing.
struct k_msgq msgq
 Queue of buffer pointers.
char msgq_buffer [(CONFIG_MPIPE_BASE_QUEUE_MAX_SIZE+2) *sizeof(void *)]
 Backing storage for the message queue, sized for the largest queue plus the EOS and pause sentinels.
uint8_t size
 Number of buffers the queue can hold, bounded by.
uint8_t leak
 Leak policy of a full queue, an mpipe_base_queue_leak.
atomic_t flushing
 Set on PAUSED -> READY: the processing function drops buffers instead of enqueuing them, which releases a producer blocked in k_msgq_put().

Detailed Description

Queue element structure.

Field Documentation

◆ flushing

atomic_t mpipe_queue::flushing

Set on PAUSED -> READY: the processing function drops buffers instead of enqueuing them, which releases a producer blocked in k_msgq_put().

◆ leak

uint8_t mpipe_queue::leak

Leak policy of a full queue, an mpipe_base_queue_leak.

◆ msgq

struct k_msgq mpipe_queue::msgq

Queue of buffer pointers.

A k_msgq rather than a k_fifo, so that one buffer can wait in several queues at once behind a tee.

◆ msgq_buffer

char mpipe_queue::msgq_buffer[(CONFIG_MPIPE_BASE_QUEUE_MAX_SIZE+2) *sizeof(void *)]

Backing storage for the message queue, sized for the largest queue plus the EOS and pause sentinels.

◆ size

uint8_t mpipe_queue::size

Number of buffers the queue can hold, bounded by.

CONFIG_MPIPE_BASE_QUEUE_MAX_SIZE 

and applied on READY -> PAUSED

◆ thread

struct mpipe_thread mpipe_queue::thread

Dedicated thread for downstream processing.

◆ transform

struct mpipe_transform mpipe_queue::transform

Base transform element.


The documentation for this struct was generated from the following file: