SuperTinyKernel™ RTOS 1.06.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::MessageQueuem_token_mq
 FIFO of fired-member handles (void*).

Detailed Description

Definition at line 662 of file freertos_stk.cpp.

Constructor & Destructor Documentation

◆ FrtosQueueSet()

FrtosQueueSet::FrtosQueueSet ( UBaseType_t uxEventQueueLength)
inlineexplicit

Definition at line 667 of file freertos_stk.cpp.

668 : m_buf(nullptr), m_cb_owned(true),
669 m_token_mq(nullptr)
670 {
671 // Allocate the flat byte ring-buffer: N slots × sizeof(void*) bytes.
672 const size_t buf_bytes =
673 static_cast<size_t>(uxEventQueueLength) * sizeof(void *);
674
675 m_buf = ObjAllocArray<uint8_t>(buf_bytes);
676 if (m_buf == nullptr)
677 return;
678
680 m_buf,
681 static_cast<size_t>(uxEventQueueLength),
682 sizeof(void *));
683 }
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 685 of file freertos_stk.cpp.

686 {
689 }
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 691 of file freertos_stk.cpp.

691{ 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 694 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 695 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 696 of file freertos_stk.cpp.

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


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