SuperTinyKernel™ RTOS 1.08.x
Lightweight, high-performance, deterministic, bare-metal C++ RTOS for resource-constrained embedded systems. MIT Open Source License.
Loading...
Searching...
No Matches
FrtosQueueSet Struct Reference
Collaboration diagram for FrtosQueueSet:

Public Member Functions

 FrtosQueueSet (UBaseType_t uxEventQueueLength)
 ~FrtosQueueSet ()
bool IsValid () const

Public Attributes

uint8_t * m_buf
 raw backing store for m_token_mq
bool m_cb_owned
 true = heap-allocated, delete in ObjFree
stk::sync::MessageQueue * m_token_mq
 FIFO of fired-member handles (void*).

Detailed Description

Definition at line 742 of file freertos_stk.cpp.

Constructor & Destructor Documentation

◆ FrtosQueueSet()

FrtosQueueSet::FrtosQueueSet ( UBaseType_t uxEventQueueLength)
inlineexplicit

Definition at line 747 of file freertos_stk.cpp.

748 : m_buf(nullptr), m_cb_owned(true),
749 m_token_mq(nullptr)
750 {
751 // Allocate the flat byte ring-buffer: N slots × sizeof(void*) bytes.
752 const size_t buf_bytes =
753 static_cast<size_t>(uxEventQueueLength) * sizeof(void *);
754
755 m_buf = ObjAllocArray<uint8_t>(buf_bytes);
756 if (m_buf == nullptr)
757 return;
758
760 m_buf,
761 static_cast<size_t>(uxEventQueueLength),
762 sizeof(void *));
763 }
static T * ObjAllocArray(size_t count)
static T * ObjAlloc(Args &&...args)
bool m_cb_owned
true = heap-allocated, delete in ObjFree
stk::sync::MessageQueue * m_token_mq
FIFO of fired-member handles (void*).
uint8_t * m_buf
raw backing store for m_token_mq

References m_buf, m_cb_owned, m_token_mq, ObjAlloc(), and ObjAllocArray().

Here is the call graph for this function:

◆ ~FrtosQueueSet()

FrtosQueueSet::~FrtosQueueSet ( )
inline

Definition at line 765 of file freertos_stk.cpp.

766 {
769 }
static void ObjFreeRaw(T *obj)
static void ObjFreeArray(void *ptr)

References m_buf, m_token_mq, ObjFreeArray(), and ObjFreeRaw().

Here is the call graph for this function:

Member Function Documentation

◆ IsValid()

bool FrtosQueueSet::IsValid ( ) const
inline

Definition at line 771 of file freertos_stk.cpp.

771{ return (m_token_mq != nullptr); }

References m_token_mq.

Referenced by xQueueCreateSet().

Here is the caller graph for this function:

Member Data Documentation

◆ m_buf

uint8_t* FrtosQueueSet::m_buf

raw backing store for m_token_mq

Definition at line 774 of file freertos_stk.cpp.

Referenced by FrtosQueueSet(), and ~FrtosQueueSet().

◆ m_cb_owned

bool FrtosQueueSet::m_cb_owned

true = heap-allocated, delete in ObjFree

Definition at line 775 of file freertos_stk.cpp.

Referenced by FrtosQueueSet().

◆ m_token_mq

stk::sync::MessageQueue* FrtosQueueSet::m_token_mq

FIFO of fired-member handles (void*).

Definition at line 776 of file freertos_stk.cpp.

Referenced by FrtosQueueSet(), IsValid(), xQueueSelectFromSet(), xQueueSelectFromSetFromISR(), and ~FrtosQueueSet().


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