#include <qfn.h>
Public Member Functions | |
void | QActive_armX (QActive *const me, uint_fast8_t const tickRate, QTimeEvtCtr const nTicks, QTimeEvtCtr const interval) |
void | QActive_disarmX (QActive *const me, uint_fast8_t const tickRate) |
Public Member Functions inherited from QHsm | |
#define | QHsm_childState(me_, parent_) QHsm_childState_(Q_HSM_UPCAST(me_), Q_STATE_CAST(parent_)) |
Data Fields | |
QHsm | super |
derives from the QHsm base class More... | |
QTimer | tickCtr [QF_MAX_TICK_RATE] |
uint8_t | prio |
uint8_t volatile | head |
uint8_t volatile | tail |
uint8_t volatile | nUsed |
Data Fields inherited from QHsm | |
QHsmVtable const * | vptr |
QStateHandler | state |
QStateHandler | temp |
QEvt | evt |
Protected Member Functions | |
void | QActive_ctor (QActive *const me, QStateHandler initial) |
Protected Member Functions inherited from QHsm | |
void | QHsm_ctor (QHsm *const me, QStateHandler initial) |
QState | QHsm_top (void const *const me) |
Private Member Functions | |
bool | QActive_postX_ (QActive *const me, uint_fast8_t margin, enum_t const sig, QParam const par) |
bool | QActive_postXISR_ (QActive *const me, uint_fast8_t margin, enum_t const sig, QParam const par) |
QActive active object (based on QHsm-implementation)
|
private |
Implementation of the task-level event posting
[in,out] | me | pointer (see Object Orientation) |
[in] | margin | number of required free slots in the queue after posting the event. The special value QF_NO_MARGIN means that this function will assert if posting fails. |
[in] | sig | signal of the event to be posted |
[in] | par | parameter of the event to be posted |
|
private |
Implementation of the ISR-level event posting
[in,out] | me | pointer (see Object Orientation) |
[in] | margin | number of required free slots in the queue after posting the event. The special value QF_NO_MARGIN means that this function will assert if posting fails. |
[in] | sig | signal of the event to be posted |
[in] | par | parameter of the event to be posted |
void QActive_armX | ( | QActive *const | me, |
uint_fast8_t const | tickRate, | ||
QTimeEvtCtr const | nTicks, | ||
QTimeEvtCtr const | interval | ||
) |
Arm the QP-nano one-shot time event.
[in,out] | me | pointer (see Object Orientation) |
[in] | tickRate | tick rate . |
[in] | nTicks | number of clock ticks (at the associated rate) to rearm the time event with. |
void QActive_disarmX | ( | QActive *const | me, |
uint_fast8_t const | tickRate | ||
) |
Disarm a time event. Since the tick counter
[in,out] | me | pointer (see Object Orientation) |
[in] | tickRate | tick rate |
|
protected |
QTimer tickCtr[QF_MAX_TICK_RATE] |
uint8_t volatile head |
uint8_t volatile tail |
uint8_t volatile nUsed |