124uint_fast8_t QK_sched_(
void);
128void QK_activate_(
void);
138#define QF_SCHED_STAT_ QSchedStatus lockStat_;
141#define QF_SCHED_LOCK_(ceil_) do { \
142 if (QK_ISR_CONTEXT_()) { \
145 lockStat_ = QK_schedLock((ceil_)); \
150#define QF_SCHED_UNLOCK_() do { \
151 if (lockStat_ != 0xFFU) { \
152 QK_schedUnlock(lockStat_); \
157#define QACTIVE_EQUEUE_WAIT_(me_) ((void)0)
161#define QACTIVE_EQUEUE_SIGNAL_(me_) do { \
162 QPSet_insert(&QK_priv_.readySet, (uint_fast8_t)(me_)->prio); \
163 QPSet_update_(&QK_priv_.readySet, &QK_priv_.readySet_dis); \
164 if (!QK_ISR_CONTEXT_()) { \
165 if (QK_sched_() != 0U) { \
174#define QACTIVE_EQUEUE_SIGNAL_(me_) do { \
175 QPSet_insert(&QK_priv_.readySet, (uint_fast8_t)(me_)->prio); \
176 if (!QK_ISR_CONTEXT_()) { \
177 if (QK_sched_() != 0U) { \
188#define QF_EPOOL_TYPE_ QMPool
191#define QF_EPOOL_INIT_(p_, poolSto_, poolSize_, evtSize_) \
192 (QMPool_init(&(p_), (poolSto_), (poolSize_), (evtSize_)))
195#define QF_EPOOL_EVENT_SIZE_(p_) ((uint_fast16_t)(p_).blockSize)
198#define QF_EPOOL_GET_(p_, e_, m_, qsId_) \
199 ((e_) = (QEvt *)QMPool_get(&(p_), (m_), (qsId_)))
202#define QF_EPOOL_PUT_(p_, e_, qsId_) \
203 (QMPool_put(&(p_), (e_), (qsId_)))
uint_fast8_t QSchedStatus
Private attributes of the QK kernel.
uint_fast8_t nextPrio_dis
uint_fast8_t lockCeil_dis
QK preemptive non-blocking kernel (QK namespace emulated as a "class" in C)
QSchedStatus QK_schedLock(uint_fast8_t const ceiling)
Set of Active Objects of up to QF_MAX_ACTIVE elements.