67#ifdef QF_TIMEEVT_USAGE
90 0U, 1U, 2U, 2U, 3U, 3U, 3U, 3U,
91 4U, 4U, 4U, 4U, 4U, 4U, 4U, 4U
142#if (Q_PARAM_SIZE != 0U)
157 if (qlen > (uint_fast8_t)me->
nUsed) {
169 else if ((qlen - (uint_fast8_t)me->
nUsed) > margin) {
179#if (Q_PARAM_SIZE != 0U)
182 if (me->
head == 0U) {
183 me->
head = (uint8_t)qlen;
189 if (me->
nUsed == 1U) {
228#if (Q_PARAM_SIZE != 0U)
237#ifdef QF_ISR_STAT_TYPE
238 QF_ISR_STAT_TYPE stat;
246#ifdef QF_ISR_STAT_TYPE
247 QF_ISR_DISABLE(stat);
254 if (qlen > (uint_fast8_t)me->
nUsed) {
266 else if ((qlen - (uint_fast8_t)me->
nUsed) > margin) {
276#if (Q_PARAM_SIZE != 0U)
279 if (me->
head == 0U) {
280 me->
head = (uint8_t)qlen;
285 if (me->
nUsed == 1U) {
292#ifdef QF_ISR_STAT_TYPE
293 QF_ISR_RESTORE(stat);
322 && (maxActive <= 9U));
325#ifdef QF_TIMEEVT_USAGE
357#if (QF_TIMEEVT_CTR_SIZE != 0U)
360#ifdef QF_TIMEEVT_PERIODIC
376#if (QF_TIMEEVT_CTR_SIZE != 0U)
408#ifdef QF_TIMEEVT_PERIODIC
414#ifdef QF_TIMEEVT_USAGE
415 QF_timerSetX_[tickRate] &= (uint_fast8_t)(~(1U << (p - 1U)));
418#if (Q_PARAM_SIZE != 0)
461#ifdef QF_TIMEEVT_PERIODIC
471#ifdef QF_TIMEEVT_PERIODIC
475#ifdef QF_TIMEEVT_USAGE
498#ifdef QF_TIMEEVT_PERIODIC
502#ifdef QF_TIMEEVT_USAGE
Customizable and memory-efficient assertions for embedded systems.
#define Q_DEFINE_THIS_MODULE(name_)
#define Q_ASSERT_ID(id_, test_)
#define Q_REQUIRE_ID(id_, test_)
Q_NORETURN Q_onAssert(char_t const Q_ROM *const module, int_t const location)
#define Q_ROM_BYTE(rom_var_)
Some compilers for Harvard-architecture MCUs, such as gcc for AVR, do not generate correct code for a...
QState(* QStateHandler)(void *const me)
void QF_init(uint_fast8_t maxActive)
uint_fast8_t volatile QF_readySet_
uint_fast8_t QF_maxActive_
void QF_tickXISR(uint_fast8_t const tickRate)
uint8_t const Q_ROM QF_log2Lkup[16]
uint_fast8_t volatile QF_timerSetX_[QF_MAX_TICK_RATE]
QActiveCB const Q_ROM QF_active[]
active object control blocks
#define QF_ROM_QUEUE_AT_(ao_, i_)
#define QF_ROM_ACTIVE_GET_(p_)
#define QACTIVE_POST_ISR(me_, sig_, par_)
uint8_t volatile lockPrio
uint_fast8_t QK_sched_(void)
uint8_t volatile lockHolder
void QActive_ctor(QActive *const me, QStateHandler initial)
QHsm super
derives from the QHsm base class
bool QActive_postX_(QActive *const me, uint_fast8_t margin, enum_t const sig, QParam const par)
void QActive_disarmX(QActive *const me, uint_fast8_t const tickRate)
void QActive_armX(QActive *const me, uint_fast8_t const tickRate, QTimeEvtCtr const nTicks, QTimeEvtCtr const interval)
QTimer tickCtr[QF_MAX_TICK_RATE]
bool QActive_postXISR_(QActive *const me, uint_fast8_t margin, enum_t const sig, QParam const par)
void QHsm_ctor(QHsm *const me, QStateHandler initial)
void QHsm_init_(QHsm *const me)
void QHsm_dispatch_(QHsm *const me)