54Q_DEFINE_THIS_MODULE(
"qf_qeq")
58#if (QP_VERSION < 730U) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8U))
59#error qpc version 7.3.0 or higher required
70void QEQueue_init(
QEQueue *
const me,
71 struct QEvt const **
const qSto,
72 uint_fast16_t
const qLen)
88 struct QEvt const *
const e,
89 uint_fast16_t
const margin,
90 uint_fast8_t
const qsId)
110 if (QEvt_getPoolNum_(e) != 0U) {
116 if (me->
nMin > nFree) {
124 QS_2U8_PRE_(QEvt_getPoolNum_(e), e->
refCtr_);
126 QS_EQC_PRE_(me->
nMin);
136 if (me->
head == 0U) {
151 QS_2U8_PRE_(QEvt_getPoolNum_(e), e->
refCtr_);
168 struct QEvt const *
const e,
169 uint_fast8_t
const qsId)
183 if (QEvt_getPoolNum_(e) != 0U) {
189 if (me->
nMin > nFree) {
197 QS_2U8_PRE_(QEvt_getPoolNum_(e), e->
refCtr_);
199 QS_EQC_PRE_(me->
nMin);
205 if (frontEvt != (
QEvt *)0) {
220 uint_fast8_t
const qsId)
232 if (e != (
QEvt *)0) {
238 if (nFree <= me->end) {
240 if (me->
tail == 0U) {
#define Q_UNUSED_PAR(par_)
Internal (package scope) QP/C interface.
@ QS_QF_EQUEUE_GET_LAST
get the last event from the queue
@ QS_QF_EQUEUE_POST_ATTEMPT
attempt to post evt to QEQueue failed
@ QS_QF_EQUEUE_POST_LIFO
an event was posted (LIFO) to a raw queue
@ QS_QF_EQUEUE_GET
get an event and queue still not empty
@ QS_QF_EQUEUE_POST
an event was posted (FIFO) to a raw queue
QS/C package-scope interface.
QP Functional Safety (FuSa) Subsystem.
#define Q_ASSERT_INCRIT(id_, expr_)
#define Q_REQUIRE_INCRIT(id_, expr_)
struct QEvt const ** ring
QEQueueCtr volatile nFree
struct QEvt const *volatile frontEvt
static uint_fast8_t QEvt_getPoolNum_(QEvt const *const me)