![]() |
SuperTinyKernel™ RTOS 1.06.x
Lightweight, high-performance, deterministic, bare-metal C++ RTOS for resource-constrained embedded systems. MIT Open Source License.
|
Classes | |
| struct | MsgEnvelope |
Public Member Functions | |
| FrtosMessageBuffer (size_t max_msg_size, size_t msg_count, StreamBufferCallbackFunction_t pSendCb=nullptr, StreamBufferCallbackFunction_t pRecvCb=nullptr) | |
| FrtosMessageBuffer (size_t max_msg_size, size_t msg_count, uint8_t *storage, size_t storage_size, StreamBufferCallbackFunction_t pSendCb=nullptr, StreamBufferCallbackFunction_t pRecvCb=nullptr) | |
| ~FrtosMessageBuffer () | |
Public Attributes | |
| stk::memory::BlockMemoryPool | m_pool |
| payload block allocator | |
| stk::sync::MessageQueue | m_eq |
| envelope FIFO {len, blk} | |
| size_t | m_max_msg_size |
| max payload bytes per message | |
| bool | m_eq_buf_owned |
| true -> envelope buffer heap-allocated | |
| bool | m_cb_owned |
| true -> struct heap-allocated | |
| StreamBufferCallbackFunction_t | m_send_cb |
| optional callback fired after a successful Send | |
| StreamBufferCallbackFunction_t | m_recv_cb |
| optional callback fired after a successful Receive | |
Static Public Attributes | |
| static constexpr size_t | ENVELOPE_SIZE = sizeof(MsgEnvelope) |
Definition at line 961 of file freertos_stk.cpp.
|
inlineexplicit |
Definition at line 974 of file freertos_stk.cpp.
References ENVELOPE_SIZE, m_cb_owned, m_eq, m_eq_buf_owned, m_max_msg_size, m_pool, m_recv_cb, m_send_cb, and ObjAllocArray().
|
inlineexplicit |
Definition at line 991 of file freertos_stk.cpp.
References ENVELOPE_SIZE, m_cb_owned, m_eq, m_eq_buf_owned, m_max_msg_size, m_pool, m_recv_cb, m_send_cb, and STK_UNUSED.
|
inline |
Definition at line 1012 of file freertos_stk.cpp.
References m_eq, m_eq_buf_owned, and ObjFreeArray().
|
staticconstexpr |
Definition at line 969 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), MsgBufSlotCount(), xMessageBufferCreateStatic(), xMessageBufferCreateStaticWithCallback(), and xMessageBufferCreateWithCallback().
| bool FrtosMessageBuffer::m_cb_owned |
true -> struct heap-allocated
Definition at line 1023 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), and FrtosMessageBuffer().
| stk::sync::MessageQueue FrtosMessageBuffer::m_eq |
envelope FIFO {len, blk}
Definition at line 1020 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), xMessageBufferCreate(), xMessageBufferCreateWithCallback(), xMessageBufferNextLengthBytes(), xMessageBufferReceive(), xMessageBufferReceiveFromISR(), xMessageBufferReset(), xMessageBufferResetFromISR(), xMessageBufferSend(), xMessageBufferSendFromISR(), and ~FrtosMessageBuffer().
| bool FrtosMessageBuffer::m_eq_buf_owned |
true -> envelope buffer heap-allocated
Definition at line 1022 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), and ~FrtosMessageBuffer().
| size_t FrtosMessageBuffer::m_max_msg_size |
max payload bytes per message
Definition at line 1021 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), xMessageBufferSend(), and xMessageBufferSendFromISR().
| stk::memory::BlockMemoryPool FrtosMessageBuffer::m_pool |
payload block allocator
Definition at line 1019 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), xMessageBufferCreate(), xMessageBufferReceive(), xMessageBufferReceiveFromISR(), xMessageBufferReset(), xMessageBufferResetFromISR(), xMessageBufferSend(), and xMessageBufferSendFromISR().
| StreamBufferCallbackFunction_t FrtosMessageBuffer::m_recv_cb |
optional callback fired after a successful Receive
Definition at line 1025 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), xMessageBufferReceive(), and xMessageBufferReceiveFromISR().
| StreamBufferCallbackFunction_t FrtosMessageBuffer::m_send_cb |
optional callback fired after a successful Send
Definition at line 1024 of file freertos_stk.cpp.
Referenced by FrtosMessageBuffer(), FrtosMessageBuffer(), xMessageBufferSend(), and xMessageBufferSendFromISR().