================================================
NLOC CCN token PARAM length location
------------------------------------------------
2 1 6 0 3 QP::QAsm::~QAsm@274-276@..\..\qpcpp\include\qp.hpp
6 1 26 2 6
QP::QF::tick@1087-1092@..\..\qpcpp\include\qp.hpp
24 6 155 1 29
QP::QF_LOG2@101-129@..\..\qpcpp\src\qf\qf_act.cpp
54 7 318 3 77
QP::QF::newX_@157-233@..\..\qpcpp\src\qf\qf_dyn.cpp
40 5 244 1 54
QP::QF::gc@236-289@..\..\qpcpp\src\qf\qf_dyn.cpp
31 4 179 0 43
QK_sched_@161-203@..\..\qpcpp\src\qk\qk.cpp
95 18 681 0 154
QK_activate_@206-359@..\..\qpcpp\src\qk\qk.cpp
12 2 139 0 20
QP::QF::init@368-387@..\..\qpcpp\src\qk\qk.cpp
23 6 113 0 41
QP::QF::run@396-436@..\..\qpcpp\src\qk\qk.cpp
60 16 390 0 114
QP::QF::run@162-275@..\..\qpcpp\src\qv\qv.cpp
45 8 245 0 57
QXK_sched_@177-233@..\..\qpcpp\src\qxk\qxk.cpp
63 16 411 0 100
QXK_activate_@236-335@..\..\qpcpp\src\qxk\qxk.cpp
13 2 132 0 25
QP::QF::init@399-423@..\..\qpcpp\src\qxk\qxk.cpp
24 6 115 0 41
QP::QF::run@432-472@..\..\qpcpp\src\qxk\qxk.cpp
31 file analyzed.
==============================================================
NLOC Avg.NLOC AvgCCN Avg.token function_cnt file
--------------------------------------------------------------
56 4.5 1.0 18.2 4 ..\..\qpcpp\include\qequeue.hpp
29 0.0 0.0 0.0 0 ..\..\qpcpp\include\qk.hpp
66 5.0 1.0 20.0 3 ..\..\qpcpp\include\qmpool.hpp
624 4.3 1.2 27.9 70 ..\..\qpcpp\include\qp.hpp
5 0.0 0.0 0.0 0 ..\..\qpcpp\include\qpcpp.hpp
25 3.0 1.0 29.0 2 ..\..\qpcpp\include\qp_pkg.hpp
429 8.0 1.7 38.7 3 ..\..\qpcpp\include\qs.hpp
6 0.0 0.0 0.0 0 ..\..\qpcpp\include\qsafe.h
4 0.0 0.0 0.0 0 ..\..\qpcpp\include\qstamp.hpp
0 0.0 0.0 0.0 0 ..\..\qpcpp\include\qs_dummy.hpp
30 0.0 0.0 0.0 0 ..\..\qpcpp\include\qs_pkg.hpp
15 0.0 0.0 0.0 0 ..\..\qpcpp\include\qv.hpp
112 3.0 1.0 14.5 2 ..\..\qpcpp\include\qxk.hpp
426 67.8 10.0 367.8 6 ..\..\qpcpp\src\qf\qep_hsm.cpp
450 42.9 6.7 234.3 10 ..\..\qpcpp\src\qf\qep_msm.cpp
52 17.0 4.0 107.0 2 ..\..\qpcpp\src\qf\qf_act.cpp
259 34.6 5.9 194.9 7 ..\..\qpcpp\src\qf\qf_actq.cpp
88 24.3 2.7 117.3 3 ..\..\qpcpp\src\qf\qf_defer.cpp
202 23.4 3.2 140.4 8 ..\..\qpcpp\src\qf\qf_dyn.cpp
127 29.0 3.0 165.8 4 ..\..\qpcpp\src\qf\qf_mem.cpp
166 28.2 4.8 184.2 5 ..\..\qpcpp\src\qf\qf_ps.cpp
62 23.5 6.5 155.0 2 ..\..\qpcpp\src\qf\qf_qact.cpp
160 37.2 4.8 189.2 4 ..\..\qpcpp\src\qf\qf_qeq.cpp
16 6.0 1.0 39.0 1 ..\..\qpcpp\src\qf\qf_qmact.cpp
264 31.5 4.4 174.4 8 ..\..\qpcpp\src\qf\qf_time.cpp
265 30.4 5.0 199.2 8 ..\..\qpcpp\src\qk\qk.cpp
147 21.2 4.0 136.5 6 ..\..\qpcpp\src\qv\qv.cpp
317 26.8 5.0 163.0 11 ..\..\qpcpp\src\qxk\qxk.cpp
260 49.8 7.0 394.4 5 ..\..\qpcpp\src\qxk\qxk_mutex.cpp
151 35.0 4.8 209.2 4 ..\..\qpcpp\src\qxk\qxk_sema.cpp
192 16.5 2.4 108.5 11 ..\..\qpcpp\src\qxk\qxk_xthr.cpp
=========================================================================================================
!!!! Warnings (cyclomatic_complexity > 20 or length > 500 or nloc > 1000000 or parameter_count > 10) !!!!
================================================
NLOC CCN token PARAM length location
------------------------------------------------
==========================================================================================
Total nloc Avg.NLOC AvgCCN Avg.token Fun Cnt Warning cnt Fun Rt nloc Rt
------------------------------------------------------------------------------------------
5005 19.5 3.3 117.4 189 2 0.01 0.07
QACTIVE_OS_OBJ_TYPE const & getOsObject() const noexcept
std::uint_fast16_t flushDeferred(QEQueue *const eq, std::uint_fast16_t const num=0xFFFFU) const noexcept
void init(void const *const e, std::uint_fast8_t const qsId) override
void setThread(QACTIVE_THREAD_TYPE const &thr)
QEvt const * get_() noexcept
void unsubscribeAll() const noexcept
void unregister_() noexcept
std::uint_fast8_t getPThre() const noexcept
QACTIVE_THREAD_TYPE const & getThread() const noexcept
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
void subscribe(enum_t const sig) const noexcept
static void publish_(QEvt const *const e, void const *const sender, std::uint_fast8_t const qsId) noexcept
bool isIn(QStateHandler const state) noexcept override
void setPrio(QPrioSpec const prio) noexcept
QActive(QStateHandler const initial) noexcept
void start(QPrioSpec const prioSpec, QEvt const **const qSto, std::uint_fast16_t const qLen, void *const stkSto, std::uint_fast16_t const stkSize, void const *const par)
QStateHandler childState(QStateHandler const parent) noexcept
void unsubscribe(enum_t const sig) const noexcept
bool recall(QEQueue *const eq) noexcept
void postLIFO(QEvt const *const e) noexcept
std::uint_fast8_t getPrio() const noexcept
QACTIVE_EQUEUE_TYPE const & getEQueue() const noexcept
bool defer(QEQueue *const eq, QEvt const *const e) const noexcept
static void psInit(QSubscrList *const subscrSto, enum_t const maxSignal) noexcept
bool post_(QEvt const *const e, std::uint_fast16_t const margin, void const *const sender) noexcept
void register_() noexcept
QState qm_tran_init(void const *const tatbl) noexcept
QStateHandler state() const noexcept
QState qm_sm_exit(QMState const *const s) noexcept
QState super(QStateHandler const superstate) noexcept
static QState top(void *const me, QEvt const *const e) noexcept
QState qm_super_sub(QMState const *const s) noexcept
virtual bool isIn(QStateHandler const state) noexcept
QState qm_tran_ep(void const *const tatbl) noexcept
QState qm_entry(QMState const *const s) noexcept
QState qm_exit(QMState const *const s) noexcept
QMState const * stateObj() const noexcept
QState qm_tran_hist(QMState const *const hist, void const *const tatbl) noexcept
QState tran(QStateHandler const target) noexcept
QState qm_tran_xp(QActionHandler const xp, void const *const tatbl) noexcept
QState qm_tran(void const *const tatbl) noexcept
virtual void init(void const *const e, std::uint_fast8_t const qsId)=0
virtual QStateHandler getStateHandler() noexcept
QState tran_hist(QStateHandler const hist) noexcept
bool post(QEvt const *const e, std::uint_fast16_t const margin, std::uint_fast8_t const qsId) noexcept
QEvt const * get(std::uint_fast8_t const qsId) noexcept
QEQueueCtr getNFree() const noexcept
void postLIFO(QEvt const *const e, std::uint_fast8_t const qsId) noexcept
void init(QEvt const *qSto[], std::uint_fast16_t const qLen) noexcept
bool isEmpty() const noexcept
QEQueueCtr getNMin() const noexcept
std::uint_fast8_t getPoolNum_() const noexcept
QEvt * ctor(DynEvt const dummy) noexcept
static bool verify_(QEvt const *const e) noexcept
QStateHandler getStateHandler() noexcept override
QStateHandler childState(QStateHandler const parent) noexcept
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
bool isIn(QStateHandler const state) noexcept override
std::int_fast8_t hsm_tran(QStateHandler(&path)[MAX_NEST_DEPTH_], std::uint_fast8_t const qsId)
void init(void const *const e, std::uint_fast8_t const qsId) override
QHsm(QStateHandler const initial) noexcept
bool isIn(QStateHandler const state) noexcept override
QStateHandler getStateHandler() noexcept override
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
QMActive(QStateHandler const initial) noexcept
bool isInState(QMState const *const st) const noexcept
void init(void const *const e, std::uint_fast8_t const qsId) override
QMState const * childStateObj(QMState const *const parent) const noexcept
void put(void *const block, std::uint_fast8_t const qsId) noexcept
QMPoolCtr getNFree() const noexcept
QMPoolSize getBlockSize() const noexcept
void init(void *const poolSto, std::uint_fast32_t const poolSize, std::uint_fast16_t const blockSize) noexcept
void * get(std::uint_fast16_t const margin, std::uint_fast8_t const qsId) noexcept
QMPoolCtr getNMin() const noexcept
void exitToTranSource_(QMState const *const cs, QMState const *const ts, std::uint_fast8_t const qsId)
QState enterHistory_(QMState const *const hist, std::uint_fast8_t const qsId)
QStateHandler getStateHandler() noexcept override
bool isIn(QStateHandler const state) noexcept override
QMsm(QStateHandler const initial) noexcept
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
bool isInState(QMState const *const stateObj) const noexcept
void init(void const *const e, std::uint_fast8_t const qsId) override
QMState const * topQMState() const noexcept
QMState const * childStateObj(QMState const *const parent) const noexcept
QState execTatbl_(QMTranActTable const *const tatbl, std::uint_fast8_t const qsId)
bool isEmpty() const noexcept
void update_(QPSet *const dis) const noexcept
bool verify_(QPSet const *const dis) const noexcept
void remove(std::uint_fast8_t const n) noexcept
std::uint_fast8_t findMax() const noexcept
void insert(std::uint_fast8_t const n) noexcept
bool hasElement(std::uint_fast8_t const n) const noexcept
bool notEmpty() const noexcept
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
void init(void const *const e, std::uint_fast8_t const qsId) override
void trig_(void const *const sender) noexcept
static bool noActive(std::uint_fast8_t const tickRate) noexcept
QTimeEvt * toTimeEvt() noexcept
void const * getAct() const noexcept
static void tick(std::uint_fast8_t const tickRate, void const *const sender) noexcept
QTimeEvtCtr getInterval() const noexcept
bool wasDisarmed() noexcept
QTimeEvtCtr getCtr() const noexcept
QActive * toActive() noexcept
bool rearm(QTimeEvtCtr const nTicks) noexcept
void armX(QTimeEvtCtr const nTicks, QTimeEvtCtr const interval=0U) noexcept
bool lock(QTimeEvtCtr const nTicks=QXTHREAD_NO_TIMEOUT) noexcept
void init(QPrioSpec const prioSpec) noexcept
void init(std::uint_fast8_t const count, std::uint_fast8_t const max_count=0xFFU) noexcept
bool wait(QTimeEvtCtr const nTicks=QXTHREAD_NO_TIMEOUT) noexcept
static QEvt const * queueGet(QTimeEvtCtr const nTicks=QXTHREAD_NO_TIMEOUT) noexcept
bool teDisarm_() noexcept
static void timeout_(QActive *const act)
void dispatch(QEvt const *const e, std::uint_fast8_t const qsId) override
void init(void const *const e, std::uint_fast8_t const qsId) override
void block_() const noexcept
bool delayCancel() noexcept
void unblock_() const noexcept
QTimeEvt const * getTimeEvt() const noexcept
void teArm_(enum_t const sig, QTimeEvtCtr const nTicks) noexcept
static bool delay(QTimeEvtCtr const nTicks) noexcept
void deleteRef_(QEvt const *const evtRef) noexcept
void psInit(QSubscrList *const subscrSto, enum_t const maxSignal) noexcept
QEvt const * newRef_(QEvt const *const e, QEvt const *const evtRef) noexcept
void tick(std::uint_fast8_t const tickRate, void const *const sender) noexcept
void bzero_(void *const start, std::uint_fast16_t const len) noexcept
std::uint_fast16_t getPoolMin(std::uint_fast8_t const poolNum) noexcept
std::uint_fast16_t poolGetMaxBlockSize() noexcept
void poolInit(void *const poolSto, std::uint_fast32_t const poolSize, std::uint_fast16_t const evtSize) noexcept
std::uint_fast16_t getQueueMin(std::uint_fast8_t const prio) noexcept
QEvt * newX_(std::uint_fast16_t const evtSize, std::uint_fast16_t const margin, enum_t const sig) noexcept
void gc(QEvt const *const e) noexcept
void publish_(QEvt const *const e, void const *const sender, std::uint_fast8_t const qsId) noexcept
QSchedStatus schedLock(std::uint_fast8_t const ceiling) noexcept
void schedUnlock(QSchedStatus const prevCeil) noexcept
bool rxPut(std::uint8_t const b) noexcept
T_OUT force_cast(T_IN in)
void schedDisable(std::uint_fast8_t const ceiling)
QSchedStatus schedLock(std::uint_fast8_t const ceiling) noexcept
QP::QActive * current() noexcept
void schedUnlock(QSchedStatus const stat) noexcept
void QEvt_refCtr_dec_(QEvt const *const e) noexcept
Decrement the refCtr of a const event (requires casting const away)
std::uint_fast8_t QF_LOG2(QP::QPSetBits x) noexcept
void QEvt_refCtr_inc_(QEvt const *const e) noexcept
std::uint_fast8_t QK_sched_() noexcept
void QK_activate_() noexcept
void QXK_activate_() noexcept
void QXK_contextSw_(QP::QActive *const next)
std::uint_fast8_t QXK_sched_() noexcept
std::uint_fast8_t getPrio() const noexcept