56 QP::QActive const * const act,
57 std::uint_fast8_t const pthre_in) noexcept;
79#define QF_SCHED_STAT_ QSchedStatus lockStat_;
80#define QF_SCHED_LOCK_(ceil_) do { \
81 if (QK_ISR_CONTEXT_()) { \
84 lockStat_ = QK::schedLock((ceil_)); \
88#define QF_SCHED_UNLOCK_() do { \
89 if (lockStat_ != 0xFFU) { \
90 QK::schedUnlock(lockStat_); \
95#define QACTIVE_EQUEUE_WAIT_(me_) (static_cast<void>(0))
96#define QACTIVE_EQUEUE_SIGNAL_(me_) do { \
97 QK_priv_.readySet.insert( \
98 static_cast<std::uint_fast8_t>((me_)->m_prio)); \
99 if (!QK_ISR_CONTEXT_()) { \
100 if (QK_sched_() != 0U) { \
107#define QF_EPOOL_TYPE_ QMPool
108#define QF_EPOOL_INIT_(p_, poolSto_, poolSize_, evtSize_) \
109 (p_).init((poolSto_), (poolSize_), (evtSize_))
110#define QF_EPOOL_EVENT_SIZE_(p_) ((p_).getBlockSize())
111#define QF_EPOOL_GET_(p_, e_, m_, qsId_) \
112 ((e_) = static_cast<QEvt *>((p_).get((m_), (qsId_))))
113#define QF_EPOOL_PUT_(p_, e_, qsId_) ((p_).put((e_), (qsId_)))
Private attributes of the QK kernel.
std::uint_fast8_t actThre
std::uint_fast8_t nextPrio
std::uint_fast8_t actPrio
std::uint_fast8_t intNest
std::uint_fast8_t lockCeil
Set of Active Objects of up to QF_MAX_ACTIVE elements.
preemptive, non-blocking kernel
QSchedStatus schedLock(std::uint_fast8_t const ceiling) noexcept
void schedUnlock(QSchedStatus const prevCeil) noexcept
std::uint_fast8_t QSchedStatus
void QK_activate_() noexcept
std::uint_fast8_t QK_sched_act_(QP::QActive const *const act, std::uint_fast8_t const pthre_in) noexcept
std::uint_fast8_t QK_sched_() noexcept