"Ticker" Active Object class More...
#include "qp.hpp"
Public Member Functions | |
QTicker (std::uint_fast8_t const tickRate) noexcept | |
void | init (void const *const e, std::uint_fast8_t const qsId) override |
Virtual function to take the top-most initial transition in the state machine. | |
void | init (std::uint_fast8_t const qsId) override |
Virtual function to take the top-most initial transition in the state machine (overloaded). | |
void | dispatch (QEvt const *const e, std::uint_fast8_t const qsId) override |
Virtual function to dispatch an event to the state machine. | |
void | trig_ (void const *const sender) noexcept |
![]() | |
bool | isIn (QStateHandler const stateHndl) noexcept override |
Virtual function to check whether the state machine is in a given state. | |
QStateHandler | childState (QStateHandler const parentHandler) noexcept |
void | setAttr (std::uint32_t attr1, void const *attr2=nullptr) |
void | start (QPrioSpec const prioSpec, QEvtPtr *const qSto, std::uint_fast16_t const qLen, void *const stkSto, std::uint_fast16_t const stkSize, void const *const par) |
void | start (QPrioSpec const prioSpec, QEvtPtr *const qSto, std::uint_fast16_t const qLen, void *const stkSto, std::uint_fast16_t const stkSize) |
void | stop () |
void | register_ () noexcept |
void | unregister_ () noexcept |
bool | post_ (QEvt const *const e, std::uint_fast16_t const margin, void const *const sender) noexcept |
void | postLIFO (QEvt const *const e) noexcept |
QEvt const * | get_ () noexcept |
void | subscribe (enum_t const sig) const noexcept |
void | unsubscribe (enum_t const sig) const noexcept |
void | unsubscribeAll () const noexcept |
bool | defer (QEQueue *const eq, QEvt const *const e) const noexcept |
bool | recall (QEQueue *const eq) noexcept |
std::uint_fast16_t | flushDeferred (QEQueue *const eq, std::uint_fast16_t const num=0xFFFFU) const noexcept |
std::uint_fast8_t | getPrio () const noexcept |
void | setPrio (QPrioSpec const prio) noexcept |
std::uint_fast8_t | getPThre () const noexcept |
QACTIVE_EQUEUE_TYPE const & | getEQueue () const noexcept |
QACTIVE_OS_OBJ_TYPE const & | getOsObject () const noexcept |
QACTIVE_THREAD_TYPE const & | getThread () const noexcept |
void | setThread (QACTIVE_THREAD_TYPE const &thr) |
virtual bool | postFromISR (QEvt const *const e, std::uint_fast16_t const margin, void *par, void const *const sender) noexcept |
![]() | |
virtual | ~QAsm () noexcept |
Virtual destructor of the QP::QAsm abstract base class. | |
QStateHandler | state () const noexcept |
QMState const * | stateObj () const noexcept |
virtual QStateHandler | getStateHandler () noexcept |
Virtual method for getting the state handler. | |
Additional Inherited Members | |
![]() | |
static std::uint_fast16_t | getQueueMin (std::uint_fast8_t const prio) noexcept |
static void | psInit (QSubscrList *const subscrSto, enum_t const maxSignal) noexcept |
static void | publish_ (QEvt const *const e, void const *const sender, std::uint_fast8_t const qsId) noexcept |
static void | evtLoop_ (QActive *act) |
static void | publishFromISR (QEvt const *e, void *par, void const *sender) noexcept |
![]() | |
static QState | top (void *const me, QEvt const *const e) noexcept |
Top state handler that ignores all events. | |
![]() | |
QAsmAttr | m_state |
Current state (pointer to the current state-handler function) | |
QAsmAttr | m_temp |
Temporary storage for target/act-table etc. | |
![]() | |
static QActive * | registry_ [QF_MAX_ACTIVE+1U] |
static QSubscrList * | subscrList_ |
static enum_t | maxPubSignal_ |
![]() | |
static constexpr QState | Q_RET_SUPER {0U} |
static constexpr QState | Q_RET_UNHANDLED {1U} |
static constexpr QState | Q_RET_HANDLED {2U} |
static constexpr QState | Q_RET_IGNORED {3U} |
static constexpr QState | Q_RET_ENTRY {4U} |
static constexpr QState | Q_RET_EXIT {5U} |
static constexpr QState | Q_RET_NULL {6U} |
static constexpr QState | Q_RET_TRAN {7U} |
static constexpr QState | Q_RET_TRAN_INIT {8U} |
static constexpr QState | Q_RET_TRAN_HIST {9U} |
static constexpr QSignal | Q_EMPTY_SIG {0U} |
static constexpr QSignal | Q_ENTRY_SIG {1U} |
static constexpr QSignal | Q_EXIT_SIG {2U} |
static constexpr QSignal | Q_INIT_SIG {3U} |
![]() | |
QActive (QStateHandler const initial) noexcept | |
![]() | |
QAsm () noexcept | |
Constructor of the QP::QAsm base class. | |
QState | tran (QStateHandler const target) noexcept |
Internal helper function to take a state transition in sublclasses of QP::QAsm. | |
QState | tran_hist (QStateHandler const hist) noexcept |
Internal helper function to take a state transition to history in sublclasses of QP::QAsm. | |
QState | super (QStateHandler const superstate) noexcept |
Internal helper function to indicate superstate of a given state in sublclasses of QP::QAsm. | |
QState | qm_tran (void const *const tatbl) noexcept |
Internal helper function to take a state transition in QP::QMsm. | |
QState | qm_tran_init (void const *const tatbl) noexcept |
QState | qm_tran_hist (QMState const *const hist, void const *const tatbl) noexcept |
Internal helper function to take a state transition to history in QP::QMsm. | |
QState | qm_entry (QMState const *const s) noexcept |
Internal helper function to execute state entry actions in QP::QMsm. | |
QState | qm_exit (QMState const *const s) noexcept |
Internal helper function to execute state exit actions in QP::QMsm. | |
"Ticker" Active Object class
|
explicitnoexcept |
Constructor of the QTicker Active Object class
Definition at line 347 of file qf_actq.cpp.
|
overridevirtual |
Virtual function to take the top-most initial transition in the state machine.
[in] | e | pointer to an initialization parameter (might be nullptr) |
[in] | qsId | QS-id of this state machine (for QS local filter) |
Reimplemented from QP::QActive.
Definition at line 355 of file qf_actq.cpp.
|
inlineoverridevirtual |
Virtual function to take the top-most initial transition in the state machine (overloaded).
[in] | qsId | QS-id of this state machine (for QS local filter) |
Reimplemented from QP::QActive.
|
overridevirtual |
Virtual function to dispatch an event to the state machine.
[in] | e | pointer to the event to be dispatched to the MSM |
[in] | qsId | QS-id of this state machine (for QS local filter) |
Reimplemented from QP::QActive.
Definition at line 369 of file qf_actq.cpp.
|
noexcept |
Asynchronously trigger the QTicker active object to perform tick processing.
Definition at line 394 of file qf_actq.cpp.