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
StkMessageQueue Struct Reference
Collaboration diagram for StkMessageQueue:

Public Member Functions

 StkMessageQueue (uint32_t cap, uint32_t msz, const char *name, uint8_t *ext_buf)
 StkMessageQueue (uint32_t cap, uint32_t msz, const char *name)
 ~StkMessageQueue ()

Static Public Member Functions

static uint8_t * AllocBuffer (uint32_t cap, uint32_t msz)

Public Attributes

stk::sync::MessageQueue m_mq
bool m_bf_owned
bool m_cb_owned

Detailed Description

Definition at line 357 of file cmsis_os2_stk.cpp.

Constructor & Destructor Documentation

◆ StkMessageQueue() [1/2]

StkMessageQueue::StkMessageQueue ( uint32_t cap,
uint32_t msz,
const char * name,
uint8_t * ext_buf )
inlineexplicit

Definition at line 360 of file cmsis_os2_stk.cpp.

361 : m_mq(ext_buf, static_cast<size_t>(cap), static_cast<size_t>(msz)),
362 m_bf_owned(false), m_cb_owned(true)
363 {
364 m_mq.SetTraceName(name);
365 }
stk::sync::MessageQueue m_mq

References m_bf_owned, m_cb_owned, and m_mq.

◆ StkMessageQueue() [2/2]

StkMessageQueue::StkMessageQueue ( uint32_t cap,
uint32_t msz,
const char * name )
inlineexplicit

Definition at line 368 of file cmsis_os2_stk.cpp.

369 : m_mq(AllocBuffer(cap, msz), static_cast<size_t>(cap), static_cast<size_t>(msz)),
370 m_bf_owned(m_mq.IsStorageValid()), m_cb_owned(true)
371 {
372 m_mq.SetTraceName(name);
373 }
static uint8_t * AllocBuffer(uint32_t cap, uint32_t msz)

References AllocBuffer(), m_bf_owned, m_cb_owned, and m_mq.

Here is the call graph for this function:

◆ ~StkMessageQueue()

StkMessageQueue::~StkMessageQueue ( )
inline

Definition at line 375 of file cmsis_os2_stk.cpp.

376 {
377 if (m_bf_owned)
378 delete[] m_mq.GetBuffer();
379 }

References m_bf_owned, and m_mq.

Member Function Documentation

◆ AllocBuffer()

uint8_t * StkMessageQueue::AllocBuffer ( uint32_t cap,
uint32_t msz )
inlinestatic

Definition at line 381 of file cmsis_os2_stk.cpp.

382 {
383 return new (std::nothrow) uint8_t[static_cast<size_t>(cap) * msz];
384 }

Referenced by StkMessageQueue().

Here is the caller graph for this function:

Member Data Documentation

◆ m_bf_owned

bool StkMessageQueue::m_bf_owned

Definition at line 388 of file cmsis_os2_stk.cpp.

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

◆ m_cb_owned

bool StkMessageQueue::m_cb_owned

Definition at line 389 of file cmsis_os2_stk.cpp.

Referenced by StkMessageQueue(), and StkMessageQueue().

◆ m_mq


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