arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QueueZephyr< T > Class Template Reference

FIFO Queue implementation based on Zephyr message queues. More...

#include <QueueZephyr.h>

Public Member Functions

 QueueZephyr (int size, TickType_t writeMaxWait=UINT32_MAX, TickType_t readMaxWait=UINT32_MAX, Allocator &allocator=DefaultAllocator)
 
 ~QueueZephyr ()
 
bool clear ()
 
bool dequeue (T &data)
 
bool empty ()
 
bool enqueue (T &data)
 
bool peek (T &data)
 
bool resize (size_t size)
 (Re-)defines the size
 
void setReadMaxWait (TickType_t ticks)
 
void setWriteMaxWait (TickType_t ticks)
 
size_t size ()
 

Protected Member Functions

void end ()
 
bool setup ()
 

Protected Attributes

bool is_active = false
 
struct k_msgq msgq
 
Allocatorp_allocator = nullptr
 
uint8_tp_data = nullptr
 
int queue_size = 0
 
TickType_t read_max_wait = UINT32_MAX
 
TickType_t write_max_wait = UINT32_MAX
 

Detailed Description

template<class T>
class audio_tools::QueueZephyr< T >

FIFO Queue implementation based on Zephyr message queues.

Note
Supported by all Zephyr platforms

Constructor & Destructor Documentation

◆ QueueZephyr()

template<class T >
QueueZephyr ( int  size,
TickType_t  writeMaxWait = UINT32_MAX,
TickType_t  readMaxWait = UINT32_MAX,
Allocator allocator = DefaultAllocator 
)
inline

◆ ~QueueZephyr()

template<class T >
~QueueZephyr ( )
inline

Member Function Documentation

◆ clear()

template<class T >
bool clear ( )
inline

◆ dequeue()

template<class T >
bool dequeue ( T data)
inline

◆ empty()

template<class T >
bool empty ( )
inline

◆ end()

template<class T >
void end ( )
inlineprotected

◆ enqueue()

template<class T >
bool enqueue ( T data)
inline

◆ peek()

template<class T >
bool peek ( T data)
inline

◆ resize()

template<class T >
bool resize ( size_t  size)
inline

(Re-)defines the size

◆ setReadMaxWait()

template<class T >
void setReadMaxWait ( TickType_t  ticks)
inline

◆ setup()

template<class T >
bool setup ( )
inlineprotected

◆ setWriteMaxWait()

template<class T >
void setWriteMaxWait ( TickType_t  ticks)
inline

◆ size()

template<class T >
size_t size ( )
inline

Member Data Documentation

◆ is_active

template<class T >
bool is_active = false
protected

◆ msgq

template<class T >
struct k_msgq msgq
protected

◆ p_allocator

template<class T >
Allocator* p_allocator = nullptr
protected

◆ p_data

template<class T >
uint8_t* p_data = nullptr
protected

◆ queue_size

template<class T >
int queue_size = 0
protected

◆ read_max_wait

template<class T >
TickType_t read_max_wait = UINT32_MAX
protected

◆ write_max_wait

template<class T >
TickType_t write_max_wait = UINT32_MAX
protected

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