diff --git a/doxygen/Doxyfile b/doxygen/Doxyfile
index ee4e858b4..e7107b8d3 100644
--- a/doxygen/Doxyfile
+++ b/doxygen/Doxyfile
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "QP/C"
-PROJECT_NUMBER = "6.3.0"
+PROJECT_NUMBER = "6.3.1"
PROJECT_BRIEF =
PROJECT_LOGO = images/header_logo_ql.png
OUTPUT_DIRECTORY =
diff --git a/doxygen/Doxyfile-CHM b/doxygen/Doxyfile-CHM
index 69625ec6c..22fb5ed5d 100644
--- a/doxygen/Doxyfile-CHM
+++ b/doxygen/Doxyfile-CHM
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "QP/C"
-PROJECT_NUMBER = "6.3.0"
+PROJECT_NUMBER = "6.3.1"
PROJECT_BRIEF =
PROJECT_LOGO = images/header_logo_ql.png
OUTPUT_DIRECTORY =
diff --git a/doxygen/Doxyfile-DOC b/doxygen/Doxyfile-DOC
index c4766972c..26119e2ee 100644
--- a/doxygen/Doxyfile-DOC
+++ b/doxygen/Doxyfile-DOC
@@ -5,7 +5,7 @@
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = "QP/C"
-PROJECT_NUMBER = "6.3.0"
+PROJECT_NUMBER = "6.3.1"
PROJECT_BRIEF =
PROJECT_LOGO = images/header_logo_ql.png
OUTPUT_DIRECTORY =
diff --git a/doxygen/history.dox b/doxygen/history.dox
index 52b2c761d..f5c79db52 100644
--- a/doxygen/history.dox
+++ b/doxygen/history.dox
@@ -1,6 +1,11 @@
/**
@page history Revision History
+@section qpc_6_3_1 Version 6.3.1, 2018-05-24
+This release migrates the [QUTest](https://www.state-machine.com/qtools/qutest.html) examples to [QM 4.2.1](https://www.state-machine.com/qm/history.html#qm_4_2_1), which now can generate QS_FUN_DICTIONARY() records automatically. This release also adds a generic, simple blinky example for QUTest located in `examples/qutest/blinky`. Also, this release fixes a bug in the example `qutest/TDDbook_LedDriver` so that the code compiles cleanly with the updated header file "qassert.h".
+
+
+------------------------------------------------------------------------------
@section qpc_6_3_0 Version 6.3.0, 2018-05-10
The main purpose of this release is fixing the sub-machine support in the QP/Spy build configuration. Specifically, this release fixes the following bug:
diff --git a/doxygen/make.bat b/doxygen/make.bat
index 2d0f0f001..1a730cd4e 100644
--- a/doxygen/make.bat
+++ b/doxygen/make.bat
@@ -1,8 +1,8 @@
@echo off
:: ==========================================================================
:: Product: QP/C script for generating Doxygen documentation
-:: Last Updated for Version: 6.3.0
-:: Date of the Last Update: 2018-05-03
+:: Last Updated for Version: 6.3.1
+:: Date of the Last Update: 2018-05-22
::
:: Q u a n t u m L e a P s
:: ---------------------------
@@ -38,7 +38,7 @@ echo usage:
echo make
echo make -CHM
-set VERSION=6.3.0
+set VERSION=6.3.1
:: Generate Resource Standard Metrics for QP/C ...............................
set DOXHOME="C:\tools\doxygen\bin"
diff --git a/doxygen/metrics.dox b/doxygen/metrics.dox
index 6bb5cb6b1..07245c8ed 100644
--- a/doxygen/metrics.dox
+++ b/doxygen/metrics.dox
@@ -1,2293 +1,2293 @@
-/** @page metrics Code Metrics
-
-@code
- Standard Code Metrics for QP/C 6.3.0
-
- Resource Standard Metrics (TM) for C, C++, C# and Java
- Version 7.75 - mSquaredTechnologies.com
-
- License Type: Windows Single User License
- Licensed To : Quantum Leaps, LLC
- License No. : WS2975 License Date: Dec 15, 2013
- Build Date : Sep 2 2009 Run Date: May 07, 2018
- (C)1996-2009 M Squared Technologies LLC
- ________________________________________________________________________
-
- ~~ Function Metrics ~~
- ~~ Complexity Detail Analysis ~~
-
- File: ..\include\qassert.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 53 eLOC 52 lLOC 5 Comment 257 Lines 335
- ________________________________________________________________________
- End of File: ..\include\qassert.h
-
-
- File: ..\include\qep.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 156 eLOC 152 lLOC 56 Comment 405 Lines 616
- ________________________________________________________________________
- End of File: ..\include\qep.h
-
-
- File: ..\include\qequeue.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 33 eLOC 33 lLOC 15 Comment 180 Lines 233
- ________________________________________________________________________
- End of File: ..\include\qequeue.h
-
-
- File: ..\include\qf.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 196 eLOC 196 lLOC 78 Comment 543 Lines 844
- ________________________________________________________________________
- End of File: ..\include\qf.h
-
-
- File: ..\include\qk.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 62 eLOC 62 lLOC 22 Comment 130 Lines 209
- ________________________________________________________________________
- End of File: ..\include\qk.h
-
-
- File: ..\include\qmpool.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 42 eLOC 42 lLOC 18 Comment 109 Lines 169
- ________________________________________________________________________
- End of File: ..\include\qmpool.h
-
-
- File: ..\include\qpc.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 66 eLOC 65 lLOC 8 Comment 125 Lines 224
- ________________________________________________________________________
- End of File: ..\include\qpc.h
-
-
- File: ..\include\qpset.h
- ________________________________________________________________________
-
- Inline Function: QF_LOG2
- Parameters: (uint32_t x)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 3
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 25 eLOC 20 lLOC 12 Comment 7 Lines 26
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 97 eLOC 92 lLOC 23 Comment 91 Lines 211
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 1
- Total Function LOC.....: 25 Total Function Pts LOC : 0.0
- Total Function eLOC....: 20 Total Function Pts eLOC: 0.0
- Total Function lLOC....: 12 Total Function Pts lLOC: 0.0
- Total Function Params .: 1 Total Function Return .: 1
- Total Cyclo Complexity : 4 Total Function Complex.: 6
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 25 Average Function LOC ..: 25.00
- Max Function eLOC .....: 20 Average Function eLOC .: 20.00
- Max Function lLOC .....: 12 Average Function lLOC .: 12.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 1 Avg Function Parameters: 1.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 2 Avg Interface Complex. : 2.00
- Max Cyclomatic Complex.: 4 Avg Cyclomatic Complex.: 4.00
- Max Total Complexity ..: 6 Avg Total Complexity ..: 6.00
- ________________________________________________________________________
- End of File: ..\include\qpset.h
-
-
- File: ..\include\qs.h
- ________________________________________________________________________
-
-
- NOTICE: The end of the source file has been reached where the
- open brace count { 28 != 26 } close brace count
- This is an indication of non-compilable code within the source
- file. RSM processes all source code including code wrapped
- with preprocessor directives. Accurate metrics requires that
- all code present in this file must be compilable.
- ~~ Total File Summary ~~
-
- LOC 501 eLOC 493 lLOC 122 Comment 719 Lines 1233
- ________________________________________________________________________
- End of File: ..\include\qs.h
-
-
- File: ..\include\qs_dummy.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 72 eLOC 72 lLOC 0 Comment 43 Lines 124
- ________________________________________________________________________
- End of File: ..\include\qs_dummy.h
-
-
- File: ..\include\qv.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 25 eLOC 25 lLOC 2 Comment 80 Lines 111
- ________________________________________________________________________
- End of File: ..\include\qv.h
-
-
- File: ..\include\qxk.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 67 eLOC 67 lLOC 25 Comment 139 Lines 221
- ________________________________________________________________________
- End of File: ..\include\qxk.h
-
-
- File: ..\include\qxthread.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 44 eLOC 44 lLOC 26 Comment 206 Lines 269
- ________________________________________________________________________
- End of File: ..\include\qxthread.h
-
-
- File: ..\include\stdint_c.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 33 eLOC 33 lLOC 0 Comment 44 Lines 87
- ________________________________________________________________________
- End of File: ..\include\stdint_c.h
-
-
- File: ..\src\qf_pkg.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 63 eLOC 63 lLOC 8 Comment 120 Lines 206
- ________________________________________________________________________
- End of File: ..\src\qf_pkg.h
-
-
- File: ..\src\qs_pkg.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 25 eLOC 23 lLOC 6 Comment 59 Lines 93
- ________________________________________________________________________
- End of File: ..\src\qs_pkg.h
-
-
- File: ..\src\qxk_pkg.h
- ________________________________________________________________________
-
- ~~ Total File Summary ~~
-
- LOC 19 eLOC 18 lLOC 8 Comment 49 Lines 77
- ________________________________________________________________________
- End of File: ..\src\qxk_pkg.h
-
-
- File: ..\src\qf\qep_hsm.c
- ________________________________________________________________________
-
- Function: QHsm_ctor
- Parameters: (QHsm * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 9 eLOC 7 lLOC 4 Comment 21 Lines 9
-
- Function: QHsm_init_
- Parameters: (QHsm * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 3
- Conditional if / else if: 1
- Logical and ( && ) : 2
- Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
- LOC 50 eLOC 47 lLOC 31 Comment 35 Lines 70
-
- Function: QHsm_top
- Parameters: (void const * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 18 Lines 5
-
- Function: QHsm_dispatch_
- Parameters: (QHsm * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 4
- Loops for / foreach : 2
- Conditional if / else if: 5
- Logical and ( && ) : 1
- Complexity Param 2 Return 1 Cyclo Vg 13 Total 16
- LOC 106 eLOC 95 lLOC 62 Comment 67 Lines 147
-
- Function: QHsm_tran_
- Parameters: (QHsm * const me, QStateHandler path[QHSM_MAX_NEST_DEPTH_])
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 4
- Conditional if / else if: 10
- Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
- LOC 97 eLOC 76 lLOC 48 Comment 63 Lines 134
-
- Function: QHsm_isIn
- Parameters: (QHsm * const me, QStateHandler const state)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 1
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 16 eLOC 13 lLOC 9 Comment 22 Lines 21
-
- Function: QHsm_childState_
- Parameters: (QHsm * const me, QStateHandler const parent)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 1
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 19 eLOC 15 lLOC 12 Comment 33 Lines 25
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 346 eLOC 299 lLOC 177 Comment 322 Lines 634
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 7
- Total Function LOC.....: 302 Total Function Pts LOC : 2.7
- Total Function eLOC....: 257 Total Function Pts eLOC: 2.3
- Total Function lLOC....: 169 Total Function Pts lLOC: 1.4
- Total Function Params .: 14 Total Function Return .: 7
- Total Cyclo Complexity : 43 Total Function Complex.: 64
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 106 Average Function LOC ..: 43.14
- Max Function eLOC .....: 95 Average Function eLOC .: 36.71
- Max Function lLOC .....: 62 Average Function lLOC .: 24.14
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 2.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 3.00
- Max Cyclomatic Complex.: 15 Avg Cyclomatic Complex.: 6.14
- Max Total Complexity ..: 18 Avg Total Complexity ..: 9.14
- ________________________________________________________________________
- End of File: ..\src\qf\qep_hsm.c
-
-
- File: ..\src\qf\qep_msm.c
- ________________________________________________________________________
-
- Function: QMsm_ctor
- Parameters: (QMsm * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 9 eLOC 7 lLOC 4 Comment 29 Lines 10
-
- Function: QMsm_init_
- Parameters: (QMsm * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Logical and ( && ) : 2
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 23 eLOC 22 lLOC 13 Comment 26 Lines 37
-
- Function: QMsm_dispatch_
- Parameters: (QMsm * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 2
- Conditional if / else if: 12
- Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
- LOC 124 eLOC 107 lLOC 65 Comment 83 Lines 164
-
- Function: QMsm_execTatbl_
- Parameters: (QMsm * const me, QMTranActTable const *tatbl)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 5
- Inlined if-else ( ? : ) : 1
- Complexity Param 2 Return 1 Cyclo Vg 8 Total 11
- LOC 50 eLOC 42 lLOC 20 Comment 32 Lines 60
-
- Function: QMsm_exitToTranSource_
- Parameters: (QMsm * const me, QMState const *s, QMState const *ts)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 2
- Complexity Param 3 Return 1 Cyclo Vg 4 Total 8
- LOC 17 eLOC 12 lLOC 6 Comment 20 Lines 23
-
- Function: QMsm_enterHistory_
- Parameters: (QMsm * const me, QMState const *const hist)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 2
- Conditional if / else if: 3
- Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
- LOC 40 eLOC 33 lLOC 21 Comment 25 Lines 48
-
- Function: QMsm_isInState
- Parameters: (QMsm const * const me, QMState const * const state)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 1
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 11 eLOC 8 lLOC 6 Comment 17 Lines 12
-
- Function: QMsm_childStateObj_
- Parameters: (QMsm const * const me, QMState const * const parent)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 1
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 19 eLOC 13 lLOC 9 Comment 22 Lines 23
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 321 eLOC 270 lLOC 149 Comment 313 Lines 595
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 8
- Total Function LOC.....: 293 Total Function Pts LOC : 2.5
- Total Function eLOC....: 244 Total Function Pts eLOC: 2.1
- Total Function lLOC....: 144 Total Function Pts lLOC: 1.2
- Total Function Params .: 17 Total Function Return .: 8
- Total Cyclo Complexity : 44 Total Function Complex.: 69
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 124 Average Function LOC ..: 36.63
- Max Function eLOC .....: 107 Average Function eLOC .: 30.50
- Max Function lLOC .....: 65 Average Function lLOC .: 18.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 2.13
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 3.13
- Max Cyclomatic Complex.: 15 Avg Cyclomatic Complex.: 5.50
- Max Total Complexity ..: 18 Avg Total Complexity ..: 8.63
- ________________________________________________________________________
- End of File: ..\src\qf\qep_msm.c
-
-
- File: ..\src\qf\qf_act.c
- ________________________________________________________________________
-
- Function: QF_add_
- Parameters: (QActive * const a)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 2
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 10 eLOC 9 lLOC 5 Comment 20 Lines 17
-
- Function: QF_remove_
- Parameters: (QActive * const a)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 2
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 11 eLOC 10 lLOC 6 Comment 21 Lines 18
-
- Function: QF_bzero
- Parameters: (void * const start, uint_fast16_t len)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 8 eLOC 6 lLOC 4 Comment 14 Lines 8
-
- Function: QF_LOG2
- Parameters: (uint32_t x)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 3
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 25 eLOC 20 lLOC 12 Comment 1 Lines 26
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 71 eLOC 62 lLOC 28 Comment 119 Lines 195
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 4
- Total Function LOC.....: 54 Total Function Pts LOC : 0.6
- Total Function eLOC....: 45 Total Function Pts eLOC: 0.5
- Total Function lLOC....: 27 Total Function Pts lLOC: 0.2
- Total Function Params .: 5 Total Function Return .: 4
- Total Cyclo Complexity : 12 Total Function Complex.: 21
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 25 Average Function LOC ..: 13.50
- Max Function eLOC .....: 20 Average Function eLOC .: 11.25
- Max Function lLOC .....: 12 Average Function lLOC .: 6.75
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 1.25
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 2.25
- Max Cyclomatic Complex.: 4 Avg Cyclomatic Complex.: 3.00
- Max Total Complexity ..: 6 Avg Total Complexity ..: 5.25
- ________________________________________________________________________
- End of File: ..\src\qf\qf_act.c
-
-
- File: ..\src\qf\qf_actq.c
- ________________________________________________________________________
-
- Function: QActive_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 9
- Logical or ( || ) : 3
- Logical and ( && ) : 1
- Complexity Param 3 Return 1 Cyclo Vg 14 Total 18
- LOC 85 eLOC 68 lLOC 38 Comment 75 Lines 110
-
- Function: QActive_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 4
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 41 eLOC 34 lLOC 23 Comment 41 Lines 56
-
- Function: QActive_get_
- Parameters: (QActive * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 37 eLOC 33 lLOC 23 Comment 41 Lines 47
-
- Function: QF_getQueueMin
- Parameters: (uint_fast8_t const prio)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 10 eLOC 9 lLOC 6 Comment 19 Lines 13
-
- Function: QTicker_ctor
- Parameters: (QTicker * const me, uint8_t tickRate)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 6 Lines 14
-
- Function: QTicker_init_
- Parameters: (QHsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- Function: QTicker_dispatch_
- Parameters: (QHsm * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 12 eLOC 10 lLOC 8 Comment 4 Lines 15
-
- Function: QTicker_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 24 eLOC 21 lLOC 17 Comment 15 Lines 32
-
- Function: QTicker_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 267 eLOC 229 lLOC 130 Comment 265 Lines 495
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 9
- Total Function LOC.....: 231 Total Function Pts LOC : 2.1
- Total Function eLOC....: 193 Total Function Pts eLOC: 1.8
- Total Function lLOC....: 125 Total Function Pts lLOC: 1.0
- Total Function Params .: 18 Total Function Return .: 9
- Total Cyclo Complexity : 31 Total Function Complex.: 58
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 85 Average Function LOC ..: 25.67
- Max Function eLOC .....: 68 Average Function eLOC .: 21.44
- Max Function lLOC .....: 38 Average Function lLOC .: 13.89
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 2.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 3.00
- Max Cyclomatic Complex.: 14 Avg Cyclomatic Complex.: 3.44
- Max Total Complexity ..: 18 Avg Total Complexity ..: 6.44
- ________________________________________________________________________
- End of File: ..\src\qf\qf_actq.c
-
-
- File: ..\src\qf\qf_defer.c
- ________________________________________________________________________
-
- Function: QActive_defer
- Parameters: (QActive const * const me, QEQueue * const eq, QEvt const *
- const e)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 13 eLOC 11 lLOC 8 Comment 31 Lines 16
-
- Function: QActive_recall
- Parameters: (QActive * const me, QEQueue * const eq)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 32 eLOC 28 lLOC 18 Comment 43 Lines 52
-
- Function: QActive_flushDeferred
- Parameters: (QActive const * const me, QEQueue * const eq)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 10 eLOC 7 lLOC 7 Comment 19 Lines 12
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 69 eLOC 60 lLOC 33 Comment 140 Lines 201
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 3
- Total Function LOC.....: 55 Total Function Pts LOC : 0.5
- Total Function eLOC....: 46 Total Function Pts eLOC: 0.5
- Total Function lLOC....: 33 Total Function Pts lLOC: 0.3
- Total Function Params .: 7 Total Function Return .: 3
- Total Cyclo Complexity : 6 Total Function Complex.: 16
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 32 Average Function LOC ..: 18.33
- Max Function eLOC .....: 28 Average Function eLOC .: 15.33
- Max Function lLOC .....: 18 Average Function lLOC .: 11.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 2.33
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 3.33
- Max Cyclomatic Complex.: 3 Avg Cyclomatic Complex.: 2.00
- Max Total Complexity ..: 6 Avg Total Complexity ..: 5.33
- ________________________________________________________________________
- End of File: ..\src\qf\qf_defer.c
-
-
- File: ..\src\qf\qf_dyn.c
- ________________________________________________________________________
-
- Function: QEvt_ctor
- Parameters: (QEvt * const me, enum_t const sig)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 6
-
- Function: QF_poolInit
- Parameters: (void * const poolSto, uint_fast32_t const poolSize, uint_fa
- st16_t const evtSize)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical or ( || ) : 1
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 8 eLOC 6 lLOC 4 Comment 38 Lines 12
-
- Function: QF_newX_
- Parameters: (uint_fast16_t const evtSize, uint_fast16_t const margin, en
- um_t const sig)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 2
- Inlined if-else ( ? : ) : 1
- Complexity Param 3 Return 1 Cyclo Vg 5 Total 9
- LOC 29 eLOC 23 lLOC 14 Comment 40 Lines 39
-
- Function: QF_gc
- Parameters: (QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 26 eLOC 22 lLOC 13 Comment 36 Lines 40
-
- Function: QF_newRef_
- Parameters: (QEvt const * const e, void const * const evtRef)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 1
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 15 eLOC 14 lLOC 8 Comment 21 Lines 23
-
- Function: QF_deleteRef_
- Parameters: (void const * const evtRef)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 10 eLOC 9 lLOC 5 Comment 14 Lines 12
-
- Function: QF_poolGetMaxBlockSize
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 5 Lines 3
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 114 eLOC 98 lLOC 50 Comment 216 Lines 331
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 7
- Total Function LOC.....: 96 Total Function Pts LOC : 0.9
- Total Function eLOC....: 80 Total Function Pts eLOC: 0.8
- Total Function lLOC....: 48 Total Function Pts lLOC: 0.4
- Total Function Params .: 12 Total Function Return .: 7
- Total Cyclo Complexity : 15 Total Function Complex.: 34
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 29 Average Function LOC ..: 13.71
- Max Function eLOC .....: 23 Average Function eLOC .: 11.43
- Max Function lLOC .....: 14 Average Function lLOC .: 6.86
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 1.71
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 2.71
- Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 2.14
- Max Total Complexity ..: 9 Avg Total Complexity ..: 4.86
- ________________________________________________________________________
- End of File: ..\src\qf\qf_dyn.c
-
-
- File: ..\src\qf\qf_mem.c
- ________________________________________________________________________
-
- Function: QMPool_init
- Parameters: (QMPool * const me, void * const poolSto, uint_fast32_t pool
- Size, uint_fast16_t blockSize)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 2
- Logical and ( && ) : 2
- Complexity Param 4 Return 1 Cyclo Vg 5 Total 10
- LOC 31 eLOC 27 lLOC 22 Comment 59 Lines 46
-
- Function: QMPool_put
- Parameters: (QMPool * const me, void *b)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 1
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 15 eLOC 14 lLOC 9 Comment 31 Lines 22
-
- Function: QMPool_get
- Parameters: (QMPool * const me, uint_fast16_t const margin)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 3
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 42 eLOC 36 lLOC 23 Comment 56 Lines 65
-
- Function: QF_getPoolMin
- Parameters: (uint_fast8_t const poolId)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 10 eLOC 9 lLOC 6 Comment 14 Lines 14
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 110 eLOC 98 lLOC 60 Comment 207 Lines 304
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 4
- Total Function LOC.....: 98 Total Function Pts LOC : 0.9
- Total Function eLOC....: 86 Total Function Pts eLOC: 0.8
- Total Function lLOC....: 60 Total Function Pts lLOC: 0.5
- Total Function Params .: 9 Total Function Return .: 4
- Total Cyclo Complexity : 13 Total Function Complex.: 26
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 42 Average Function LOC ..: 24.50
- Max Function eLOC .....: 36 Average Function eLOC .: 21.50
- Max Function lLOC .....: 23 Average Function lLOC .: 15.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 4 Avg Function Parameters: 2.25
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 5 Avg Interface Complex. : 3.25
- Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 3.25
- Max Total Complexity ..: 10 Avg Total Complexity ..: 6.50
- ________________________________________________________________________
- End of File: ..\src\qf\qf_mem.c
-
-
- File: ..\src\qf\qf_ps.c
- ________________________________________________________________________
-
- Function: QF_psInit
- Parameters: (QSubscrList * const subscrSto, enum_t const maxSignal)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 7 eLOC 6 lLOC 3 Comment 33 Lines 12
-
- Function: QF_publish_
- Parameters: (QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 3
- Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
- LOC 36 eLOC 30 lLOC 21 Comment 50 Lines 63
-
- Function: QActive_subscribe
- Parameters: (QActive const * const me, enum_t const sig)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 4
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 16 eLOC 15 lLOC 8 Comment 23 Lines 22
-
- Function: QActive_unsubscribe
- Parameters: (QActive const * const me, enum_t const sig)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 4
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 16 eLOC 15 lLOC 8 Comment 32 Lines 25
-
- Function: QActive_unsubscribeAll
- Parameters: (QActive const * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 1
- Logical and ( && ) : 2
- Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
- LOC 23 eLOC 19 lLOC 10 Comment 26 Lines 26
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 115 eLOC 102 lLOC 52 Comment 212 Lines 330
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 5
- Total Function LOC.....: 98 Total Function Pts LOC : 0.9
- Total Function eLOC....: 85 Total Function Pts eLOC: 0.8
- Total Function lLOC....: 50 Total Function Pts lLOC: 0.4
- Total Function Params .: 8 Total Function Return .: 5
- Total Cyclo Complexity : 21 Total Function Complex.: 34
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 36 Average Function LOC ..: 19.60
- Max Function eLOC .....: 30 Average Function eLOC .: 17.00
- Max Function lLOC .....: 21 Average Function lLOC .: 10.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 1.60
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 2.60
- Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 4.20
- Max Total Complexity ..: 8 Avg Total Complexity ..: 6.80
- ________________________________________________________________________
- End of File: ..\src\qf\qf_ps.c
-
-
- File: ..\src\qf\qf_qact.c
- ________________________________________________________________________
-
- Function: QActive_ctor
- Parameters: (QActive * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 19 Lines 17
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 14 eLOC 12 lLOC 4 Comment 69 Lines 82
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 1
- Total Function LOC.....: 12 Total Function Pts LOC : 0.1
- Total Function eLOC....: 10 Total Function Pts eLOC: 0.1
- Total Function lLOC....: 4 Total Function Pts lLOC: 0.0
- Total Function Params .: 2 Total Function Return .: 1
- Total Cyclo Complexity : 1 Total Function Complex.: 4
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 12 Average Function LOC ..: 12.00
- Max Function eLOC .....: 10 Average Function eLOC .: 10.00
- Max Function lLOC .....: 4 Average Function lLOC .: 4.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 2.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 3.00
- Max Cyclomatic Complex.: 1 Avg Cyclomatic Complex.: 1.00
- Max Total Complexity ..: 4 Avg Total Complexity ..: 4.00
- ________________________________________________________________________
- End of File: ..\src\qf\qf_qact.c
-
-
- File: ..\src\qf\qf_qeq.c
- ________________________________________________________________________
-
- Function: QEQueue_init
- Parameters: (QEQueue * const me, QEvt const *qSto[], uint_fast16_t const
- qLen)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 11 eLOC 8 lLOC 7 Comment 21 Lines 11
-
- Function: QEQueue_post
- Parameters: (QEQueue * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 5
- Logical or ( || ) : 1
- Logical and ( && ) : 1
- Complexity Param 3 Return 1 Cyclo Vg 8 Total 12
- LOC 55 eLOC 45 lLOC 30 Comment 56 Lines 74
-
- Function: QEQueue_postLIFO
- Parameters: (QEQueue * const me, QEvt const * const e)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 4
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 34 eLOC 29 lLOC 21 Comment 44 Lines 44
-
- Function: QEQueue_get
- Parameters: (QEQueue * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 3
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 37 eLOC 32 lLOC 21 Comment 38 Lines 47
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 151 eLOC 128 lLOC 79 Comment 210 Lines 325
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 4
- Total Function LOC.....: 137 Total Function Pts LOC : 1.2
- Total Function eLOC....: 114 Total Function Pts eLOC: 1.0
- Total Function lLOC....: 79 Total Function Pts lLOC: 0.6
- Total Function Params .: 9 Total Function Return .: 4
- Total Cyclo Complexity : 19 Total Function Complex.: 32
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 55 Average Function LOC ..: 34.25
- Max Function eLOC .....: 45 Average Function eLOC .: 28.50
- Max Function lLOC .....: 30 Average Function lLOC .: 19.75
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 2.25
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 3.25
- Max Cyclomatic Complex.: 8 Avg Cyclomatic Complex.: 4.75
- Max Total Complexity ..: 12 Avg Total Complexity ..: 8.00
- ________________________________________________________________________
- End of File: ..\src\qf\qf_qeq.c
-
-
- File: ..\src\qf\qf_qmact.c
- ________________________________________________________________________
-
- Function: QMActive_ctor
- Parameters: (QMActive * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 28 Lines 28
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 15 eLOC 13 lLOC 4 Comment 79 Lines 95
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 1
- Total Function LOC.....: 12 Total Function Pts LOC : 0.1
- Total Function eLOC....: 10 Total Function Pts eLOC: 0.1
- Total Function lLOC....: 4 Total Function Pts lLOC: 0.0
- Total Function Params .: 2 Total Function Return .: 1
- Total Cyclo Complexity : 1 Total Function Complex.: 4
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 12 Average Function LOC ..: 12.00
- Max Function eLOC .....: 10 Average Function eLOC .: 10.00
- Max Function lLOC .....: 4 Average Function lLOC .: 4.00
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 2.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 3.00
- Max Cyclomatic Complex.: 1 Avg Cyclomatic Complex.: 1.00
- Max Total Complexity ..: 4 Avg Total Complexity ..: 4.00
- ________________________________________________________________________
- End of File: ..\src\qf\qf_qmact.c
-
-
- File: ..\src\qf\qf_time.c
- ________________________________________________________________________
-
- Function: QF_tickX_
- Parameters: (uint_fast8_t const tickRate)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 5
- Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
- LOC 66 eLOC 54 lLOC 36 Comment 56 Lines 94
-
- Function: QF_noTimeEvtsActiveX
- Parameters: (uint_fast8_t const tickRate)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 14 eLOC 10 lLOC 6 Comment 15 Lines 17
-
- Function: QTimeEvt_ctorX
- Parameters: (QTimeEvt * const me, QActive * const act, enum_t const sig,
- uint_fast8_t tickRate)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 1
- Complexity Param 4 Return 1 Cyclo Vg 2 Total 7
- LOC 11 eLOC 9 lLOC 8 Comment 32 Lines 31
-
- Function: QTimeEvt_armX
- Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks, QTimeEvtCtr
- const interval)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 4
- Complexity Param 3 Return 1 Cyclo Vg 6 Total 10
- LOC 28 eLOC 25 lLOC 16 Comment 51 Lines 50
-
- Function: QTimeEvt_disarm
- Parameters: (QTimeEvt * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 29 eLOC 26 lLOC 17 Comment 32 Lines 37
-
- Function: QTimeEvt_rearm
- Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Inlined if-else ( ? : ) : 1
- Logical and ( && ) : 3
- Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
- LOC 34 eLOC 30 lLOC 18 Comment 47 Lines 60
-
- Function: QTimeEvt_ctr
- Parameters: (QTimeEvt const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 8 eLOC 7 lLOC 5 Comment 16 Lines 10
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 210 eLOC 181 lLOC 107 Comment 309 Lines 517
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 7
- Total Function LOC.....: 190 Total Function Pts LOC : 1.6
- Total Function eLOC....: 161 Total Function Pts eLOC: 1.4
- Total Function lLOC....: 106 Total Function Pts lLOC: 0.8
- Total Function Params .: 13 Total Function Return .: 7
- Total Cyclo Complexity : 28 Total Function Complex.: 48
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 66 Average Function LOC ..: 27.14
- Max Function eLOC .....: 54 Average Function eLOC .: 23.00
- Max Function lLOC .....: 36 Average Function lLOC .: 15.14
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 4 Avg Function Parameters: 1.86
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 5 Avg Interface Complex. : 2.86
- Max Cyclomatic Complex.: 7 Avg Cyclomatic Complex.: 4.00
- Max Total Complexity ..: 10 Avg Total Complexity ..: 6.86
- ________________________________________________________________________
- End of File: ..\src\qf\qf_time.c
-
-
- File: ..\src\qv\qv.c
- ________________________________________________________________________
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 11 eLOC 10 lLOC 7 Comment 12 Lines 13
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: QF_run
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Conditional if / else if: 3
- Complexity Param 0 Return 1 Cyclo Vg 5 Total 6
- LOC 48 eLOC 42 lLOC 24 Comment 37 Lines 75
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 2
- Complexity Param 7 Return 1 Cyclo Vg 3 Total 11
- LOC 11 eLOC 9 lLOC 7 Comment 31 Lines 17
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 7 eLOC 6 lLOC 4 Comment 13 Lines 10
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 98 eLOC 87 lLOC 44 Comment 159 Lines 252
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 5
- Total Function LOC.....: 80 Total Function Pts LOC : 0.8
- Total Function eLOC....: 69 Total Function Pts eLOC: 0.7
- Total Function lLOC....: 43 Total Function Pts lLOC: 0.3
- Total Function Params .: 8 Total Function Return .: 5
- Total Cyclo Complexity : 11 Total Function Complex.: 24
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 48 Average Function LOC ..: 16.00
- Max Function eLOC .....: 42 Average Function eLOC .: 13.80
- Max Function lLOC .....: 24 Average Function lLOC .: 8.60
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 7 Avg Function Parameters: 1.60
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 8 Avg Interface Complex. : 2.60
- Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 2.20
- Max Total Complexity ..: 11 Avg Total Complexity ..: 4.80
- ________________________________________________________________________
- End of File: ..\src\qv\qv.c
-
-
- File: ..\src\qk\qk.c
- ________________________________________________________________________
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 13 eLOC 12 lLOC 9 Comment 14 Lines 16
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: initial_events
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
-
- Function: QF_run
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 12 eLOC 10 lLOC 7 Comment 13 Lines 14
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 3
- Complexity Param 7 Return 1 Cyclo Vg 5 Total 13
- LOC 18 eLOC 15 lLOC 10 Comment 34 Lines 29
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
-
- Function: QK_schedLock
- Parameters: (uint_fast8_t ceiling)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 22 eLOC 19 lLOC 12 Comment 32 Lines 33
-
- Function: QK_schedUnlock
- Parameters: (QSchedStatus stat)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Logical and ( && ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 18 lLOC 10 Comment 28 Lines 33
-
- Function: QK_sched_
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 0 Return 1 Cyclo Vg 3 Total 4
- LOC 15 eLOC 11 lLOC 7 Comment 21 Lines 19
-
- Function: QK_activate_
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 5
- Inlined if-else ( ? : ) : 1
- Logical or ( || ) : 3
- Complexity Param 0 Return 1 Cyclo Vg 11 Total 12
- LOC 69 eLOC 61 lLOC 32 Comment 53 Lines 101
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 209 eLOC 180 lLOC 98 Comment 279 Lines 475
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 10
- Total Function LOC.....: 190 Total Function Pts LOC : 1.6
- Total Function eLOC....: 161 Total Function Pts eLOC: 1.4
- Total Function lLOC....: 96 Total Function Pts lLOC: 0.8
- Total Function Params .: 10 Total Function Return .: 10
- Total Cyclo Complexity : 33 Total Function Complex.: 53
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 69 Average Function LOC ..: 19.00
- Max Function eLOC .....: 61 Average Function eLOC .: 16.10
- Max Function lLOC .....: 32 Average Function lLOC .: 9.60
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 7 Avg Function Parameters: 1.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 8 Avg Interface Complex. : 2.00
- Max Cyclomatic Complex.: 11 Avg Cyclomatic Complex.: 3.30
- Max Total Complexity ..: 13 Avg Total Complexity ..: 5.30
- ________________________________________________________________________
- End of File: ..\src\qk\qk.c
-
-
- File: ..\src\qxk\qxk.c
- ________________________________________________________________________
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 17 eLOC 16 lLOC 13 Comment 17 Lines 23
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: initial_events
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
-
- Function: QF_run
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops for / foreach : 1
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 12 eLOC 10 lLOC 7 Comment 12 Lines 15
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 4
- Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
- LOC 20 eLOC 17 lLOC 11 Comment 38 Lines 31
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
-
- Function: QXK_schedLock
- Parameters: (uint_fast8_t ceiling)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Inlined if-else ( ? : ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 25 eLOC 22 lLOC 12 Comment 40 Lines 35
-
- Function: QXK_schedUnlock
- Parameters: (QSchedStatus stat)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Logical and ( && ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 18 lLOC 10 Comment 33 Lines 33
-
- Function: QXK_sched_
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 5
- Logical or ( || ) : 1
- Complexity Param 0 Return 1 Cyclo Vg 7 Total 8
- LOC 52 eLOC 42 lLOC 23 Comment 36 Lines 68
-
- Function: QXK_activate_
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Loops while / do : 1
- Conditional if / else if: 6
- Inlined if-else ( ? : ) : 1
- Logical or ( || ) : 4
- Complexity Param 0 Return 1 Cyclo Vg 13 Total 14
- LOC 88 eLOC 78 lLOC 42 Comment 64 Lines 130
-
- Function: QXK_current
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 13 eLOC 11 lLOC 8 Comment 4 Lines 20
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 288 eLOC 249 lLOC 138 Comment 329 Lines 602
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 11
- Total Function LOC.....: 268 Total Function Pts LOC : 2.3
- Total Function eLOC....: 229 Total Function Pts eLOC: 1.9
- Total Function lLOC....: 135 Total Function Pts lLOC: 1.1
- Total Function Params .: 10 Total Function Return .: 11
- Total Cyclo Complexity : 43 Total Function Complex.: 64
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 88 Average Function LOC ..: 24.36
- Max Function eLOC .....: 78 Average Function eLOC .: 20.82
- Max Function lLOC .....: 42 Average Function lLOC .: 12.27
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 7 Avg Function Parameters: 0.91
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 8 Avg Interface Complex. : 1.91
- Max Cyclomatic Complex.: 13 Avg Cyclomatic Complex.: 3.91
- Max Total Complexity ..: 14 Avg Total Complexity ..: 5.82
- ________________________________________________________________________
- End of File: ..\src\qxk\qxk.c
-
-
- File: ..\src\qxk\qxk_mutex.c
- ________________________________________________________________________
-
- Function: QXMutex_init
- Parameters: (QXMutex * const me, uint_fast8_t ceiling)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical or ( || ) : 1
- Logical and ( && ) : 1
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 16 eLOC 14 lLOC 8 Comment 33 Lines 25
-
- Function: QXMutex_lock
- Parameters: (QXMutex * const me, uint_fast16_t const nTicks)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 4
- Logical or ( || ) : 1
- Logical and ( && ) : 4
- Complexity Param 2 Return 1 Cyclo Vg 10 Total 13
- LOC 52 eLOC 45 lLOC 29 Comment 53 Lines 89
-
- Function: QXMutex_tryLock
- Parameters: (QXMutex * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 5
- Logical or ( || ) : 1
- Logical and ( && ) : 5
- Complexity Param 1 Return 1 Cyclo Vg 12 Total 14
- LOC 44 eLOC 37 lLOC 20 Comment 46 Lines 69
-
- Function: QXMutex_unlock
- Parameters: (QXMutex * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 7
- Logical or ( || ) : 2
- Logical and ( && ) : 8
- Complexity Param 1 Return 1 Cyclo Vg 18 Total 20
- LOC 67 eLOC 57 lLOC 29 Comment 66 Lines 114
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 194 eLOC 168 lLOC 86 Comment 248 Lines 449
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 4
- Total Function LOC.....: 179 Total Function Pts LOC : 1.5
- Total Function eLOC....: 153 Total Function Pts eLOC: 1.3
- Total Function lLOC....: 86 Total Function Pts lLOC: 0.7
- Total Function Params .: 6 Total Function Return .: 4
- Total Cyclo Complexity : 44 Total Function Complex.: 54
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 67 Average Function LOC ..: 44.75
- Max Function eLOC .....: 57 Average Function eLOC .: 38.25
- Max Function lLOC .....: 29 Average Function lLOC .: 21.50
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 2 Avg Function Parameters: 1.50
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 3 Avg Interface Complex. : 2.50
- Max Cyclomatic Complex.: 18 Avg Cyclomatic Complex.: 11.00
- Max Total Complexity ..: 20 Avg Total Complexity ..: 13.50
- ________________________________________________________________________
- End of File: ..\src\qxk\qxk_mutex.c
-
-
- File: ..\src\qxk\qxk_sema.c
- ________________________________________________________________________
-
- Function: QXSemaphore_init
- Parameters: (QXSemaphore * const me, uint_fast16_t count, uint_fast16_t
- max_count)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 6 eLOC 4 lLOC 4 Comment 22 Lines 7
-
- Function: QXSemaphore_wait
- Parameters: (QXSemaphore * const me, uint_fast16_t const nTicks)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 4
- Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
- LOC 29 eLOC 26 lLOC 18 Comment 44 Lines 44
-
- Function: QXSemaphore_tryWait
- Parameters: (QXSemaphore * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 15 eLOC 12 lLOC 8 Comment 18 Lines 20
-
- Function: QXSemaphore_signal
- Parameters: (QXSemaphore * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 3
- Logical and ( && ) : 3
- Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
- LOC 32 eLOC 26 lLOC 16 Comment 35 Lines 48
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 97 eLOC 83 lLOC 46 Comment 168 Lines 262
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 4
- Total Function LOC.....: 82 Total Function Pts LOC : 0.8
- Total Function eLOC....: 68 Total Function Pts eLOC: 0.6
- Total Function lLOC....: 46 Total Function Pts lLOC: 0.4
- Total Function Params .: 7 Total Function Return .: 4
- Total Cyclo Complexity : 16 Total Function Complex.: 27
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 32 Average Function LOC ..: 20.50
- Max Function eLOC .....: 26 Average Function eLOC .: 17.00
- Max Function lLOC .....: 18 Average Function lLOC .: 11.50
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 3 Avg Function Parameters: 1.75
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 4 Avg Interface Complex. : 2.75
- Max Cyclomatic Complex.: 7 Avg Cyclomatic Complex.: 4.00
- Max Total Complexity ..: 9 Avg Total Complexity ..: 6.75
- ________________________________________________________________________
- End of File: ..\src\qxk\qxk_sema.c
-
-
- File: ..\src\qxk\qxk_xthr.c
- ________________________________________________________________________
-
- Function: QXThread_ctor
- Parameters: (QXThread * const me, QXThreadHandler handler, uint_fast8_t
- tickRate)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 13 eLOC 10 lLOC 5 Comment 27 Lines 16
-
- Function: QXThread_init_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 2 Lines 5
-
- Function: QXThread_dispatch_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- Function: QXThread_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 4
- Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
- LOC 21 eLOC 18 lLOC 12 Comment 42 Lines 43
-
- Function: QXThread_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 9
- Logical or ( || ) : 1
- Logical and ( && ) : 1
- Complexity Param 3 Return 1 Cyclo Vg 12 Total 16
- LOC 80 eLOC 65 lLOC 45 Comment 83 Lines 115
-
- Function: QXThread_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 11 Lines 5
-
- Function: QXThread_queueGet
- Parameters: (uint_fast16_t const nTicks)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 4
- Logical and ( && ) : 3
- Complexity Param 1 Return 1 Cyclo Vg 8 Total 10
- LOC 61 eLOC 54 lLOC 35 Comment 55 Lines 87
-
- Function: QXThread_block_
- Parameters: (QXThread const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 7
-
- Function: QXThread_unblock_
- Parameters: (QXThread const * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Logical and ( && ) : 1
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 8 eLOC 5 lLOC 2 Comment 10 Lines 8
-
- Function: QXThread_teArm_
- Parameters: (QXThread * const me, QSignal sig, uint_fast16_t const nTick
- s)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 2
- Complexity Param 3 Return 1 Cyclo Vg 3 Total 7
- LOC 14 eLOC 10 lLOC 8 Comment 23 Lines 31
-
- Function: QXThread_teDisarm_
- Parameters: (QXThread * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 8 lLOC 5 Comment 11 Lines 13
-
- Function: QXThread_delay
- Parameters: (uint_fast16_t const nTicks)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 3
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 20 lLOC 14 Comment 19 Lines 37
-
- Function: QXThread_delayCancel
- Parameters: (QXThread * const me)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Conditional if / else if: 1
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 14 eLOC 11 lLOC 7 Comment 2 Lines 16
-
- Function: QXK_threadRet_
- Parameters: (void)
- Cyclomatic Complexity Vg Detail
- Function Base : 1
- Logical and ( && ) : 3
- Complexity Param 0 Return 1 Cyclo Vg 4 Total 5
- LOC 16 eLOC 15 lLOC 10 Comment 22 Lines 27
-
- ------------------------------------------------------------------------
-
- ~~ Total File Summary ~~
-
- LOC 322 eLOC 275 lLOC 161 Comment 367 Lines 682
- ------------------------------------------------------------------------
-
- ~~ File Functional Summary ~~
-
- File Function Count....: 14
- Total Function LOC.....: 279 Total Function Pts LOC : 2.5
- Total Function eLOC....: 232 Total Function Pts eLOC: 2.1
- Total Function lLOC....: 155 Total Function Pts lLOC: 1.3
- Total Function Params .: 28 Total Function Return .: 14
- Total Cyclo Complexity : 49 Total Function Complex.: 91
- ------ ----- ----- ------ ------ -----
- Max Function LOC ......: 80 Average Function LOC ..: 19.93
- Max Function eLOC .....: 65 Average Function eLOC .: 16.57
- Max Function lLOC .....: 45 Average Function lLOC .: 11.07
- ------ ----- ----- ------ ------ -----
- Max Function Parameters: 7 Avg Function Parameters: 2.00
- Max Function Returns ..: 1 Avg Function Returns ..: 1.00
- Max Interface Complex. : 8 Avg Interface Complex. : 3.00
- Max Cyclomatic Complex.: 12 Avg Cyclomatic Complex.: 3.50
- Max Total Complexity ..: 16 Avg Total Complexity ..: 6.50
- ________________________________________________________________________
- End of File: ..\src\qxk\qxk_xthr.c
-
-
- ------------------------------------------------------------------------
-
- ~~ Project Analysis For 35 Files ~~
-
- ------------------------------------------------------------------------
-
- ~~ Total Project Summary ~~
-
- LOC 4565 eLOC 4126 lLOC 1868 Comment 7310 Lines 12088
- Average per File, metric/35 files
- LOC 130 eLOC 117 lLOC 53 Comment 208 Lines 345
-
- ------------------------------------------------------------------------
-
- ~~ Project Functional Metrics ~~
-
- Function: QF_LOG2
- Parameters: (uint32_t x)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 25 eLOC 20 lLOC 12 Comment 7 Lines 26
-
- Function: QHsm_ctor
- Parameters: (QHsm * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 9 eLOC 7 lLOC 4 Comment 21 Lines 9
-
- Function: QHsm_init_
- Parameters: (QHsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
- LOC 50 eLOC 47 lLOC 31 Comment 35 Lines 70
-
- Function: QHsm_top
- Parameters: (void const * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 18 Lines 5
-
- Function: QHsm_dispatch_
- Parameters: (QHsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 13 Total 16
- LOC 106 eLOC 95 lLOC 62 Comment 67 Lines 147
-
- Function: QHsm_tran_
- Parameters: (QHsm * const me, QStateHandler path[QHSM_MAX_NEST_DEPTH_])
- Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
- LOC 97 eLOC 76 lLOC 48 Comment 63 Lines 134
-
- Function: QHsm_isIn
- Parameters: (QHsm * const me, QStateHandler const state)
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 16 eLOC 13 lLOC 9 Comment 22 Lines 21
-
- Function: QHsm_childState_
- Parameters: (QHsm * const me, QStateHandler const parent)
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 19 eLOC 15 lLOC 12 Comment 33 Lines 25
-
- Function: QMsm_ctor
- Parameters: (QMsm * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 9 eLOC 7 lLOC 4 Comment 29 Lines 10
-
- Function: QMsm_init_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 23 eLOC 22 lLOC 13 Comment 26 Lines 37
-
- Function: QMsm_dispatch_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
- LOC 124 eLOC 107 lLOC 65 Comment 83 Lines 164
-
- Function: QMsm_execTatbl_
- Parameters: (QMsm * const me, QMTranActTable const *tatbl)
- Complexity Param 2 Return 1 Cyclo Vg 8 Total 11
- LOC 50 eLOC 42 lLOC 20 Comment 32 Lines 60
-
- Function: QMsm_exitToTranSource_
- Parameters: (QMsm * const me, QMState const *s, QMState const *ts)
- Complexity Param 3 Return 1 Cyclo Vg 4 Total 8
- LOC 17 eLOC 12 lLOC 6 Comment 20 Lines 23
-
- Function: QMsm_enterHistory_
- Parameters: (QMsm * const me, QMState const *const hist)
- Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
- LOC 40 eLOC 33 lLOC 21 Comment 25 Lines 48
-
- Function: QMsm_isInState
- Parameters: (QMsm const * const me, QMState const * const state)
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 11 eLOC 8 lLOC 6 Comment 17 Lines 12
-
- Function: QMsm_childStateObj_
- Parameters: (QMsm const * const me, QMState const * const parent)
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 19 eLOC 13 lLOC 9 Comment 22 Lines 23
-
- Function: QF_add_
- Parameters: (QActive * const a)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 10 eLOC 9 lLOC 5 Comment 20 Lines 17
-
- Function: QF_remove_
- Parameters: (QActive * const a)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 11 eLOC 10 lLOC 6 Comment 21 Lines 18
-
- Function: QF_bzero
- Parameters: (void * const start, uint_fast16_t len)
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 8 eLOC 6 lLOC 4 Comment 14 Lines 8
-
- Function: QF_LOG2
- Parameters: (uint32_t x)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 25 eLOC 20 lLOC 12 Comment 1 Lines 26
-
- Function: QActive_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Complexity Param 3 Return 1 Cyclo Vg 14 Total 18
- LOC 85 eLOC 68 lLOC 38 Comment 75 Lines 110
-
- Function: QActive_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 41 eLOC 34 lLOC 23 Comment 41 Lines 56
-
- Function: QActive_get_
- Parameters: (QActive * const me)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 37 eLOC 33 lLOC 23 Comment 41 Lines 47
-
- Function: QF_getQueueMin
- Parameters: (uint_fast8_t const prio)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 10 eLOC 9 lLOC 6 Comment 19 Lines 13
-
- Function: QTicker_ctor
- Parameters: (QTicker * const me, uint8_t tickRate)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 6 Lines 14
-
- Function: QTicker_init_
- Parameters: (QHsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- Function: QTicker_dispatch_
- Parameters: (QHsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 12 eLOC 10 lLOC 8 Comment 4 Lines 15
-
- Function: QTicker_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 24 eLOC 21 lLOC 17 Comment 15 Lines 32
-
- Function: QTicker_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- Function: QActive_defer
- Parameters: (QActive const * const me, QEQueue * const eq, QEvt const *
- const e)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 13 eLOC 11 lLOC 8 Comment 31 Lines 16
-
- Function: QActive_recall
- Parameters: (QActive * const me, QEQueue * const eq)
- Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
- LOC 32 eLOC 28 lLOC 18 Comment 43 Lines 52
-
- Function: QActive_flushDeferred
- Parameters: (QActive const * const me, QEQueue * const eq)
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 10 eLOC 7 lLOC 7 Comment 19 Lines 12
-
- Function: QEvt_ctor
- Parameters: (QEvt * const me, enum_t const sig)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 6
-
- Function: QF_poolInit
- Parameters: (void * const poolSto, uint_fast32_t const poolSize, uint_fa
- st16_t const evtSize)
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 8 eLOC 6 lLOC 4 Comment 38 Lines 12
-
- Function: QF_newX_
- Parameters: (uint_fast16_t const evtSize, uint_fast16_t const margin, en
- um_t const sig)
- Complexity Param 3 Return 1 Cyclo Vg 5 Total 9
- LOC 29 eLOC 23 lLOC 14 Comment 40 Lines 39
-
- Function: QF_gc
- Parameters: (QEvt const * const e)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 26 eLOC 22 lLOC 13 Comment 36 Lines 40
-
- Function: QF_newRef_
- Parameters: (QEvt const * const e, void const * const evtRef)
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 15 eLOC 14 lLOC 8 Comment 21 Lines 23
-
- Function: QF_deleteRef_
- Parameters: (void const * const evtRef)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 10 eLOC 9 lLOC 5 Comment 14 Lines 12
-
- Function: QF_poolGetMaxBlockSize
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 5 Lines 3
-
- Function: QMPool_init
- Parameters: (QMPool * const me, void * const poolSto, uint_fast32_t pool
- Size, uint_fast16_t blockSize)
- Complexity Param 4 Return 1 Cyclo Vg 5 Total 10
- LOC 31 eLOC 27 lLOC 22 Comment 59 Lines 46
-
- Function: QMPool_put
- Parameters: (QMPool * const me, void *b)
- Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
- LOC 15 eLOC 14 lLOC 9 Comment 31 Lines 22
-
- Function: QMPool_get
- Parameters: (QMPool * const me, uint_fast16_t const margin)
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 42 eLOC 36 lLOC 23 Comment 56 Lines 65
-
- Function: QF_getPoolMin
- Parameters: (uint_fast8_t const poolId)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 10 eLOC 9 lLOC 6 Comment 14 Lines 14
-
- Function: QF_psInit
- Parameters: (QSubscrList * const subscrSto, enum_t const maxSignal)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 7 eLOC 6 lLOC 3 Comment 33 Lines 12
-
- Function: QF_publish_
- Parameters: (QEvt const * const e)
- Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
- LOC 36 eLOC 30 lLOC 21 Comment 50 Lines 63
-
- Function: QActive_subscribe
- Parameters: (QActive const * const me, enum_t const sig)
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 16 eLOC 15 lLOC 8 Comment 23 Lines 22
-
- Function: QActive_unsubscribe
- Parameters: (QActive const * const me, enum_t const sig)
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 16 eLOC 15 lLOC 8 Comment 32 Lines 25
-
- Function: QActive_unsubscribeAll
- Parameters: (QActive const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
- LOC 23 eLOC 19 lLOC 10 Comment 26 Lines 26
-
- Function: QActive_ctor
- Parameters: (QActive * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 19 Lines 17
-
- Function: QEQueue_init
- Parameters: (QEQueue * const me, QEvt const *qSto[], uint_fast16_t const
- qLen)
- Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
- LOC 11 eLOC 8 lLOC 7 Comment 21 Lines 11
-
- Function: QEQueue_post
- Parameters: (QEQueue * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Complexity Param 3 Return 1 Cyclo Vg 8 Total 12
- LOC 55 eLOC 45 lLOC 30 Comment 56 Lines 74
-
- Function: QEQueue_postLIFO
- Parameters: (QEQueue * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
- LOC 34 eLOC 29 lLOC 21 Comment 44 Lines 44
-
- Function: QEQueue_get
- Parameters: (QEQueue * const me)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 37 eLOC 32 lLOC 21 Comment 38 Lines 47
-
- Function: QMActive_ctor
- Parameters: (QMActive * const me, QStateHandler initial)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 12 eLOC 10 lLOC 4 Comment 28 Lines 28
-
- Function: QF_tickX_
- Parameters: (uint_fast8_t const tickRate)
- Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
- LOC 66 eLOC 54 lLOC 36 Comment 56 Lines 94
-
- Function: QF_noTimeEvtsActiveX
- Parameters: (uint_fast8_t const tickRate)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 14 eLOC 10 lLOC 6 Comment 15 Lines 17
-
- Function: QTimeEvt_ctorX
- Parameters: (QTimeEvt * const me, QActive * const act, enum_t const sig,
- uint_fast8_t tickRate)
- Complexity Param 4 Return 1 Cyclo Vg 2 Total 7
- LOC 11 eLOC 9 lLOC 8 Comment 32 Lines 31
-
- Function: QTimeEvt_armX
- Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks, QTimeEvtCtr
- const interval)
- Complexity Param 3 Return 1 Cyclo Vg 6 Total 10
- LOC 28 eLOC 25 lLOC 16 Comment 51 Lines 50
-
- Function: QTimeEvt_disarm
- Parameters: (QTimeEvt * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 29 eLOC 26 lLOC 17 Comment 32 Lines 37
-
- Function: QTimeEvt_rearm
- Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks)
- Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
- LOC 34 eLOC 30 lLOC 18 Comment 47 Lines 60
-
- Function: QTimeEvt_ctr
- Parameters: (QTimeEvt const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 8 eLOC 7 lLOC 5 Comment 16 Lines 10
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 11 eLOC 10 lLOC 7 Comment 12 Lines 13
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: QF_run
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 5 Total 6
- LOC 48 eLOC 42 lLOC 24 Comment 37 Lines 75
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Complexity Param 7 Return 1 Cyclo Vg 3 Total 11
- LOC 11 eLOC 9 lLOC 7 Comment 31 Lines 17
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 7 eLOC 6 lLOC 4 Comment 13 Lines 10
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 13 eLOC 12 lLOC 9 Comment 14 Lines 16
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: initial_events
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
-
- Function: QF_run
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 12 eLOC 10 lLOC 7 Comment 13 Lines 14
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Complexity Param 7 Return 1 Cyclo Vg 5 Total 13
- LOC 18 eLOC 15 lLOC 10 Comment 34 Lines 29
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
-
- Function: QK_schedLock
- Parameters: (uint_fast8_t ceiling)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 22 eLOC 19 lLOC 12 Comment 32 Lines 33
-
- Function: QK_schedUnlock
- Parameters: (QSchedStatus stat)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 18 lLOC 10 Comment 28 Lines 33
-
- Function: QK_sched_
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 3 Total 4
- LOC 15 eLOC 11 lLOC 7 Comment 21 Lines 19
-
- Function: QK_activate_
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 11 Total 12
- LOC 69 eLOC 61 lLOC 32 Comment 53 Lines 101
-
- Function: QF_init
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 17 eLOC 16 lLOC 13 Comment 17 Lines 23
-
- Function: QF_stop
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
- LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
-
- Function: initial_events
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
-
- Function: QF_run
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 12 eLOC 10 lLOC 7 Comment 12 Lines 15
-
- Function: QActive_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
- LOC 20 eLOC 17 lLOC 11 Comment 38 Lines 31
-
- Function: QActive_stop
- Parameters: (QActive * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
-
- Function: QXK_schedLock
- Parameters: (uint_fast8_t ceiling)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 25 eLOC 22 lLOC 12 Comment 40 Lines 35
-
- Function: QXK_schedUnlock
- Parameters: (QSchedStatus stat)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 18 lLOC 10 Comment 33 Lines 33
-
- Function: QXK_sched_
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 7 Total 8
- LOC 52 eLOC 42 lLOC 23 Comment 36 Lines 68
-
- Function: QXK_activate_
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 13 Total 14
- LOC 88 eLOC 78 lLOC 42 Comment 64 Lines 130
-
- Function: QXK_current
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
- LOC 13 eLOC 11 lLOC 8 Comment 4 Lines 20
-
- Function: QXMutex_init
- Parameters: (QXMutex * const me, uint_fast8_t ceiling)
- Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
- LOC 16 eLOC 14 lLOC 8 Comment 33 Lines 25
-
- Function: QXMutex_lock
- Parameters: (QXMutex * const me, uint_fast16_t const nTicks)
- Complexity Param 2 Return 1 Cyclo Vg 10 Total 13
- LOC 52 eLOC 45 lLOC 29 Comment 53 Lines 89
-
- Function: QXMutex_tryLock
- Parameters: (QXMutex * const me)
- Complexity Param 1 Return 1 Cyclo Vg 12 Total 14
- LOC 44 eLOC 37 lLOC 20 Comment 46 Lines 69
-
- Function: QXMutex_unlock
- Parameters: (QXMutex * const me)
- Complexity Param 1 Return 1 Cyclo Vg 18 Total 20
- LOC 67 eLOC 57 lLOC 29 Comment 66 Lines 114
-
- Function: QXSemaphore_init
- Parameters: (QXSemaphore * const me, uint_fast16_t count, uint_fast16_t
- max_count)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 6 eLOC 4 lLOC 4 Comment 22 Lines 7
-
- Function: QXSemaphore_wait
- Parameters: (QXSemaphore * const me, uint_fast16_t const nTicks)
- Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
- LOC 29 eLOC 26 lLOC 18 Comment 44 Lines 44
-
- Function: QXSemaphore_tryWait
- Parameters: (QXSemaphore * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 15 eLOC 12 lLOC 8 Comment 18 Lines 20
-
- Function: QXSemaphore_signal
- Parameters: (QXSemaphore * const me)
- Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
- LOC 32 eLOC 26 lLOC 16 Comment 35 Lines 48
-
- Function: QXThread_ctor
- Parameters: (QXThread * const me, QXThreadHandler handler, uint_fast8_t
- tickRate)
- Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
- LOC 13 eLOC 10 lLOC 5 Comment 27 Lines 16
-
- Function: QXThread_init_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 2 Lines 5
-
- Function: QXThread_dispatch_
- Parameters: (QMsm * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
-
- Function: QXThread_start_
- Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
- uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
- t const *ie)
- Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
- LOC 21 eLOC 18 lLOC 12 Comment 42 Lines 43
-
- Function: QXThread_post_
- Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
- st margin)
- Complexity Param 3 Return 1 Cyclo Vg 12 Total 16
- LOC 80 eLOC 65 lLOC 45 Comment 83 Lines 115
-
- Function: QXThread_postLIFO_
- Parameters: (QActive * const me, QEvt const * const e)
- Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
- LOC 5 eLOC 4 lLOC 3 Comment 11 Lines 5
-
- Function: QXThread_queueGet
- Parameters: (uint_fast16_t const nTicks)
- Complexity Param 1 Return 1 Cyclo Vg 8 Total 10
- LOC 61 eLOC 54 lLOC 35 Comment 55 Lines 87
-
- Function: QXThread_block_
- Parameters: (QXThread const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
- LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 7
-
- Function: QXThread_unblock_
- Parameters: (QXThread const * const me)
- Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
- LOC 8 eLOC 5 lLOC 2 Comment 10 Lines 8
-
- Function: QXThread_teArm_
- Parameters: (QXThread * const me, QSignal sig, uint_fast16_t const nTick
- s)
- Complexity Param 3 Return 1 Cyclo Vg 3 Total 7
- LOC 14 eLOC 10 lLOC 8 Comment 23 Lines 31
-
- Function: QXThread_teDisarm_
- Parameters: (QXThread * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 11 eLOC 8 lLOC 5 Comment 11 Lines 13
-
- Function: QXThread_delay
- Parameters: (uint_fast16_t const nTicks)
- Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
- LOC 21 eLOC 20 lLOC 14 Comment 19 Lines 37
-
- Function: QXThread_delayCancel
- Parameters: (QXThread * const me)
- Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
- LOC 14 eLOC 11 lLOC 7 Comment 2 Lines 16
-
- Function: QXK_threadRet_
- Parameters: (void)
- Complexity Param 0 Return 1 Cyclo Vg 4 Total 5
- LOC 16 eLOC 15 lLOC 10 Comment 22 Lines 27
-
- Total: Functions
- LOC 2681 eLOC 2263 lLOC 1422 InCmp 295 CycloCmp 434
- Function Points FP(LOC) 20.8 FP(eLOC) 17.5 FP(lLOC) 11.0
-
- ------------------------------------------------------------------------
-
- ~~ Project Functional Analysis ~~
-
- Total Functions .......: 109 Total Physical Lines ..: 3814
- Total LOC .............: 2681 Total Function Pts LOC : 20.8
- Total eLOC ............: 2263 Total Function Pts eLOC: 17.5
- Total lLOC.............: 1422 Total Function Pts lLOC: 11.0
- Total Cyclomatic Comp. : 434 Total Interface Comp. .: 295
- Total Parameters ......: 186 Total Return Points ...: 109
- Total Comment Lines ...: 3060 Total Blank Lines .....: 568
- ------ ----- ----- ------ ------ -----
- Avg Physical Lines ....: 34.99
- Avg LOC ...............: 24.60 Avg eLOC ..............: 20.76
- Avg lLOC ..............: 13.05 Avg Cyclomatic Comp. ..: 3.98
- Avg Interface Comp. ...: 2.71 Avg Parameters ........: 1.71
- Avg Return Points .....: 1.00 Avg Comment Lines .....: 28.07
- ------ ----- ----- ------ ------ -----
- Max LOC ...............: 124
- Max eLOC ..............: 107 Max lLOC ..............: 65
- Max Cyclomatic Comp. ..: 18 Max Interface Comp. ...: 8
- Max Parameters ........: 7 Max Return Points .....: 1
- Max Comment Lines .....: 83 Max Total Lines .......: 164
- ------ ----- ----- ------ ------ -----
- Min LOC ...............: 3
- Min eLOC ..............: 2 Min lLOC ..............: 1
- Min Cyclomatic Comp. ..: 1 Min Interface Comp. ...: 1
- Min Parameters ........: 0 Min Return Points .....: 1
- Min Comment Lines .....: 1 Min Total Lines .......: 3
-
- ------------------------------------------------------------------------
-
- ~~ File Summary ~~
-
- C Source Files *.c ....: 18 C/C++ Include Files *.h: 17
- C++ Source Files *.c* .: 0 C++ Include Files *.h* : 0
- C# Source Files *.cs ..: 0 Java Source File *.jav*: 0
- Other File Count ......: 0 Total File Count ......: 35
- ________________________________________________________________________
-
-@endcode
-*/
+/** @page metrics Code Metrics
+
+@code
+ Standard Code Metrics for QP/C 6.3.1
+
+ Resource Standard Metrics (TM) for C, C++, C# and Java
+ Version 7.75 - mSquaredTechnologies.com
+
+ License Type: Windows Single User License
+ Licensed To : Quantum Leaps, LLC
+ License No. : WS2975 License Date: Dec 15, 2013
+ Build Date : Sep 2 2009 Run Date: May 22, 2018
+ (C)1996-2009 M Squared Technologies LLC
+ ________________________________________________________________________
+
+ ~~ Function Metrics ~~
+ ~~ Complexity Detail Analysis ~~
+
+ File: ..\include\qassert.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 54 eLOC 53 lLOC 5 Comment 258 Lines 338
+ ________________________________________________________________________
+ End of File: ..\include\qassert.h
+
+
+ File: ..\include\qep.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 155 eLOC 151 lLOC 56 Comment 404 Lines 613
+ ________________________________________________________________________
+ End of File: ..\include\qep.h
+
+
+ File: ..\include\qequeue.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 33 eLOC 33 lLOC 15 Comment 180 Lines 233
+ ________________________________________________________________________
+ End of File: ..\include\qequeue.h
+
+
+ File: ..\include\qf.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 196 eLOC 196 lLOC 78 Comment 543 Lines 844
+ ________________________________________________________________________
+ End of File: ..\include\qf.h
+
+
+ File: ..\include\qk.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 62 eLOC 62 lLOC 22 Comment 130 Lines 209
+ ________________________________________________________________________
+ End of File: ..\include\qk.h
+
+
+ File: ..\include\qmpool.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 42 eLOC 42 lLOC 18 Comment 109 Lines 169
+ ________________________________________________________________________
+ End of File: ..\include\qmpool.h
+
+
+ File: ..\include\qpc.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 66 eLOC 65 lLOC 8 Comment 125 Lines 224
+ ________________________________________________________________________
+ End of File: ..\include\qpc.h
+
+
+ File: ..\include\qpset.h
+ ________________________________________________________________________
+
+ Inline Function: QF_LOG2
+ Parameters: (uint32_t x)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 3
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 25 eLOC 20 lLOC 12 Comment 7 Lines 26
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 97 eLOC 92 lLOC 23 Comment 91 Lines 211
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 1
+ Total Function LOC.....: 25 Total Function Pts LOC : 0.0
+ Total Function eLOC....: 20 Total Function Pts eLOC: 0.0
+ Total Function lLOC....: 12 Total Function Pts lLOC: 0.0
+ Total Function Params .: 1 Total Function Return .: 1
+ Total Cyclo Complexity : 4 Total Function Complex.: 6
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 25 Average Function LOC ..: 25.00
+ Max Function eLOC .....: 20 Average Function eLOC .: 20.00
+ Max Function lLOC .....: 12 Average Function lLOC .: 12.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 1 Avg Function Parameters: 1.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 2 Avg Interface Complex. : 2.00
+ Max Cyclomatic Complex.: 4 Avg Cyclomatic Complex.: 4.00
+ Max Total Complexity ..: 6 Avg Total Complexity ..: 6.00
+ ________________________________________________________________________
+ End of File: ..\include\qpset.h
+
+
+ File: ..\include\qs.h
+ ________________________________________________________________________
+
+
+ NOTICE: The end of the source file has been reached where the
+ open brace count { 29 != 27 } close brace count
+ This is an indication of non-compilable code within the source
+ file. RSM processes all source code including code wrapped
+ with preprocessor directives. Accurate metrics requires that
+ all code present in this file must be compilable.
+ ~~ Total File Summary ~~
+
+ LOC 503 eLOC 494 lLOC 123 Comment 719 Lines 1236
+ ________________________________________________________________________
+ End of File: ..\include\qs.h
+
+
+ File: ..\include\qs_dummy.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 72 eLOC 72 lLOC 0 Comment 43 Lines 124
+ ________________________________________________________________________
+ End of File: ..\include\qs_dummy.h
+
+
+ File: ..\include\qv.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 25 eLOC 25 lLOC 2 Comment 80 Lines 111
+ ________________________________________________________________________
+ End of File: ..\include\qv.h
+
+
+ File: ..\include\qxk.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 67 eLOC 67 lLOC 25 Comment 139 Lines 221
+ ________________________________________________________________________
+ End of File: ..\include\qxk.h
+
+
+ File: ..\include\qxthread.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 44 eLOC 44 lLOC 26 Comment 206 Lines 269
+ ________________________________________________________________________
+ End of File: ..\include\qxthread.h
+
+
+ File: ..\include\stdint_c.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 33 eLOC 33 lLOC 0 Comment 44 Lines 87
+ ________________________________________________________________________
+ End of File: ..\include\stdint_c.h
+
+
+ File: ..\src\qf_pkg.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 63 eLOC 63 lLOC 8 Comment 120 Lines 206
+ ________________________________________________________________________
+ End of File: ..\src\qf_pkg.h
+
+
+ File: ..\src\qs_pkg.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 25 eLOC 23 lLOC 6 Comment 59 Lines 93
+ ________________________________________________________________________
+ End of File: ..\src\qs_pkg.h
+
+
+ File: ..\src\qxk_pkg.h
+ ________________________________________________________________________
+
+ ~~ Total File Summary ~~
+
+ LOC 19 eLOC 18 lLOC 8 Comment 49 Lines 77
+ ________________________________________________________________________
+ End of File: ..\src\qxk_pkg.h
+
+
+ File: ..\src\qf\qep_hsm.c
+ ________________________________________________________________________
+
+ Function: QHsm_ctor
+ Parameters: (QHsm * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 9 eLOC 7 lLOC 4 Comment 21 Lines 9
+
+ Function: QHsm_init_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 3
+ Conditional if / else if: 1
+ Logical and ( && ) : 2
+ Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
+ LOC 50 eLOC 47 lLOC 31 Comment 35 Lines 70
+
+ Function: QHsm_top
+ Parameters: (void const * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 18 Lines 5
+
+ Function: QHsm_dispatch_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 4
+ Loops for / foreach : 2
+ Conditional if / else if: 5
+ Logical and ( && ) : 1
+ Complexity Param 2 Return 1 Cyclo Vg 13 Total 16
+ LOC 106 eLOC 95 lLOC 62 Comment 67 Lines 147
+
+ Function: QHsm_tran_
+ Parameters: (QHsm * const me, QStateHandler path[QHSM_MAX_NEST_DEPTH_])
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 4
+ Conditional if / else if: 10
+ Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
+ LOC 97 eLOC 76 lLOC 48 Comment 63 Lines 134
+
+ Function: QHsm_isIn
+ Parameters: (QHsm * const me, QStateHandler const state)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 1
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 16 eLOC 13 lLOC 9 Comment 22 Lines 21
+
+ Function: QHsm_childState_
+ Parameters: (QHsm * const me, QStateHandler const parent)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 1
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 19 eLOC 15 lLOC 12 Comment 33 Lines 25
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 346 eLOC 299 lLOC 177 Comment 322 Lines 634
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 7
+ Total Function LOC.....: 302 Total Function Pts LOC : 2.7
+ Total Function eLOC....: 257 Total Function Pts eLOC: 2.3
+ Total Function lLOC....: 169 Total Function Pts lLOC: 1.4
+ Total Function Params .: 14 Total Function Return .: 7
+ Total Cyclo Complexity : 43 Total Function Complex.: 64
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 106 Average Function LOC ..: 43.14
+ Max Function eLOC .....: 95 Average Function eLOC .: 36.71
+ Max Function lLOC .....: 62 Average Function lLOC .: 24.14
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 2.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 3.00
+ Max Cyclomatic Complex.: 15 Avg Cyclomatic Complex.: 6.14
+ Max Total Complexity ..: 18 Avg Total Complexity ..: 9.14
+ ________________________________________________________________________
+ End of File: ..\src\qf\qep_hsm.c
+
+
+ File: ..\src\qf\qep_msm.c
+ ________________________________________________________________________
+
+ Function: QMsm_ctor
+ Parameters: (QMsm * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 9 eLOC 7 lLOC 4 Comment 29 Lines 10
+
+ Function: QMsm_init_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Logical and ( && ) : 2
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 23 eLOC 22 lLOC 13 Comment 26 Lines 37
+
+ Function: QMsm_dispatch_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 2
+ Conditional if / else if: 12
+ Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
+ LOC 124 eLOC 107 lLOC 65 Comment 83 Lines 164
+
+ Function: QMsm_execTatbl_
+ Parameters: (QMsm * const me, QMTranActTable const *tatbl)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 5
+ Inlined if-else ( ? : ) : 1
+ Complexity Param 2 Return 1 Cyclo Vg 8 Total 11
+ LOC 50 eLOC 42 lLOC 20 Comment 32 Lines 60
+
+ Function: QMsm_exitToTranSource_
+ Parameters: (QMsm * const me, QMState const *s, QMState const *ts)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 2
+ Complexity Param 3 Return 1 Cyclo Vg 4 Total 8
+ LOC 17 eLOC 12 lLOC 6 Comment 20 Lines 23
+
+ Function: QMsm_enterHistory_
+ Parameters: (QMsm * const me, QMState const *const hist)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 2
+ Conditional if / else if: 3
+ Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
+ LOC 40 eLOC 33 lLOC 21 Comment 25 Lines 48
+
+ Function: QMsm_isInState
+ Parameters: (QMsm const * const me, QMState const * const state)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 1
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 11 eLOC 8 lLOC 6 Comment 17 Lines 12
+
+ Function: QMsm_childStateObj_
+ Parameters: (QMsm const * const me, QMState const * const parent)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 1
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 19 eLOC 13 lLOC 9 Comment 22 Lines 23
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 321 eLOC 270 lLOC 149 Comment 313 Lines 595
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 8
+ Total Function LOC.....: 293 Total Function Pts LOC : 2.5
+ Total Function eLOC....: 244 Total Function Pts eLOC: 2.1
+ Total Function lLOC....: 144 Total Function Pts lLOC: 1.2
+ Total Function Params .: 17 Total Function Return .: 8
+ Total Cyclo Complexity : 44 Total Function Complex.: 69
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 124 Average Function LOC ..: 36.63
+ Max Function eLOC .....: 107 Average Function eLOC .: 30.50
+ Max Function lLOC .....: 65 Average Function lLOC .: 18.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 2.13
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 3.13
+ Max Cyclomatic Complex.: 15 Avg Cyclomatic Complex.: 5.50
+ Max Total Complexity ..: 18 Avg Total Complexity ..: 8.63
+ ________________________________________________________________________
+ End of File: ..\src\qf\qep_msm.c
+
+
+ File: ..\src\qf\qf_act.c
+ ________________________________________________________________________
+
+ Function: QF_add_
+ Parameters: (QActive * const a)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 2
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 10 eLOC 9 lLOC 5 Comment 20 Lines 17
+
+ Function: QF_remove_
+ Parameters: (QActive * const a)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 2
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 11 eLOC 10 lLOC 6 Comment 21 Lines 18
+
+ Function: QF_bzero
+ Parameters: (void * const start, uint_fast16_t len)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 8 eLOC 6 lLOC 4 Comment 14 Lines 8
+
+ Function: QF_LOG2
+ Parameters: (uint32_t x)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 3
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 25 eLOC 20 lLOC 12 Comment 1 Lines 26
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 71 eLOC 62 lLOC 28 Comment 119 Lines 195
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 4
+ Total Function LOC.....: 54 Total Function Pts LOC : 0.6
+ Total Function eLOC....: 45 Total Function Pts eLOC: 0.5
+ Total Function lLOC....: 27 Total Function Pts lLOC: 0.2
+ Total Function Params .: 5 Total Function Return .: 4
+ Total Cyclo Complexity : 12 Total Function Complex.: 21
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 25 Average Function LOC ..: 13.50
+ Max Function eLOC .....: 20 Average Function eLOC .: 11.25
+ Max Function lLOC .....: 12 Average Function lLOC .: 6.75
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 1.25
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 2.25
+ Max Cyclomatic Complex.: 4 Avg Cyclomatic Complex.: 3.00
+ Max Total Complexity ..: 6 Avg Total Complexity ..: 5.25
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_act.c
+
+
+ File: ..\src\qf\qf_actq.c
+ ________________________________________________________________________
+
+ Function: QActive_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 9
+ Logical or ( || ) : 3
+ Logical and ( && ) : 1
+ Complexity Param 3 Return 1 Cyclo Vg 14 Total 18
+ LOC 85 eLOC 68 lLOC 38 Comment 75 Lines 110
+
+ Function: QActive_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 4
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 41 eLOC 34 lLOC 23 Comment 41 Lines 56
+
+ Function: QActive_get_
+ Parameters: (QActive * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 37 eLOC 33 lLOC 23 Comment 41 Lines 47
+
+ Function: QF_getQueueMin
+ Parameters: (uint_fast8_t const prio)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 10 eLOC 9 lLOC 6 Comment 19 Lines 13
+
+ Function: QTicker_ctor
+ Parameters: (QTicker * const me, uint8_t tickRate)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 6 Lines 14
+
+ Function: QTicker_init_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ Function: QTicker_dispatch_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 12 eLOC 10 lLOC 8 Comment 4 Lines 15
+
+ Function: QTicker_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 24 eLOC 21 lLOC 17 Comment 15 Lines 32
+
+ Function: QTicker_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 267 eLOC 229 lLOC 130 Comment 265 Lines 495
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 9
+ Total Function LOC.....: 231 Total Function Pts LOC : 2.1
+ Total Function eLOC....: 193 Total Function Pts eLOC: 1.8
+ Total Function lLOC....: 125 Total Function Pts lLOC: 1.0
+ Total Function Params .: 18 Total Function Return .: 9
+ Total Cyclo Complexity : 31 Total Function Complex.: 58
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 85 Average Function LOC ..: 25.67
+ Max Function eLOC .....: 68 Average Function eLOC .: 21.44
+ Max Function lLOC .....: 38 Average Function lLOC .: 13.89
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 2.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 3.00
+ Max Cyclomatic Complex.: 14 Avg Cyclomatic Complex.: 3.44
+ Max Total Complexity ..: 18 Avg Total Complexity ..: 6.44
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_actq.c
+
+
+ File: ..\src\qf\qf_defer.c
+ ________________________________________________________________________
+
+ Function: QActive_defer
+ Parameters: (QActive const * const me, QEQueue * const eq, QEvt const *
+ const e)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 13 eLOC 11 lLOC 8 Comment 31 Lines 16
+
+ Function: QActive_recall
+ Parameters: (QActive * const me, QEQueue * const eq)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 32 eLOC 28 lLOC 18 Comment 43 Lines 52
+
+ Function: QActive_flushDeferred
+ Parameters: (QActive const * const me, QEQueue * const eq)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 10 eLOC 7 lLOC 7 Comment 19 Lines 12
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 69 eLOC 60 lLOC 33 Comment 140 Lines 201
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 3
+ Total Function LOC.....: 55 Total Function Pts LOC : 0.5
+ Total Function eLOC....: 46 Total Function Pts eLOC: 0.5
+ Total Function lLOC....: 33 Total Function Pts lLOC: 0.3
+ Total Function Params .: 7 Total Function Return .: 3
+ Total Cyclo Complexity : 6 Total Function Complex.: 16
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 32 Average Function LOC ..: 18.33
+ Max Function eLOC .....: 28 Average Function eLOC .: 15.33
+ Max Function lLOC .....: 18 Average Function lLOC .: 11.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 2.33
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 3.33
+ Max Cyclomatic Complex.: 3 Avg Cyclomatic Complex.: 2.00
+ Max Total Complexity ..: 6 Avg Total Complexity ..: 5.33
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_defer.c
+
+
+ File: ..\src\qf\qf_dyn.c
+ ________________________________________________________________________
+
+ Function: QEvt_ctor
+ Parameters: (QEvt * const me, enum_t const sig)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 6
+
+ Function: QF_poolInit
+ Parameters: (void * const poolSto, uint_fast32_t const poolSize, uint_fa
+ st16_t const evtSize)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical or ( || ) : 1
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 8 eLOC 6 lLOC 4 Comment 38 Lines 12
+
+ Function: QF_newX_
+ Parameters: (uint_fast16_t const evtSize, uint_fast16_t const margin, en
+ um_t const sig)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 2
+ Inlined if-else ( ? : ) : 1
+ Complexity Param 3 Return 1 Cyclo Vg 5 Total 9
+ LOC 29 eLOC 23 lLOC 14 Comment 40 Lines 39
+
+ Function: QF_gc
+ Parameters: (QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 26 eLOC 22 lLOC 13 Comment 36 Lines 40
+
+ Function: QF_newRef_
+ Parameters: (QEvt const * const e, void const * const evtRef)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 1
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 15 eLOC 14 lLOC 8 Comment 21 Lines 23
+
+ Function: QF_deleteRef_
+ Parameters: (void const * const evtRef)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 10 eLOC 9 lLOC 5 Comment 14 Lines 12
+
+ Function: QF_poolGetMaxBlockSize
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 5 Lines 3
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 114 eLOC 98 lLOC 50 Comment 216 Lines 331
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 7
+ Total Function LOC.....: 96 Total Function Pts LOC : 0.9
+ Total Function eLOC....: 80 Total Function Pts eLOC: 0.8
+ Total Function lLOC....: 48 Total Function Pts lLOC: 0.4
+ Total Function Params .: 12 Total Function Return .: 7
+ Total Cyclo Complexity : 15 Total Function Complex.: 34
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 29 Average Function LOC ..: 13.71
+ Max Function eLOC .....: 23 Average Function eLOC .: 11.43
+ Max Function lLOC .....: 14 Average Function lLOC .: 6.86
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 1.71
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 2.71
+ Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 2.14
+ Max Total Complexity ..: 9 Avg Total Complexity ..: 4.86
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_dyn.c
+
+
+ File: ..\src\qf\qf_mem.c
+ ________________________________________________________________________
+
+ Function: QMPool_init
+ Parameters: (QMPool * const me, void * const poolSto, uint_fast32_t pool
+ Size, uint_fast16_t blockSize)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 2
+ Logical and ( && ) : 2
+ Complexity Param 4 Return 1 Cyclo Vg 5 Total 10
+ LOC 31 eLOC 27 lLOC 22 Comment 59 Lines 46
+
+ Function: QMPool_put
+ Parameters: (QMPool * const me, void *b)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 1
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 15 eLOC 14 lLOC 9 Comment 31 Lines 22
+
+ Function: QMPool_get
+ Parameters: (QMPool * const me, uint_fast16_t const margin)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 3
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 42 eLOC 36 lLOC 23 Comment 56 Lines 65
+
+ Function: QF_getPoolMin
+ Parameters: (uint_fast8_t const poolId)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 10 eLOC 9 lLOC 6 Comment 14 Lines 14
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 110 eLOC 98 lLOC 60 Comment 207 Lines 304
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 4
+ Total Function LOC.....: 98 Total Function Pts LOC : 0.9
+ Total Function eLOC....: 86 Total Function Pts eLOC: 0.8
+ Total Function lLOC....: 60 Total Function Pts lLOC: 0.5
+ Total Function Params .: 9 Total Function Return .: 4
+ Total Cyclo Complexity : 13 Total Function Complex.: 26
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 42 Average Function LOC ..: 24.50
+ Max Function eLOC .....: 36 Average Function eLOC .: 21.50
+ Max Function lLOC .....: 23 Average Function lLOC .: 15.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 4 Avg Function Parameters: 2.25
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 5 Avg Interface Complex. : 3.25
+ Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 3.25
+ Max Total Complexity ..: 10 Avg Total Complexity ..: 6.50
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_mem.c
+
+
+ File: ..\src\qf\qf_ps.c
+ ________________________________________________________________________
+
+ Function: QF_psInit
+ Parameters: (QSubscrList * const subscrSto, enum_t const maxSignal)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 7 eLOC 6 lLOC 3 Comment 33 Lines 12
+
+ Function: QF_publish_
+ Parameters: (QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 3
+ Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
+ LOC 36 eLOC 30 lLOC 21 Comment 50 Lines 63
+
+ Function: QActive_subscribe
+ Parameters: (QActive const * const me, enum_t const sig)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 4
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 16 eLOC 15 lLOC 8 Comment 23 Lines 22
+
+ Function: QActive_unsubscribe
+ Parameters: (QActive const * const me, enum_t const sig)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 4
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 16 eLOC 15 lLOC 8 Comment 32 Lines 25
+
+ Function: QActive_unsubscribeAll
+ Parameters: (QActive const * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 2
+ Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
+ LOC 23 eLOC 19 lLOC 10 Comment 26 Lines 26
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 115 eLOC 102 lLOC 52 Comment 212 Lines 330
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 5
+ Total Function LOC.....: 98 Total Function Pts LOC : 0.9
+ Total Function eLOC....: 85 Total Function Pts eLOC: 0.8
+ Total Function lLOC....: 50 Total Function Pts lLOC: 0.4
+ Total Function Params .: 8 Total Function Return .: 5
+ Total Cyclo Complexity : 21 Total Function Complex.: 34
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 36 Average Function LOC ..: 19.60
+ Max Function eLOC .....: 30 Average Function eLOC .: 17.00
+ Max Function lLOC .....: 21 Average Function lLOC .: 10.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 1.60
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 2.60
+ Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 4.20
+ Max Total Complexity ..: 8 Avg Total Complexity ..: 6.80
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_ps.c
+
+
+ File: ..\src\qf\qf_qact.c
+ ________________________________________________________________________
+
+ Function: QActive_ctor
+ Parameters: (QActive * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 19 Lines 17
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 14 eLOC 12 lLOC 4 Comment 69 Lines 82
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 1
+ Total Function LOC.....: 12 Total Function Pts LOC : 0.1
+ Total Function eLOC....: 10 Total Function Pts eLOC: 0.1
+ Total Function lLOC....: 4 Total Function Pts lLOC: 0.0
+ Total Function Params .: 2 Total Function Return .: 1
+ Total Cyclo Complexity : 1 Total Function Complex.: 4
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 12 Average Function LOC ..: 12.00
+ Max Function eLOC .....: 10 Average Function eLOC .: 10.00
+ Max Function lLOC .....: 4 Average Function lLOC .: 4.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 2.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 3.00
+ Max Cyclomatic Complex.: 1 Avg Cyclomatic Complex.: 1.00
+ Max Total Complexity ..: 4 Avg Total Complexity ..: 4.00
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_qact.c
+
+
+ File: ..\src\qf\qf_qeq.c
+ ________________________________________________________________________
+
+ Function: QEQueue_init
+ Parameters: (QEQueue * const me, QEvt const *qSto[], uint_fast16_t const
+ qLen)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 11 eLOC 8 lLOC 7 Comment 21 Lines 11
+
+ Function: QEQueue_post
+ Parameters: (QEQueue * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 5
+ Logical or ( || ) : 1
+ Logical and ( && ) : 1
+ Complexity Param 3 Return 1 Cyclo Vg 8 Total 12
+ LOC 55 eLOC 45 lLOC 30 Comment 56 Lines 74
+
+ Function: QEQueue_postLIFO
+ Parameters: (QEQueue * const me, QEvt const * const e)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 4
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 34 eLOC 29 lLOC 21 Comment 44 Lines 44
+
+ Function: QEQueue_get
+ Parameters: (QEQueue * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 3
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 37 eLOC 32 lLOC 21 Comment 38 Lines 47
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 151 eLOC 128 lLOC 79 Comment 210 Lines 325
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 4
+ Total Function LOC.....: 137 Total Function Pts LOC : 1.2
+ Total Function eLOC....: 114 Total Function Pts eLOC: 1.0
+ Total Function lLOC....: 79 Total Function Pts lLOC: 0.6
+ Total Function Params .: 9 Total Function Return .: 4
+ Total Cyclo Complexity : 19 Total Function Complex.: 32
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 55 Average Function LOC ..: 34.25
+ Max Function eLOC .....: 45 Average Function eLOC .: 28.50
+ Max Function lLOC .....: 30 Average Function lLOC .: 19.75
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 2.25
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 3.25
+ Max Cyclomatic Complex.: 8 Avg Cyclomatic Complex.: 4.75
+ Max Total Complexity ..: 12 Avg Total Complexity ..: 8.00
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_qeq.c
+
+
+ File: ..\src\qf\qf_qmact.c
+ ________________________________________________________________________
+
+ Function: QMActive_ctor
+ Parameters: (QMActive * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 28 Lines 28
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 15 eLOC 13 lLOC 4 Comment 79 Lines 95
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 1
+ Total Function LOC.....: 12 Total Function Pts LOC : 0.1
+ Total Function eLOC....: 10 Total Function Pts eLOC: 0.1
+ Total Function lLOC....: 4 Total Function Pts lLOC: 0.0
+ Total Function Params .: 2 Total Function Return .: 1
+ Total Cyclo Complexity : 1 Total Function Complex.: 4
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 12 Average Function LOC ..: 12.00
+ Max Function eLOC .....: 10 Average Function eLOC .: 10.00
+ Max Function lLOC .....: 4 Average Function lLOC .: 4.00
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 2.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 3.00
+ Max Cyclomatic Complex.: 1 Avg Cyclomatic Complex.: 1.00
+ Max Total Complexity ..: 4 Avg Total Complexity ..: 4.00
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_qmact.c
+
+
+ File: ..\src\qf\qf_time.c
+ ________________________________________________________________________
+
+ Function: QF_tickX_
+ Parameters: (uint_fast8_t const tickRate)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 5
+ Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
+ LOC 66 eLOC 54 lLOC 36 Comment 56 Lines 94
+
+ Function: QF_noTimeEvtsActiveX
+ Parameters: (uint_fast8_t const tickRate)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 14 eLOC 10 lLOC 6 Comment 15 Lines 17
+
+ Function: QTimeEvt_ctorX
+ Parameters: (QTimeEvt * const me, QActive * const act, enum_t const sig,
+ uint_fast8_t tickRate)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 1
+ Complexity Param 4 Return 1 Cyclo Vg 2 Total 7
+ LOC 11 eLOC 9 lLOC 8 Comment 32 Lines 31
+
+ Function: QTimeEvt_armX
+ Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks, QTimeEvtCtr
+ const interval)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 4
+ Complexity Param 3 Return 1 Cyclo Vg 6 Total 10
+ LOC 28 eLOC 25 lLOC 16 Comment 51 Lines 50
+
+ Function: QTimeEvt_disarm
+ Parameters: (QTimeEvt * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 29 eLOC 26 lLOC 17 Comment 32 Lines 37
+
+ Function: QTimeEvt_rearm
+ Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Inlined if-else ( ? : ) : 1
+ Logical and ( && ) : 3
+ Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
+ LOC 34 eLOC 30 lLOC 18 Comment 47 Lines 60
+
+ Function: QTimeEvt_ctr
+ Parameters: (QTimeEvt const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 8 eLOC 7 lLOC 5 Comment 16 Lines 10
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 210 eLOC 181 lLOC 107 Comment 309 Lines 517
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 7
+ Total Function LOC.....: 190 Total Function Pts LOC : 1.6
+ Total Function eLOC....: 161 Total Function Pts eLOC: 1.4
+ Total Function lLOC....: 106 Total Function Pts lLOC: 0.8
+ Total Function Params .: 13 Total Function Return .: 7
+ Total Cyclo Complexity : 28 Total Function Complex.: 48
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 66 Average Function LOC ..: 27.14
+ Max Function eLOC .....: 54 Average Function eLOC .: 23.00
+ Max Function lLOC .....: 36 Average Function lLOC .: 15.14
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 4 Avg Function Parameters: 1.86
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 5 Avg Interface Complex. : 2.86
+ Max Cyclomatic Complex.: 7 Avg Cyclomatic Complex.: 4.00
+ Max Total Complexity ..: 10 Avg Total Complexity ..: 6.86
+ ________________________________________________________________________
+ End of File: ..\src\qf\qf_time.c
+
+
+ File: ..\src\qv\qv.c
+ ________________________________________________________________________
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 11 eLOC 10 lLOC 7 Comment 12 Lines 13
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: QF_run
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Conditional if / else if: 3
+ Complexity Param 0 Return 1 Cyclo Vg 5 Total 6
+ LOC 48 eLOC 42 lLOC 24 Comment 37 Lines 75
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 2
+ Complexity Param 7 Return 1 Cyclo Vg 3 Total 11
+ LOC 11 eLOC 9 lLOC 7 Comment 31 Lines 17
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 7 eLOC 6 lLOC 4 Comment 13 Lines 10
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 98 eLOC 87 lLOC 44 Comment 159 Lines 252
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 5
+ Total Function LOC.....: 80 Total Function Pts LOC : 0.8
+ Total Function eLOC....: 69 Total Function Pts eLOC: 0.7
+ Total Function lLOC....: 43 Total Function Pts lLOC: 0.3
+ Total Function Params .: 8 Total Function Return .: 5
+ Total Cyclo Complexity : 11 Total Function Complex.: 24
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 48 Average Function LOC ..: 16.00
+ Max Function eLOC .....: 42 Average Function eLOC .: 13.80
+ Max Function lLOC .....: 24 Average Function lLOC .: 8.60
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 7 Avg Function Parameters: 1.60
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 8 Avg Interface Complex. : 2.60
+ Max Cyclomatic Complex.: 5 Avg Cyclomatic Complex.: 2.20
+ Max Total Complexity ..: 11 Avg Total Complexity ..: 4.80
+ ________________________________________________________________________
+ End of File: ..\src\qv\qv.c
+
+
+ File: ..\src\qk\qk.c
+ ________________________________________________________________________
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 13 eLOC 12 lLOC 9 Comment 14 Lines 16
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: initial_events
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
+
+ Function: QF_run
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 12 eLOC 10 lLOC 7 Comment 13 Lines 14
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 3
+ Complexity Param 7 Return 1 Cyclo Vg 5 Total 13
+ LOC 18 eLOC 15 lLOC 10 Comment 34 Lines 29
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
+
+ Function: QK_schedLock
+ Parameters: (uint_fast8_t ceiling)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 22 eLOC 19 lLOC 12 Comment 32 Lines 33
+
+ Function: QK_schedUnlock
+ Parameters: (QSchedStatus stat)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Logical and ( && ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 18 lLOC 10 Comment 28 Lines 33
+
+ Function: QK_sched_
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 0 Return 1 Cyclo Vg 3 Total 4
+ LOC 15 eLOC 11 lLOC 7 Comment 21 Lines 19
+
+ Function: QK_activate_
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 5
+ Inlined if-else ( ? : ) : 1
+ Logical or ( || ) : 3
+ Complexity Param 0 Return 1 Cyclo Vg 11 Total 12
+ LOC 69 eLOC 61 lLOC 32 Comment 53 Lines 101
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 209 eLOC 180 lLOC 98 Comment 279 Lines 475
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 10
+ Total Function LOC.....: 190 Total Function Pts LOC : 1.6
+ Total Function eLOC....: 161 Total Function Pts eLOC: 1.4
+ Total Function lLOC....: 96 Total Function Pts lLOC: 0.8
+ Total Function Params .: 10 Total Function Return .: 10
+ Total Cyclo Complexity : 33 Total Function Complex.: 53
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 69 Average Function LOC ..: 19.00
+ Max Function eLOC .....: 61 Average Function eLOC .: 16.10
+ Max Function lLOC .....: 32 Average Function lLOC .: 9.60
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 7 Avg Function Parameters: 1.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 8 Avg Interface Complex. : 2.00
+ Max Cyclomatic Complex.: 11 Avg Cyclomatic Complex.: 3.30
+ Max Total Complexity ..: 13 Avg Total Complexity ..: 5.30
+ ________________________________________________________________________
+ End of File: ..\src\qk\qk.c
+
+
+ File: ..\src\qxk\qxk.c
+ ________________________________________________________________________
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 17 eLOC 16 lLOC 13 Comment 17 Lines 23
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: initial_events
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
+
+ Function: QF_run
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops for / foreach : 1
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 12 eLOC 10 lLOC 7 Comment 12 Lines 15
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 4
+ Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
+ LOC 20 eLOC 17 lLOC 11 Comment 38 Lines 31
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
+
+ Function: QXK_schedLock
+ Parameters: (uint_fast8_t ceiling)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Inlined if-else ( ? : ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 25 eLOC 22 lLOC 12 Comment 40 Lines 35
+
+ Function: QXK_schedUnlock
+ Parameters: (QSchedStatus stat)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Logical and ( && ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 18 lLOC 10 Comment 33 Lines 33
+
+ Function: QXK_sched_
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 5
+ Logical or ( || ) : 1
+ Complexity Param 0 Return 1 Cyclo Vg 7 Total 8
+ LOC 52 eLOC 42 lLOC 23 Comment 36 Lines 68
+
+ Function: QXK_activate_
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Loops while / do : 1
+ Conditional if / else if: 6
+ Inlined if-else ( ? : ) : 1
+ Logical or ( || ) : 4
+ Complexity Param 0 Return 1 Cyclo Vg 13 Total 14
+ LOC 88 eLOC 78 lLOC 42 Comment 64 Lines 130
+
+ Function: QXK_current
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 13 eLOC 11 lLOC 8 Comment 4 Lines 20
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 288 eLOC 249 lLOC 138 Comment 329 Lines 602
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 11
+ Total Function LOC.....: 268 Total Function Pts LOC : 2.3
+ Total Function eLOC....: 229 Total Function Pts eLOC: 1.9
+ Total Function lLOC....: 135 Total Function Pts lLOC: 1.1
+ Total Function Params .: 10 Total Function Return .: 11
+ Total Cyclo Complexity : 43 Total Function Complex.: 64
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 88 Average Function LOC ..: 24.36
+ Max Function eLOC .....: 78 Average Function eLOC .: 20.82
+ Max Function lLOC .....: 42 Average Function lLOC .: 12.27
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 7 Avg Function Parameters: 0.91
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 8 Avg Interface Complex. : 1.91
+ Max Cyclomatic Complex.: 13 Avg Cyclomatic Complex.: 3.91
+ Max Total Complexity ..: 14 Avg Total Complexity ..: 5.82
+ ________________________________________________________________________
+ End of File: ..\src\qxk\qxk.c
+
+
+ File: ..\src\qxk\qxk_mutex.c
+ ________________________________________________________________________
+
+ Function: QXMutex_init
+ Parameters: (QXMutex * const me, uint_fast8_t ceiling)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical or ( || ) : 1
+ Logical and ( && ) : 1
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 16 eLOC 14 lLOC 8 Comment 33 Lines 25
+
+ Function: QXMutex_lock
+ Parameters: (QXMutex * const me, uint_fast16_t const nTicks)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 4
+ Logical or ( || ) : 1
+ Logical and ( && ) : 4
+ Complexity Param 2 Return 1 Cyclo Vg 10 Total 13
+ LOC 52 eLOC 45 lLOC 29 Comment 53 Lines 89
+
+ Function: QXMutex_tryLock
+ Parameters: (QXMutex * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 5
+ Logical or ( || ) : 1
+ Logical and ( && ) : 5
+ Complexity Param 1 Return 1 Cyclo Vg 12 Total 14
+ LOC 44 eLOC 37 lLOC 20 Comment 46 Lines 69
+
+ Function: QXMutex_unlock
+ Parameters: (QXMutex * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 7
+ Logical or ( || ) : 2
+ Logical and ( && ) : 8
+ Complexity Param 1 Return 1 Cyclo Vg 18 Total 20
+ LOC 67 eLOC 57 lLOC 29 Comment 66 Lines 114
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 194 eLOC 168 lLOC 86 Comment 248 Lines 449
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 4
+ Total Function LOC.....: 179 Total Function Pts LOC : 1.5
+ Total Function eLOC....: 153 Total Function Pts eLOC: 1.3
+ Total Function lLOC....: 86 Total Function Pts lLOC: 0.7
+ Total Function Params .: 6 Total Function Return .: 4
+ Total Cyclo Complexity : 44 Total Function Complex.: 54
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 67 Average Function LOC ..: 44.75
+ Max Function eLOC .....: 57 Average Function eLOC .: 38.25
+ Max Function lLOC .....: 29 Average Function lLOC .: 21.50
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 2 Avg Function Parameters: 1.50
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 3 Avg Interface Complex. : 2.50
+ Max Cyclomatic Complex.: 18 Avg Cyclomatic Complex.: 11.00
+ Max Total Complexity ..: 20 Avg Total Complexity ..: 13.50
+ ________________________________________________________________________
+ End of File: ..\src\qxk\qxk_mutex.c
+
+
+ File: ..\src\qxk\qxk_sema.c
+ ________________________________________________________________________
+
+ Function: QXSemaphore_init
+ Parameters: (QXSemaphore * const me, uint_fast16_t count, uint_fast16_t
+ max_count)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 6 eLOC 4 lLOC 4 Comment 22 Lines 7
+
+ Function: QXSemaphore_wait
+ Parameters: (QXSemaphore * const me, uint_fast16_t const nTicks)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 4
+ Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
+ LOC 29 eLOC 26 lLOC 18 Comment 44 Lines 44
+
+ Function: QXSemaphore_tryWait
+ Parameters: (QXSemaphore * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 15 eLOC 12 lLOC 8 Comment 18 Lines 20
+
+ Function: QXSemaphore_signal
+ Parameters: (QXSemaphore * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 3
+ Logical and ( && ) : 3
+ Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
+ LOC 32 eLOC 26 lLOC 16 Comment 35 Lines 48
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 97 eLOC 83 lLOC 46 Comment 168 Lines 262
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 4
+ Total Function LOC.....: 82 Total Function Pts LOC : 0.8
+ Total Function eLOC....: 68 Total Function Pts eLOC: 0.6
+ Total Function lLOC....: 46 Total Function Pts lLOC: 0.4
+ Total Function Params .: 7 Total Function Return .: 4
+ Total Cyclo Complexity : 16 Total Function Complex.: 27
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 32 Average Function LOC ..: 20.50
+ Max Function eLOC .....: 26 Average Function eLOC .: 17.00
+ Max Function lLOC .....: 18 Average Function lLOC .: 11.50
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 3 Avg Function Parameters: 1.75
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 4 Avg Interface Complex. : 2.75
+ Max Cyclomatic Complex.: 7 Avg Cyclomatic Complex.: 4.00
+ Max Total Complexity ..: 9 Avg Total Complexity ..: 6.75
+ ________________________________________________________________________
+ End of File: ..\src\qxk\qxk_sema.c
+
+
+ File: ..\src\qxk\qxk_xthr.c
+ ________________________________________________________________________
+
+ Function: QXThread_ctor
+ Parameters: (QXThread * const me, QXThreadHandler handler, uint_fast8_t
+ tickRate)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 13 eLOC 10 lLOC 5 Comment 27 Lines 16
+
+ Function: QXThread_init_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 2 Lines 5
+
+ Function: QXThread_dispatch_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ Function: QXThread_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 4
+ Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
+ LOC 21 eLOC 18 lLOC 12 Comment 42 Lines 43
+
+ Function: QXThread_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 9
+ Logical or ( || ) : 1
+ Logical and ( && ) : 1
+ Complexity Param 3 Return 1 Cyclo Vg 12 Total 16
+ LOC 80 eLOC 65 lLOC 45 Comment 83 Lines 115
+
+ Function: QXThread_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 11 Lines 5
+
+ Function: QXThread_queueGet
+ Parameters: (uint_fast16_t const nTicks)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 4
+ Logical and ( && ) : 3
+ Complexity Param 1 Return 1 Cyclo Vg 8 Total 10
+ LOC 61 eLOC 54 lLOC 35 Comment 55 Lines 87
+
+ Function: QXThread_block_
+ Parameters: (QXThread const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 7
+
+ Function: QXThread_unblock_
+ Parameters: (QXThread const * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Logical and ( && ) : 1
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 8 eLOC 5 lLOC 2 Comment 10 Lines 8
+
+ Function: QXThread_teArm_
+ Parameters: (QXThread * const me, QSignal sig, uint_fast16_t const nTick
+ s)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 2
+ Complexity Param 3 Return 1 Cyclo Vg 3 Total 7
+ LOC 14 eLOC 10 lLOC 8 Comment 23 Lines 31
+
+ Function: QXThread_teDisarm_
+ Parameters: (QXThread * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 8 lLOC 5 Comment 11 Lines 13
+
+ Function: QXThread_delay
+ Parameters: (uint_fast16_t const nTicks)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 3
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 20 lLOC 14 Comment 19 Lines 37
+
+ Function: QXThread_delayCancel
+ Parameters: (QXThread * const me)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Conditional if / else if: 1
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 14 eLOC 11 lLOC 7 Comment 2 Lines 16
+
+ Function: QXK_threadRet_
+ Parameters: (void)
+ Cyclomatic Complexity Vg Detail
+ Function Base : 1
+ Logical and ( && ) : 3
+ Complexity Param 0 Return 1 Cyclo Vg 4 Total 5
+ LOC 16 eLOC 15 lLOC 10 Comment 22 Lines 27
+
+ ------------------------------------------------------------------------
+
+ ~~ Total File Summary ~~
+
+ LOC 322 eLOC 275 lLOC 161 Comment 367 Lines 682
+ ------------------------------------------------------------------------
+
+ ~~ File Functional Summary ~~
+
+ File Function Count....: 14
+ Total Function LOC.....: 279 Total Function Pts LOC : 2.5
+ Total Function eLOC....: 232 Total Function Pts eLOC: 2.1
+ Total Function lLOC....: 155 Total Function Pts lLOC: 1.3
+ Total Function Params .: 28 Total Function Return .: 14
+ Total Cyclo Complexity : 49 Total Function Complex.: 91
+ ------ ----- ----- ------ ------ -----
+ Max Function LOC ......: 80 Average Function LOC ..: 19.93
+ Max Function eLOC .....: 65 Average Function eLOC .: 16.57
+ Max Function lLOC .....: 45 Average Function lLOC .: 11.07
+ ------ ----- ----- ------ ------ -----
+ Max Function Parameters: 7 Avg Function Parameters: 2.00
+ Max Function Returns ..: 1 Avg Function Returns ..: 1.00
+ Max Interface Complex. : 8 Avg Interface Complex. : 3.00
+ Max Cyclomatic Complex.: 12 Avg Cyclomatic Complex.: 3.50
+ Max Total Complexity ..: 16 Avg Total Complexity ..: 6.50
+ ________________________________________________________________________
+ End of File: ..\src\qxk\qxk_xthr.c
+
+
+ ------------------------------------------------------------------------
+
+ ~~ Project Analysis For 35 Files ~~
+
+ ------------------------------------------------------------------------
+
+ ~~ Total Project Summary ~~
+
+ LOC 4567 eLOC 4127 lLOC 1869 Comment 7310 Lines 12091
+ Average per File, metric/35 files
+ LOC 130 eLOC 117 lLOC 53 Comment 208 Lines 345
+
+ ------------------------------------------------------------------------
+
+ ~~ Project Functional Metrics ~~
+
+ Function: QF_LOG2
+ Parameters: (uint32_t x)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 25 eLOC 20 lLOC 12 Comment 7 Lines 26
+
+ Function: QHsm_ctor
+ Parameters: (QHsm * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 9 eLOC 7 lLOC 4 Comment 21 Lines 9
+
+ Function: QHsm_init_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
+ LOC 50 eLOC 47 lLOC 31 Comment 35 Lines 70
+
+ Function: QHsm_top
+ Parameters: (void const * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 18 Lines 5
+
+ Function: QHsm_dispatch_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 13 Total 16
+ LOC 106 eLOC 95 lLOC 62 Comment 67 Lines 147
+
+ Function: QHsm_tran_
+ Parameters: (QHsm * const me, QStateHandler path[QHSM_MAX_NEST_DEPTH_])
+ Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
+ LOC 97 eLOC 76 lLOC 48 Comment 63 Lines 134
+
+ Function: QHsm_isIn
+ Parameters: (QHsm * const me, QStateHandler const state)
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 16 eLOC 13 lLOC 9 Comment 22 Lines 21
+
+ Function: QHsm_childState_
+ Parameters: (QHsm * const me, QStateHandler const parent)
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 19 eLOC 15 lLOC 12 Comment 33 Lines 25
+
+ Function: QMsm_ctor
+ Parameters: (QMsm * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 9 eLOC 7 lLOC 4 Comment 29 Lines 10
+
+ Function: QMsm_init_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 23 eLOC 22 lLOC 13 Comment 26 Lines 37
+
+ Function: QMsm_dispatch_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 15 Total 18
+ LOC 124 eLOC 107 lLOC 65 Comment 83 Lines 164
+
+ Function: QMsm_execTatbl_
+ Parameters: (QMsm * const me, QMTranActTable const *tatbl)
+ Complexity Param 2 Return 1 Cyclo Vg 8 Total 11
+ LOC 50 eLOC 42 lLOC 20 Comment 32 Lines 60
+
+ Function: QMsm_exitToTranSource_
+ Parameters: (QMsm * const me, QMState const *s, QMState const *ts)
+ Complexity Param 3 Return 1 Cyclo Vg 4 Total 8
+ LOC 17 eLOC 12 lLOC 6 Comment 20 Lines 23
+
+ Function: QMsm_enterHistory_
+ Parameters: (QMsm * const me, QMState const *const hist)
+ Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
+ LOC 40 eLOC 33 lLOC 21 Comment 25 Lines 48
+
+ Function: QMsm_isInState
+ Parameters: (QMsm const * const me, QMState const * const state)
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 11 eLOC 8 lLOC 6 Comment 17 Lines 12
+
+ Function: QMsm_childStateObj_
+ Parameters: (QMsm const * const me, QMState const * const parent)
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 19 eLOC 13 lLOC 9 Comment 22 Lines 23
+
+ Function: QF_add_
+ Parameters: (QActive * const a)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 10 eLOC 9 lLOC 5 Comment 20 Lines 17
+
+ Function: QF_remove_
+ Parameters: (QActive * const a)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 11 eLOC 10 lLOC 6 Comment 21 Lines 18
+
+ Function: QF_bzero
+ Parameters: (void * const start, uint_fast16_t len)
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 8 eLOC 6 lLOC 4 Comment 14 Lines 8
+
+ Function: QF_LOG2
+ Parameters: (uint32_t x)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 25 eLOC 20 lLOC 12 Comment 1 Lines 26
+
+ Function: QActive_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Complexity Param 3 Return 1 Cyclo Vg 14 Total 18
+ LOC 85 eLOC 68 lLOC 38 Comment 75 Lines 110
+
+ Function: QActive_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 41 eLOC 34 lLOC 23 Comment 41 Lines 56
+
+ Function: QActive_get_
+ Parameters: (QActive * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 37 eLOC 33 lLOC 23 Comment 41 Lines 47
+
+ Function: QF_getQueueMin
+ Parameters: (uint_fast8_t const prio)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 10 eLOC 9 lLOC 6 Comment 19 Lines 13
+
+ Function: QTicker_ctor
+ Parameters: (QTicker * const me, uint8_t tickRate)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 6 Lines 14
+
+ Function: QTicker_init_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ Function: QTicker_dispatch_
+ Parameters: (QHsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 12 eLOC 10 lLOC 8 Comment 4 Lines 15
+
+ Function: QTicker_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 24 eLOC 21 lLOC 17 Comment 15 Lines 32
+
+ Function: QTicker_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ Function: QActive_defer
+ Parameters: (QActive const * const me, QEQueue * const eq, QEvt const *
+ const e)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 13 eLOC 11 lLOC 8 Comment 31 Lines 16
+
+ Function: QActive_recall
+ Parameters: (QActive * const me, QEQueue * const eq)
+ Complexity Param 2 Return 1 Cyclo Vg 3 Total 6
+ LOC 32 eLOC 28 lLOC 18 Comment 43 Lines 52
+
+ Function: QActive_flushDeferred
+ Parameters: (QActive const * const me, QEQueue * const eq)
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 10 eLOC 7 lLOC 7 Comment 19 Lines 12
+
+ Function: QEvt_ctor
+ Parameters: (QEvt * const me, enum_t const sig)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 6
+
+ Function: QF_poolInit
+ Parameters: (void * const poolSto, uint_fast32_t const poolSize, uint_fa
+ st16_t const evtSize)
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 8 eLOC 6 lLOC 4 Comment 38 Lines 12
+
+ Function: QF_newX_
+ Parameters: (uint_fast16_t const evtSize, uint_fast16_t const margin, en
+ um_t const sig)
+ Complexity Param 3 Return 1 Cyclo Vg 5 Total 9
+ LOC 29 eLOC 23 lLOC 14 Comment 40 Lines 39
+
+ Function: QF_gc
+ Parameters: (QEvt const * const e)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 26 eLOC 22 lLOC 13 Comment 36 Lines 40
+
+ Function: QF_newRef_
+ Parameters: (QEvt const * const e, void const * const evtRef)
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 15 eLOC 14 lLOC 8 Comment 21 Lines 23
+
+ Function: QF_deleteRef_
+ Parameters: (void const * const evtRef)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 10 eLOC 9 lLOC 5 Comment 14 Lines 12
+
+ Function: QF_poolGetMaxBlockSize
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 5 Lines 3
+
+ Function: QMPool_init
+ Parameters: (QMPool * const me, void * const poolSto, uint_fast32_t pool
+ Size, uint_fast16_t blockSize)
+ Complexity Param 4 Return 1 Cyclo Vg 5 Total 10
+ LOC 31 eLOC 27 lLOC 22 Comment 59 Lines 46
+
+ Function: QMPool_put
+ Parameters: (QMPool * const me, void *b)
+ Complexity Param 2 Return 1 Cyclo Vg 2 Total 5
+ LOC 15 eLOC 14 lLOC 9 Comment 31 Lines 22
+
+ Function: QMPool_get
+ Parameters: (QMPool * const me, uint_fast16_t const margin)
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 42 eLOC 36 lLOC 23 Comment 56 Lines 65
+
+ Function: QF_getPoolMin
+ Parameters: (uint_fast8_t const poolId)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 10 eLOC 9 lLOC 6 Comment 14 Lines 14
+
+ Function: QF_psInit
+ Parameters: (QSubscrList * const subscrSto, enum_t const maxSignal)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 7 eLOC 6 lLOC 3 Comment 33 Lines 12
+
+ Function: QF_publish_
+ Parameters: (QEvt const * const e)
+ Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
+ LOC 36 eLOC 30 lLOC 21 Comment 50 Lines 63
+
+ Function: QActive_subscribe
+ Parameters: (QActive const * const me, enum_t const sig)
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 16 eLOC 15 lLOC 8 Comment 23 Lines 22
+
+ Function: QActive_unsubscribe
+ Parameters: (QActive const * const me, enum_t const sig)
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 16 eLOC 15 lLOC 8 Comment 32 Lines 25
+
+ Function: QActive_unsubscribeAll
+ Parameters: (QActive const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 5 Total 7
+ LOC 23 eLOC 19 lLOC 10 Comment 26 Lines 26
+
+ Function: QActive_ctor
+ Parameters: (QActive * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 19 Lines 17
+
+ Function: QEQueue_init
+ Parameters: (QEQueue * const me, QEvt const *qSto[], uint_fast16_t const
+ qLen)
+ Complexity Param 3 Return 1 Cyclo Vg 2 Total 6
+ LOC 11 eLOC 8 lLOC 7 Comment 21 Lines 11
+
+ Function: QEQueue_post
+ Parameters: (QEQueue * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Complexity Param 3 Return 1 Cyclo Vg 8 Total 12
+ LOC 55 eLOC 45 lLOC 30 Comment 56 Lines 74
+
+ Function: QEQueue_postLIFO
+ Parameters: (QEQueue * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 5 Total 8
+ LOC 34 eLOC 29 lLOC 21 Comment 44 Lines 44
+
+ Function: QEQueue_get
+ Parameters: (QEQueue * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 37 eLOC 32 lLOC 21 Comment 38 Lines 47
+
+ Function: QMActive_ctor
+ Parameters: (QMActive * const me, QStateHandler initial)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 12 eLOC 10 lLOC 4 Comment 28 Lines 28
+
+ Function: QF_tickX_
+ Parameters: (uint_fast8_t const tickRate)
+ Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
+ LOC 66 eLOC 54 lLOC 36 Comment 56 Lines 94
+
+ Function: QF_noTimeEvtsActiveX
+ Parameters: (uint_fast8_t const tickRate)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 14 eLOC 10 lLOC 6 Comment 15 Lines 17
+
+ Function: QTimeEvt_ctorX
+ Parameters: (QTimeEvt * const me, QActive * const act, enum_t const sig,
+ uint_fast8_t tickRate)
+ Complexity Param 4 Return 1 Cyclo Vg 2 Total 7
+ LOC 11 eLOC 9 lLOC 8 Comment 32 Lines 31
+
+ Function: QTimeEvt_armX
+ Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks, QTimeEvtCtr
+ const interval)
+ Complexity Param 3 Return 1 Cyclo Vg 6 Total 10
+ LOC 28 eLOC 25 lLOC 16 Comment 51 Lines 50
+
+ Function: QTimeEvt_disarm
+ Parameters: (QTimeEvt * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 29 eLOC 26 lLOC 17 Comment 32 Lines 37
+
+ Function: QTimeEvt_rearm
+ Parameters: (QTimeEvt * const me, QTimeEvtCtr const nTicks)
+ Complexity Param 2 Return 1 Cyclo Vg 7 Total 10
+ LOC 34 eLOC 30 lLOC 18 Comment 47 Lines 60
+
+ Function: QTimeEvt_ctr
+ Parameters: (QTimeEvt const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 8 eLOC 7 lLOC 5 Comment 16 Lines 10
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 11 eLOC 10 lLOC 7 Comment 12 Lines 13
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: QF_run
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 5 Total 6
+ LOC 48 eLOC 42 lLOC 24 Comment 37 Lines 75
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Complexity Param 7 Return 1 Cyclo Vg 3 Total 11
+ LOC 11 eLOC 9 lLOC 7 Comment 31 Lines 17
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 7 eLOC 6 lLOC 4 Comment 13 Lines 10
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 13 eLOC 12 lLOC 9 Comment 14 Lines 16
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: initial_events
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
+
+ Function: QF_run
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 12 eLOC 10 lLOC 7 Comment 13 Lines 14
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Complexity Param 7 Return 1 Cyclo Vg 5 Total 13
+ LOC 18 eLOC 15 lLOC 10 Comment 34 Lines 29
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
+
+ Function: QK_schedLock
+ Parameters: (uint_fast8_t ceiling)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 22 eLOC 19 lLOC 12 Comment 32 Lines 33
+
+ Function: QK_schedUnlock
+ Parameters: (QSchedStatus stat)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 18 lLOC 10 Comment 28 Lines 33
+
+ Function: QK_sched_
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 3 Total 4
+ LOC 15 eLOC 11 lLOC 7 Comment 21 Lines 19
+
+ Function: QK_activate_
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 11 Total 12
+ LOC 69 eLOC 61 lLOC 32 Comment 53 Lines 101
+
+ Function: QF_init
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 17 eLOC 16 lLOC 13 Comment 17 Lines 23
+
+ Function: QF_stop
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 1 Total 2
+ LOC 3 eLOC 2 lLOC 1 Comment 14 Lines 4
+
+ Function: initial_events
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 6 eLOC 4 lLOC 2 Comment 6 Lines 8
+
+ Function: QF_run
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 12 eLOC 10 lLOC 7 Comment 12 Lines 15
+
+ Function: QActive_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
+ LOC 20 eLOC 17 lLOC 11 Comment 38 Lines 31
+
+ Function: QActive_stop
+ Parameters: (QActive * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 9 lLOC 6 Comment 13 Lines 15
+
+ Function: QXK_schedLock
+ Parameters: (uint_fast8_t ceiling)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 25 eLOC 22 lLOC 12 Comment 40 Lines 35
+
+ Function: QXK_schedUnlock
+ Parameters: (QSchedStatus stat)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 18 lLOC 10 Comment 33 Lines 33
+
+ Function: QXK_sched_
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 7 Total 8
+ LOC 52 eLOC 42 lLOC 23 Comment 36 Lines 68
+
+ Function: QXK_activate_
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 13 Total 14
+ LOC 88 eLOC 78 lLOC 42 Comment 64 Lines 130
+
+ Function: QXK_current
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 2 Total 3
+ LOC 13 eLOC 11 lLOC 8 Comment 4 Lines 20
+
+ Function: QXMutex_init
+ Parameters: (QXMutex * const me, uint_fast8_t ceiling)
+ Complexity Param 2 Return 1 Cyclo Vg 4 Total 7
+ LOC 16 eLOC 14 lLOC 8 Comment 33 Lines 25
+
+ Function: QXMutex_lock
+ Parameters: (QXMutex * const me, uint_fast16_t const nTicks)
+ Complexity Param 2 Return 1 Cyclo Vg 10 Total 13
+ LOC 52 eLOC 45 lLOC 29 Comment 53 Lines 89
+
+ Function: QXMutex_tryLock
+ Parameters: (QXMutex * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 12 Total 14
+ LOC 44 eLOC 37 lLOC 20 Comment 46 Lines 69
+
+ Function: QXMutex_unlock
+ Parameters: (QXMutex * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 18 Total 20
+ LOC 67 eLOC 57 lLOC 29 Comment 66 Lines 114
+
+ Function: QXSemaphore_init
+ Parameters: (QXSemaphore * const me, uint_fast16_t count, uint_fast16_t
+ max_count)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 6 eLOC 4 lLOC 4 Comment 22 Lines 7
+
+ Function: QXSemaphore_wait
+ Parameters: (QXSemaphore * const me, uint_fast16_t const nTicks)
+ Complexity Param 2 Return 1 Cyclo Vg 6 Total 9
+ LOC 29 eLOC 26 lLOC 18 Comment 44 Lines 44
+
+ Function: QXSemaphore_tryWait
+ Parameters: (QXSemaphore * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 15 eLOC 12 lLOC 8 Comment 18 Lines 20
+
+ Function: QXSemaphore_signal
+ Parameters: (QXSemaphore * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 7 Total 9
+ LOC 32 eLOC 26 lLOC 16 Comment 35 Lines 48
+
+ Function: QXThread_ctor
+ Parameters: (QXThread * const me, QXThreadHandler handler, uint_fast8_t
+ tickRate)
+ Complexity Param 3 Return 1 Cyclo Vg 1 Total 5
+ LOC 13 eLOC 10 lLOC 5 Comment 27 Lines 16
+
+ Function: QXThread_init_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 2 Lines 5
+
+ Function: QXThread_dispatch_
+ Parameters: (QMsm * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 1 Lines 5
+
+ Function: QXThread_start_
+ Parameters: (QActive * const me, uint_fast8_t prio, QEvt const *qSto[],
+ uint_fast16_t qLen, void *stkSto, uint_fast16_t stkSize, QEv
+ t const *ie)
+ Complexity Param 7 Return 1 Cyclo Vg 6 Total 14
+ LOC 21 eLOC 18 lLOC 12 Comment 42 Lines 43
+
+ Function: QXThread_post_
+ Parameters: (QActive * const me, QEvt const * const e, uint_fast16_t con
+ st margin)
+ Complexity Param 3 Return 1 Cyclo Vg 12 Total 16
+ LOC 80 eLOC 65 lLOC 45 Comment 83 Lines 115
+
+ Function: QXThread_postLIFO_
+ Parameters: (QActive * const me, QEvt const * const e)
+ Complexity Param 2 Return 1 Cyclo Vg 1 Total 4
+ LOC 5 eLOC 4 lLOC 3 Comment 11 Lines 5
+
+ Function: QXThread_queueGet
+ Parameters: (uint_fast16_t const nTicks)
+ Complexity Param 1 Return 1 Cyclo Vg 8 Total 10
+ LOC 61 eLOC 54 lLOC 35 Comment 55 Lines 87
+
+ Function: QXThread_block_
+ Parameters: (QXThread const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 1 Total 3
+ LOC 5 eLOC 4 lLOC 3 Comment 9 Lines 7
+
+ Function: QXThread_unblock_
+ Parameters: (QXThread const * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 3 Total 5
+ LOC 8 eLOC 5 lLOC 2 Comment 10 Lines 8
+
+ Function: QXThread_teArm_
+ Parameters: (QXThread * const me, QSignal sig, uint_fast16_t const nTick
+ s)
+ Complexity Param 3 Return 1 Cyclo Vg 3 Total 7
+ LOC 14 eLOC 10 lLOC 8 Comment 23 Lines 31
+
+ Function: QXThread_teDisarm_
+ Parameters: (QXThread * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 11 eLOC 8 lLOC 5 Comment 11 Lines 13
+
+ Function: QXThread_delay
+ Parameters: (uint_fast16_t const nTicks)
+ Complexity Param 1 Return 1 Cyclo Vg 4 Total 6
+ LOC 21 eLOC 20 lLOC 14 Comment 19 Lines 37
+
+ Function: QXThread_delayCancel
+ Parameters: (QXThread * const me)
+ Complexity Param 1 Return 1 Cyclo Vg 2 Total 4
+ LOC 14 eLOC 11 lLOC 7 Comment 2 Lines 16
+
+ Function: QXK_threadRet_
+ Parameters: (void)
+ Complexity Param 0 Return 1 Cyclo Vg 4 Total 5
+ LOC 16 eLOC 15 lLOC 10 Comment 22 Lines 27
+
+ Total: Functions
+ LOC 2681 eLOC 2263 lLOC 1422 InCmp 295 CycloCmp 434
+ Function Points FP(LOC) 20.8 FP(eLOC) 17.5 FP(lLOC) 11.0
+
+ ------------------------------------------------------------------------
+
+ ~~ Project Functional Analysis ~~
+
+ Total Functions .......: 109 Total Physical Lines ..: 3814
+ Total LOC .............: 2681 Total Function Pts LOC : 20.8
+ Total eLOC ............: 2263 Total Function Pts eLOC: 17.5
+ Total lLOC.............: 1422 Total Function Pts lLOC: 11.0
+ Total Cyclomatic Comp. : 434 Total Interface Comp. .: 295
+ Total Parameters ......: 186 Total Return Points ...: 109
+ Total Comment Lines ...: 3060 Total Blank Lines .....: 568
+ ------ ----- ----- ------ ------ -----
+ Avg Physical Lines ....: 34.99
+ Avg LOC ...............: 24.60 Avg eLOC ..............: 20.76
+ Avg lLOC ..............: 13.05 Avg Cyclomatic Comp. ..: 3.98
+ Avg Interface Comp. ...: 2.71 Avg Parameters ........: 1.71
+ Avg Return Points .....: 1.00 Avg Comment Lines .....: 28.07
+ ------ ----- ----- ------ ------ -----
+ Max LOC ...............: 124
+ Max eLOC ..............: 107 Max lLOC ..............: 65
+ Max Cyclomatic Comp. ..: 18 Max Interface Comp. ...: 8
+ Max Parameters ........: 7 Max Return Points .....: 1
+ Max Comment Lines .....: 83 Max Total Lines .......: 164
+ ------ ----- ----- ------ ------ -----
+ Min LOC ...............: 3
+ Min eLOC ..............: 2 Min lLOC ..............: 1
+ Min Cyclomatic Comp. ..: 1 Min Interface Comp. ...: 1
+ Min Parameters ........: 0 Min Return Points .....: 1
+ Min Comment Lines .....: 1 Min Total Lines .......: 3
+
+ ------------------------------------------------------------------------
+
+ ~~ File Summary ~~
+
+ C Source Files *.c ....: 18 C/C++ Include Files *.h: 17
+ C++ Source Files *.c* .: 0 C++ Include Files *.h* : 0
+ C# Source Files *.cs ..: 0 Java Source File *.jav*: 0
+ Other File Count ......: 0 Total File Count ......: 35
+ ________________________________________________________________________
+
+@endcode
+*/
diff --git a/examples/qutest/TDDbook_Flash/test_Flash.c b/examples/qutest/TDDbook_Flash/test_Flash.c
index dc5575aa3..5c9d978d0 100644
--- a/examples/qutest/TDDbook_Flash/test_Flash.c
+++ b/examples/qutest/TDDbook_Flash/test_Flash.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: example 'FlashDriver' QUTEST fixture (Chapter 10 from TDDfEC)
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-15
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h" /* for QUTEST */
@@ -46,9 +46,12 @@ enum {
void MockIO_Init(void);
/*--------------------------------------------------------------------------*/
-int main() {
- QF_init(); /* initialize the framework and the underlying RT kernel */
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize QS tracing system */
+int main(int argc, char *argv[]) {
+
+ QF_init(); /* initialize the framework */
+
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* filter setup */
QS_FILTER_ON(QS_UA_RECORDS); /* UA==user-all */
diff --git a/examples/qutest/TDDbook_LedDriver/LedDriver.c b/examples/qutest/TDDbook_LedDriver/LedDriver.c
index 76be282f4..cd4868669 100644
--- a/examples/qutest/TDDbook_LedDriver/LedDriver.c
+++ b/examples/qutest/TDDbook_LedDriver/LedDriver.c
@@ -28,8 +28,6 @@
/*- www.renaissancesoftware.net james@renaissancesoftware.net -*/
/*- ------------------------------------------------------------------ -*/
-typedef int int_t; /* needed in "qassert.h" (MISRA compliance) */
-typedef char char_t; /* needed in "qassert.h" (MISRA compliance) */
#include "qassert.h" /* for QP assertions */
//#include "RuntimeError.h"
diff --git a/examples/qutest/TDDbook_LedDriver/test_LedDriver.c b/examples/qutest/TDDbook_LedDriver/test_LedDriver.c
index 139310f06..a35905f8e 100644
--- a/examples/qutest/TDDbook_LedDriver/test_LedDriver.c
+++ b/examples/qutest/TDDbook_LedDriver/test_LedDriver.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: example 'LedDriver' QUTEST fixture (Chapters 3&4 from TDDfEC)
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-15
+* Last Updated for Version: 6.2.0
+* Date of the Last Update: 2018-05-20
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) 2005-2017 Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h" /* for QUTEST */
@@ -51,9 +51,13 @@ enum {
};
/*--------------------------------------------------------------------------*/
-int main() {
- QF_init(); /* initialize the framework and the underlying RT kernel */
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize QS tracing system */
+int main(int argc, char *argv[]) {
+
+ QF_init(); /* initialize the framework */
+
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
+
/* filter setup */
QS_FILTER_ON(QS_UA_RECORDS); /* UA==user-all */
diff --git a/examples/qutest/TDDbook_Sprintf/test_Sprintf.c b/examples/qutest/TDDbook_Sprintf/test_Sprintf.c
index 0565f4847..9602c803a 100644
--- a/examples/qutest/TDDbook_Sprintf/test_Sprintf.c
+++ b/examples/qutest/TDDbook_Sprintf/test_Sprintf.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: example 'sprintf' QUTEST fixture
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-15
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) 2005-2017 Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h" /* QUTest interface */
@@ -47,9 +47,12 @@ enum {
};
/*--------------------------------------------------------------------------*/
-int main() {
- QF_init(); /* initialize the framework and the underlying RT kernel */
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize QS tracing system */
+int main(int argc, char *argv[]) {
+
+ QF_init(); /* initialize the framework */
+
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* dictionaries... */
QS_OBJ_DICTIONARY(format);
diff --git a/examples/qutest/blinky/Makefile b/examples/qutest/blinky/Makefile
new file mode 100644
index 000000000..521536abb
--- /dev/null
+++ b/examples/qutest/blinky/Makefile
@@ -0,0 +1,232 @@
+##############################################################################
+# Product: Makefile for QUTEST; QP/C on Win32 host
+# Last updated for version 6.3.1
+# Last updated on 2018-05-21
+#
+# Q u a n t u m L e a P s
+# ---------------------------
+# innovating embedded systems
+#
+# Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
+#
+# This program is open source software: you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as published
+# by the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Alternatively, this program may be distributed and modified under the
+# terms of Quantum Leaps commercial licenses, which expressly supersede
+# the GNU General Public License and are specifically designed for
+# licensees interested in retaining the proprietary status of their code.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see .
+#
+# Contact information:
+# https://www.state-machine.com
+# mailto:info@state-machine.com
+##############################################################################
+#
+# examples of invoking this Makefile:
+# make # make and run the tests in the current directory
+# make TESTS=test*.tcl # make and run the selected tests in the curr. dir.
+# make HOST=localhost:7705 # connect to host:port
+# make norun # only make but not run the tests
+# make clean # cleanup the build
+#
+# NOTE:
+# To use this Makefile on Windows, you will need the GNU make utility, which
+# is included in the Qtools collection for Windows, see:
+# http://sourceforge.net/projects/qpc/files/QTools/
+#
+
+#-----------------------------------------------------------------------------
+# project name
+#
+PROJECT := test_blinky
+
+#-----------------------------------------------------------------------------
+# project directories
+#
+
+# location of the QP/C framework (if not provided in an environemnt var.)
+ifeq ($(QPC),)
+QPC := ../../..
+endif
+
+# location of the QTOOLS directory (if not provided in an environemnt var.)
+ifeq ($(QTOOLS),)
+QTOOLS := c:/qp/qtools
+endif
+
+
+# QP port used in this project
+QP_PORT_DIR := $(QPC)/ports/win32-qutest
+
+# list of all source directories used by this project
+VPATH = \
+ .
+
+# list of all include directories needed by this project
+INCLUDES = \
+ -I. \
+ -I$(QPC)/include
+
+#-----------------------------------------------------------------------------
+# files
+#
+
+# C source files...
+C_SRCS := \
+ bsp.c \
+ blinky.c \
+ test_blinky.c
+
+# C++ source files...
+CPP_SRCS :=
+
+LIB_DIRS :=
+LIBS :=
+
+# defines...
+# QP_API_VERSION controls the QP API compatibility; 9999 means the latest API
+DEFINES := -DQP_API_VERSION=9999
+
+#-----------------------------------------------------------------------------
+# MinGW toolset (NOTE: assumed to be on your PATH)
+#
+# NOTE:
+# MinGW toolset is included in the Qtools collection for Windows, see:
+# http://sourceforge.net/projects/qpc/files/Qtools/
+#
+# NOTE:
+# This Makefile assumes that the windres utility is available on the
+# PATH (NOTE: windres is available in the Qtools collection for Windows)
+#
+CC := gcc
+CPP := g++
+LINK := gcc # for C programs
+#LINK := g++ # for C++ programs
+
+# basic utilities (included in Qtools for Windows), see:
+# http://sourceforge.net/projects/qpc/files/Qtools
+
+MKDIR := mkdir
+RM := rm
+TCLSH := tclsh
+QUTEST := $(QTOOLS)/qspy/tcl/qutest.tcl
+
+
+#============================================================================
+# Typically you should not need to change anything below this line
+
+#-----------------------------------------------------------------------------
+# build options
+#
+
+BIN_DIR := mingw
+
+CFLAGS = -g -O -Wall -Wstrict-prototypes -W $(INCLUDES) $(DEFINES) \
+ -DQ_SPY -DQ_UTEST -DQ_HOST
+
+CPPFLAGS = -g -O -Wall -W -fno-rtti -fno-exceptions $(INCLUDES) $(DEFINES) \
+ -DQ_SPY -DQ_UTEST -DQ_HOST
+
+LINKFLAGS := -Wl,-Map,$(BIN_DIR)/$(PROJECT).map,--cref,--gc-sections
+
+#-----------------------------------------------------------------------------
+# combine all the soruces...
+INCLUDES += -I$(QP_PORT_DIR)
+LIB_DIRS += -L$(QP_PORT_DIR)/$(BIN_DIR)
+LIBS += -lqp -lwsock32
+
+C_OBJS := $(patsubst %.c,%.o, $(C_SRCS))
+CPP_OBJS := $(patsubst %.cpp,%.o, $(CPP_SRCS))
+
+TARGET_EXE := $(BIN_DIR)/$(PROJECT).exe
+C_OBJS_EXT := $(addprefix $(BIN_DIR)/, $(C_OBJS))
+C_DEPS_EXT := $(patsubst %.o,%.d, $(C_OBJS_EXT))
+CPP_OBJS_EXT := $(addprefix $(BIN_DIR)/, $(CPP_OBJS))
+CPP_DEPS_EXT := $(patsubst %.o,%.d, $(CPP_OBJS_EXT))
+
+# create $(BIN_DIR) if it does not exist
+ifeq ("$(wildcard $(BIN_DIR))","")
+$(shell $(MKDIR) $(BIN_DIR))
+endif
+
+#-----------------------------------------------------------------------------
+# rules
+#
+
+.PHONY : run norun
+
+ifeq ($(MAKECMDGOALS),norun)
+all : $(TARGET_EXE)
+norun : all
+else
+all : $(TARGET_EXE) run
+endif
+
+ifeq (, $(TESTS))
+TESTS := *.tcl
+endif
+
+$(TARGET_EXE) : $(C_OBJS_EXT) $(CPP_OBJS_EXT)
+ $(CC) $(CFLAGS) -c $(QPC)/include/qstamp.c -o $(BIN_DIR)/qstamp.o
+ $(LINK) $(LINKFLAGS) $(LIB_DIRS) -o $@ $^ $(BIN_DIR)/qstamp.o $(LIBS)
+
+run : $(TARGET_EXE)
+ $(TCLSH) $(QUTEST) $(TESTS) $(TARGET_EXE) $(HOST)
+
+$(BIN_DIR)/%.d : %.cpp
+ $(CPP) -MM -MT $(@:.d=.o) $(CPPFLAGS) $< > $@
+
+$(BIN_DIR)/%.d : %.c
+ $(CC) -MM -MT $(@:.d=.o) $(CFLAGS) $< > $@
+
+$(BIN_DIR)/%.o : %.cpp
+ $(CPP) $(CPPFLAGS) -c $< -o $@
+
+$(BIN_DIR)/%.o : %.c
+ $(CC) $(CFLAGS) -c $< -o $@
+
+.PHONY : clean show norun
+
+# include dependency files only if our goal depends on their existence
+ifneq ($(MAKECMDGOALS),clean)
+ ifneq ($(MAKECMDGOALS),show)
+-include $(C_DEPS_EXT) $(CPP_DEPS_EXT)
+ endif
+endif
+
+clean :
+ -$(RM) $(BIN_DIR)/*.o \
+ $(BIN_DIR)/*.d \
+ $(BIN_DIR)/*.map \
+ $(TARGET_EXE)
+
+show :
+ @echo PROJECT = $(PROJECT)
+ @echo TARGET_EXE = $(TARGET_EXE)
+ @echo CONF = $(CONF)
+ @echo VPATH = $(VPATH)
+ @echo C_SRCS = $(C_SRCS)
+ @echo CPP_SRCS = $(CPP_SRCS)
+ @echo C_DEPS_EXT = $(C_DEPS_EXT)
+ @echo C_OBJS_EXT = $(C_OBJS_EXT)
+ @echo C_DEPS_EXT = $(C_DEPS_EXT)
+ @echo CPP_DEPS_EXT = $(CPP_DEPS_EXT)
+ @echo CPP_OBJS_EXT = $(CPP_OBJS_EXT)
+ @echo LIB_DIRS = $(LIB_DIRS)
+ @echo LIBS = $(LIBS)
+ @echo DEFINES = $(DEFINES)
+ @echo QTOOLS = $(QTOOLS)
+ @echo QUTEST = $(QUTEST)
+ @echo TESTS = $(TESTS)
+ @echo HOST = $(HOST)
+
diff --git a/examples/qutest/blinky/blinky.c b/examples/qutest/blinky/blinky.c
new file mode 100644
index 000000000..3a8ecc754
--- /dev/null
+++ b/examples/qutest/blinky/blinky.c
@@ -0,0 +1,120 @@
+/*$file${.::blinky.c} ######################################################*/
+/*
+* Model: blinky.qm
+* File: ${.::blinky.c}
+*
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
+* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
+*
+* This program is open source software: you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as published
+* by the Free Software Foundation.
+*
+* This program is distributed in the hope that it will be useful, but
+* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+* for more details.
+*/
+/*$endhead${.::blinky.c} ###################################################*/
+#include "qpc.h"
+#include "blinky.h"
+#include "bsp.h"
+
+Q_DEFINE_THIS_MODULE("blinky")
+
+/*************** ask QM to declare the Blinky class ******************/
+/*$declare${AOs::Blinky} ###################################################*/
+/*${AOs::Blinky} ...........................................................*/
+typedef struct {
+/* protected: */
+ QActive super;
+
+/* private: */
+ QTimeEvt timeEvt;
+} Blinky;
+
+/* protected: */
+static QState Blinky_initial(Blinky * const me, QEvt const * const e);
+static QState Blinky_off(Blinky * const me, QEvt const * const e);
+static QState Blinky_on(Blinky * const me, QEvt const * const e);
+/*$enddecl${AOs::Blinky} ###################################################*/
+
+static Blinky l_blinky;
+
+QActive * const AO_Blinky = &l_blinky.super; /* opaque pointer */
+
+/*************** ask QM to define the Blinky class ******************/
+/*$define${AOs::Blinky_ctor} ###############################################*/
+/* Check for the minimum required QP version */
+#if ((QP_VERSION < 630) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
+#error qpc version 6.3.0 or higher required
+#endif
+/*${AOs::Blinky_ctor} ......................................................*/
+void Blinky_ctor(void) {
+ Blinky *me = &l_blinky;
+ QActive_ctor(&me->super, Q_STATE_CAST(&Blinky_initial));
+ QTimeEvt_ctorX(&me->timeEvt, &me->super, TIMEOUT_SIG, 0U);
+}
+/*$enddef${AOs::Blinky_ctor} ###############################################*/
+
+/*$define${AOs::Blinky} ####################################################*/
+/*${AOs::Blinky} ...........................................................*/
+/*${AOs::Blinky::SM} .......................................................*/
+static QState Blinky_initial(Blinky * const me, QEvt const * const e) {
+ /*${AOs::Blinky::SM::initial} */
+ QS_OBJ_DICTIONARY(&l_blinky);
+ QS_OBJ_DICTIONARY(&l_blinky.timeEvt);
+
+ QTimeEvt_armX(&me->timeEvt,
+ BSP_TICKS_PER_SEC/2, BSP_TICKS_PER_SEC/2);
+
+ QS_FUN_DICTIONARY(&Blinky_off);
+ QS_FUN_DICTIONARY(&Blinky_on);
+
+ return Q_TRAN(&Blinky_off);
+}
+/*${AOs::Blinky::SM::off} ..................................................*/
+static QState Blinky_off(Blinky * const me, QEvt const * const e) {
+ QState status_;
+ switch (e->sig) {
+ /*${AOs::Blinky::SM::off} */
+ case Q_ENTRY_SIG: {
+ BSP_ledOff();
+ status_ = Q_HANDLED();
+ break;
+ }
+ /*${AOs::Blinky::SM::off::TIMEOUT} */
+ case TIMEOUT_SIG: {
+ status_ = Q_TRAN(&Blinky_on);
+ break;
+ }
+ default: {
+ status_ = Q_SUPER(&QHsm_top);
+ break;
+ }
+ }
+ return status_;
+}
+/*${AOs::Blinky::SM::on} ...................................................*/
+static QState Blinky_on(Blinky * const me, QEvt const * const e) {
+ QState status_;
+ switch (e->sig) {
+ /*${AOs::Blinky::SM::on} */
+ case Q_ENTRY_SIG: {
+ BSP_ledOn();
+ status_ = Q_HANDLED();
+ break;
+ }
+ /*${AOs::Blinky::SM::on::TIMEOUT} */
+ case TIMEOUT_SIG: {
+ status_ = Q_TRAN(&Blinky_off);
+ break;
+ }
+ default: {
+ status_ = Q_SUPER(&QHsm_top);
+ break;
+ }
+ }
+ return status_;
+}
+/*$enddef${AOs::Blinky} ####################################################*/
diff --git a/examples/qutest/blinky/blinky.h b/examples/qutest/blinky/blinky.h
new file mode 100644
index 000000000..c36a45830
--- /dev/null
+++ b/examples/qutest/blinky/blinky.h
@@ -0,0 +1,33 @@
+/*$file${.::blinky.h} ######################################################*/
+/*
+* Model: blinky.qm
+* File: ${.::blinky.h}
+*
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
+* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
+*
+* This program is open source software: you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as published
+* by the Free Software Foundation.
+*
+* This program is distributed in the hope that it will be useful, but
+* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+* for more details.
+*/
+/*$endhead${.::blinky.h} ###################################################*/
+#ifndef blinky_h
+#define blinky_h
+
+enum BlinkySignals {
+ DUMMY_SIG = Q_USER_SIG,
+ MAX_PUB_SIG, /* the last published signal */
+
+ TIMEOUT_SIG,
+ MAX_SIG /* the last signal */
+};
+
+void Blinky_ctor(void);
+extern QActive * const AO_Blinky; /* opaque pointer */
+
+#endif /* blinky_h */
diff --git a/examples/qutest/blinky/blinky.qm b/examples/qutest/blinky/blinky.qm
new file mode 100644
index 000000000..ced51c00a
--- /dev/null
+++ b/examples/qutest/blinky/blinky.qm
@@ -0,0 +1,93 @@
+
+
+ Blinky model
+
+
+
+
+
+
+ QS_OBJ_DICTIONARY(&l_blinky);
+QS_OBJ_DICTIONARY(&l_blinky.timeEvt);
+
+QTimeEvt_armX(&me->timeEvt,
+ BSP_TICKS_PER_SEC/2, BSP_TICKS_PER_SEC/2);
+
+
+
+
+
+ BSP_ledOff();
+
+
+
+
+
+
+
+
+
+
+ BSP_ledOn();
+
+
+
+
+
+
+
+
+
+
+
+
+
+ opaque pointer to the Blinky AO
+
+
+ Blinky *me = &l_blinky;
+QActive_ctor(&me->super, Q_STATE_CAST(&Blinky_initial));
+QTimeEvt_ctorX(&me->timeEvt, &me->super, TIMEOUT_SIG, 0U);
+
+
+
+
+ #ifndef blinky_h
+#define blinky_h
+
+enum BlinkySignals {
+ DUMMY_SIG = Q_USER_SIG,
+ MAX_PUB_SIG, /* the last published signal */
+
+ TIMEOUT_SIG,
+ MAX_SIG /* the last signal */
+};
+
+void Blinky_ctor(void);
+extern QActive * const AO_Blinky; /* opaque pointer */
+
+#endif /* blinky_h */
+
+
+
+ #include "qpc.h"
+#include "blinky.h"
+#include "bsp.h"
+
+Q_DEFINE_THIS_MODULE("blinky")
+
+/*************** ask QM to declare the Blinky class ******************/
+$declare${AOs::Blinky}
+
+static Blinky l_blinky;
+
+QActive * const AO_Blinky = &l_blinky.super; /* opaque pointer */
+
+/*************** ask QM to define the Blinky class ******************/
+$define${AOs::Blinky_ctor}
+
+$define${AOs::Blinky}
+
+
+
+
diff --git a/examples/qutest/blinky/bsp.c b/examples/qutest/blinky/bsp.c
new file mode 100644
index 000000000..3e9b59b8e
--- /dev/null
+++ b/examples/qutest/blinky/bsp.c
@@ -0,0 +1,60 @@
+/*****************************************************************************
+* Product: "Blinky" example, Win32 API
+* Last updated for version 6.2.0
+* Last updated on 2018-05-21
+*
+* Q u a n t u m L e a P s
+* ---------------------------
+* innovating embedded systems
+*
+* Copyright (C) Quantum Leaps, LLC. All rights reserved.
+*
+* This program is open source software: you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 3 of the License, or
+* (at your option) any later version.
+*
+* Alternatively, this program may be distributed and modified under the
+* terms of Quantum Leaps commercial licenses, which expressly supersede
+* the GNU General Public License and are specifically designed for
+* licensees interested in retaining the proprietary status of their code.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*
+* Contact information:
+* https://www.state-machine.com
+* mailto:info@state-machine.com
+*****************************************************************************/
+#include "qpc.h"
+#include "blinky.h"
+#include "bsp.h"
+
+Q_DEFINE_THIS_FILE
+
+enum {
+ LED = QS_USER
+};
+
+/*..........................................................................*/
+void BSP_init() {
+ QS_FUN_DICTIONARY(&QHsm_top);
+ QS_USR_DICTIONARY(LED);
+}
+/*..........................................................................*/
+void BSP_ledOff(void) {
+ QS_BEGIN(LED, AO_Blinky)
+ QS_U8(1, 0);
+ QS_END()
+}
+/*..........................................................................*/
+void BSP_ledOn(void) {
+ QS_BEGIN(LED, AO_Blinky)
+ QS_U8(1, 1);
+ QS_END()
+}
diff --git a/examples/qutest/blinky/bsp.h b/examples/qutest/blinky/bsp.h
new file mode 100644
index 000000000..3be49ed93
--- /dev/null
+++ b/examples/qutest/blinky/bsp.h
@@ -0,0 +1,52 @@
+/*****************************************************************************
+* Product: DPP example
+* Last Updated for Version: 5.6.0
+* Date of the Last Update: 2015-11-22
+*
+* Q u a n t u m L e a P s
+* ---------------------------
+* innovating embedded systems
+*
+* Copyright (C) Quantum Leaps, LLC. All rights reserved.
+*
+* This program is open source software: you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 3 of the License, or
+* (at your option) any later version.
+*
+* Alternatively, this program may be distributed and modified under the
+* terms of Quantum Leaps commercial licenses, which expressly supersede
+* the GNU General Public License and are specifically designed for
+* licensees interested in retaining the proprietary status of their code.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*
+* Contact information:
+* https://state-machine.com
+* mailto:info@state-machine.com
+*****************************************************************************/
+#ifndef bsp_h
+#define bsp_h
+
+#define BSP_TICKS_PER_SEC 100U
+
+void BSP_init(void);
+void BSP_displayPaused(uint8_t paused);
+void BSP_displayPhilStat(uint8_t n, char_t const *stat);
+void BSP_terminate(int16_t result);
+
+void BSP_randomSeed(uint32_t seed); /* random seed */
+uint32_t BSP_random(void); /* pseudo-random generator */
+
+/* for testing... */
+void BSP_wait4SW1(void);
+void BSP_ledOn(void);
+void BSP_ledOff(void);
+
+#endif /* bsp_h */
diff --git a/examples/qutest/blinky/test_blinky.c b/examples/qutest/blinky/test_blinky.c
new file mode 100644
index 000000000..889396908
--- /dev/null
+++ b/examples/qutest/blinky/test_blinky.c
@@ -0,0 +1,108 @@
+/*****************************************************************************
+* Purpose: Fixture for QUTEST
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
+*
+* Q u a n t u m L e a P s
+* ---------------------------
+* innovating embedded systems
+*
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
+*
+* This program is open source software: you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as published
+* by the Free Software Foundation, either version 3 of the License, or
+* (at your option) any later version.
+*
+* Alternatively, this program may be distributed and modified under the
+* terms of Quantum Leaps commercial licenses, which expressly supersede
+* the GNU General Public License and are specifically designed for
+* licensees interested in retaining the proprietary status of their code.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*
+* Contact information:
+* https://www.state-machine.com
+* mailto:info@state-machine.com
+*****************************************************************************/
+#include "qpc.h"
+#include "blinky.h"
+
+Q_DEFINE_THIS_FILE
+
+/*..........................................................................*/
+int main(int argc, char *argv[]) {
+ static QF_MPOOL_EL(QEvt) smlPoolSto[10]; /* storage for small pool*/
+ static QEvt const *blinkyQSto[10]; /* event queue storage for Blinky */
+
+ (void)argc; /* unused parameter */
+ (void)argv; /* unused parameter */
+
+ QF_init(); /* initialize the framework */
+
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
+
+ BSP_init(); /* initialize the BSP */
+
+ /* dictionaries... */
+ QS_OBJ_DICTIONARY(smlPoolSto);
+ QS_OBJ_DICTIONARY(blinkyQSto);
+
+ QS_SIG_DICTIONARY(TIMEOUT_SIG, (void *)0);
+
+ /* pause execution of the test and wait for the test script to continue */
+ QS_TEST_PAUSE();
+
+ /* publish-subscribe not used, no call to QF_psInit() */
+
+ /* initialize event pools... */
+ QF_poolInit(smlPoolSto, sizeof(smlPoolSto), sizeof(smlPoolSto[0]));
+
+ /* start the active objects... */
+ Blinky_ctor();
+ QACTIVE_START(AO_Blinky,
+ 1U,
+ blinkyQSto, Q_DIM(blinkyQSto),
+ (void *)0, 0U, (QEvt *)0);
+
+ return QF_run();
+}
+
+/*--------------------------------------------------------------------------*/
+void QS_onTestSetup(void) {
+}
+/*..........................................................................*/
+void QS_onTestTeardown(void) {
+}
+/*..........................................................................*/
+void QS_onCommand(uint8_t cmdId,
+ uint32_t param1, uint32_t param2, uint32_t param3)
+{
+ (void)param1;
+ (void)param2;
+ (void)param3;
+
+ switch (cmdId) {
+ case 0U: {
+ break;
+ }
+ default:
+ break;
+ }
+}
+
+/*..........................................................................*/
+/* host callback function to "massage" the event, if necessary */
+void QS_onTestEvt(QEvt *e) {
+ (void)e;
+#ifdef Q_HOST /* is this test compiled for a desktop Host computer? */
+#else /* this test is compiled for an embedded Target system */
+#endif
+}
diff --git a/examples/qutest/blinky/test_blinky.tcl b/examples/qutest/blinky/test_blinky.tcl
new file mode 100644
index 000000000..d8629c6fe
--- /dev/null
+++ b/examples/qutest/blinky/test_blinky.tcl
@@ -0,0 +1,88 @@
+#-----------------------------------------------------------------------------
+# Product: QSPY -- test-script example for qutest.tcl
+# Last updated for version 6.2.0
+# Last updated on 2018-03-12
+#
+# Q u a n t u m L e a P s
+# ---------------------------
+# innovating embedded systems
+#
+# Copyright (C) Quantum Leaps, LLC, All rights reserved.
+#
+# This program is open source software: you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as published
+# by the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Alternatively, this program may be distributed and modified under the
+# terms of Quantum Leaps commercial licenses, which expressly supersede
+# the GNU General Public License and are specifically designed for
+# licensees interested in retaining the proprietary status of their code.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see .
+#
+# Contact information:
+# https://www.state-machine.com
+# mailto:info@state-machine.com
+#-----------------------------------------------------------------------------
+
+# preamble...
+proc on_reset {} {
+ expect_pause
+ glb_filter ON
+ continue
+ expect "%timestamp TE0-Arm Obj=l_blinky.timeEvt,AO=l_blinky,*"
+ expect "===RTC===> St-Init Obj=l_blinky,State=QHsm_top->Blinky_off"
+ expect "%timestamp LED 0"
+ expect "===RTC===> St-Entry Obj=l_blinky,State=Blinky_off"
+ expect "%timestamp Init===> Obj=l_blinky,State=Blinky_off"
+ current_obj SM_AO l_blinky
+}
+
+# tests...
+test "TIMEOUT_SIG->l_blinky"
+post TIMEOUT_SIG
+expect "%timestamp QF-New Sig=TIMEOUT_SIG,*"
+expect "%timestamp MP-Get Obj=smlPoolSto,*"
+expect "%timestamp AO-Post Sdr=QS_RX,Obj=l_blinky,Evt Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_off"
+expect "%timestamp LED 1"
+expect "===RTC===> St-Entry Obj=l_blinky,State=Blinky_on"
+expect "%timestamp ===>Tran Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_off->Blinky_on"
+expect "%timestamp QF-gc EvtBlinky (tick)"
+current_obj TE l_blinky.timeEvt
+tick
+expect "%timestamp TE0-Post Obj=l_blinky.timeEvt,Sig=TIMEOUT_SIG,AO=l_blinky"
+expect "%timestamp AO-Post Sdr=QS_RX,Obj=l_blinky,Evt Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_off"
+expect "%timestamp LED 1"
+expect "===RTC===> St-Entry Obj=l_blinky,State=Blinky_on"
+expect "%timestamp ===>Tran Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_off->Blinky_on"
+expect "%timestamp Trg-Done QS_RX_TICK"
+
+test "timeEvt->Blinky (tick)" -noreset
+tick
+expect "%timestamp TE0-Post Obj=l_blinky.timeEvt,Sig=TIMEOUT_SIG,AO=l_blinky"
+expect "%timestamp AO-Post Sdr=QS_RX,Obj=l_blinky,Evt Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_on"
+expect "%timestamp LED 0"
+expect "===RTC===> St-Entry Obj=l_blinky,State=Blinky_off"
+expect "%timestamp ===>Tran Obj=l_blinky,Sig=TIMEOUT_SIG,State=Blinky_on->Blinky_off"
+expect "%timestamp Trg-Done QS_RX_TICK"
+
+
+# the end
+end
diff --git a/examples/qutest/defer/test_defer.c b/examples/qutest/defer/test_defer.c
index 2d2ae3a64..511f60a7c 100644
--- a/examples/qutest/defer/test_defer.c
+++ b/examples/qutest/defer/test_defer.c
@@ -1,7 +1,7 @@
/*****************************************************************************
* Purpose: Fixture for QUTEST
-* Last Updated for Version: 6.2.0
-* Date of the Last Update: 2018-03-14
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
@@ -42,11 +42,10 @@ int main(int argc, char *argv[]) {
static QF_MPOOL_EL(RequestEvt) smlPoolSto[10]; /* storage for small pool*/
static QEvt const *tserverQSto[10]; /* event queue storage for TServer */
- (void)argc; /* unused parameter */
- (void)argv; /* unused parameter */
+ QF_init(); /* initialize the framework */
- QF_init(); /* initialize the framework and the underlying RTOS/OS */
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize the QS software tracing */
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* dictionaries... */
QS_OBJ_DICTIONARY(smlPoolSto);
@@ -84,7 +83,6 @@ void QS_onCommand(uint8_t cmdId,
(void)param2;
(void)param3;
- //printf(" Command id=%d param=%d\n", (int)cmdId, (int)param);
switch (cmdId) {
case 0U: {
break;
@@ -102,3 +100,4 @@ void QS_onTestEvt(QEvt *e) {
#else /* this test is compiled for an embedded Target system */
#endif
}
+
diff --git a/examples/qutest/dpp/dpp.h b/examples/qutest/dpp/dpp.h
index bf90cf75b..bd0e8c333 100644
--- a/examples/qutest/dpp/dpp.h
+++ b/examples/qutest/dpp/dpp.h
@@ -3,7 +3,7 @@
* Model: dpp.qm
* File: ${.::dpp.h}
*
-* This code has been generated by QM tool (https://state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
diff --git a/examples/qutest/dpp/dpp.qm b/examples/qutest/dpp/dpp.qm
index 9788623aa..49a855a73 100644
--- a/examples/qutest/dpp/dpp.qm
+++ b/examples/qutest/dpp/dpp.qm
@@ -1,5 +1,5 @@
-
+
Dining Philosopher Problem example
NOTE: Requries QP5.
@@ -119,19 +119,13 @@ Q_ASSERT_ID(30, Q_EVT_CAST(TableEvt)->philoNum != PHILO_ID(me));
-
+
uint8_t n;
(void)e; /* suppress the compiler warning about unused parameter */
QS_OBJ_DICTIONARY(&l_table);
-QS_FUN_DICTIONARY(&QHsm_top);
-QS_FUN_DICTIONARY(&Table_initial);
-QS_FUN_DICTIONARY(&Table_active);
-QS_FUN_DICTIONARY(&Table_serving);
-QS_FUN_DICTIONARY(&Table_paused);
-
QS_SIG_DICTIONARY(DONE_SIG, (void *)0); /* global signals */
QS_SIG_DICTIONARY(EAT_SIG, (void *)0);
QS_SIG_DICTIONARY(PAUSE_SIG, (void *)0);
diff --git a/examples/qutest/dpp/main.c b/examples/qutest/dpp/main.c
index 3b7e86bd6..3b3049e09 100644
--- a/examples/qutest/dpp/main.c
+++ b/examples/qutest/dpp/main.c
@@ -1,7 +1,7 @@
/*****************************************************************************
* Product: DPP example
* Last Updated for Version: 6.2.0
-* Date of the Last Update: 2018-03-16
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
@@ -43,8 +43,6 @@ int main(int argc, char *argv[]) {
static QF_MPOOL_EL(TableEvt) smlPoolSto[2*N_PHILO]; /* small pool */
uint8_t n;
- Philo_ctor(); /* instantiate all Philosopher active objects */
- Table_ctor(); /* instantiate the Table active object */
QF_init(); /* initialize the framework and the underlying RT kernel */
BSP_init(argc, argv); /* initialize the Board Support Package */
@@ -62,6 +60,7 @@ int main(int argc, char *argv[]) {
QF_poolInit(smlPoolSto, sizeof(smlPoolSto), sizeof(smlPoolSto[0]));
/* start the active objects... */
+ Philo_ctor(); /* instantiate all Philosopher active objects */
for (n = 0U; n < N_PHILO; ++n) {
QACTIVE_START(AO_Philo[n], /* AO to start */
(uint_fast8_t)(n + 1), /* QP priority of the AO */
@@ -71,6 +70,8 @@ int main(int argc, char *argv[]) {
0U, /* size of the stack [bytes] */
(QEvt *)0); /* initialization event */
}
+
+ Table_ctor(); /* instantiate the Table active object */
QACTIVE_START(AO_Table, /* AO to start */
(uint_fast8_t)(N_PHILO + 1), /* QP priority of the AO */
tableQueueSto, /* event queue storage */
diff --git a/examples/qutest/dpp/philo.c b/examples/qutest/dpp/philo.c
index 4793b236c..de7006952 100644
--- a/examples/qutest/dpp/philo.c
+++ b/examples/qutest/dpp/philo.c
@@ -3,7 +3,7 @@
* Model: dpp.qm
* File: ${.::philo.c}
*
-* This code has been generated by QM tool (https://state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@@ -63,8 +63,8 @@ QMActive * const AO_Philo[N_PHILO] = { /* "opaque" pointers to Philo AO */
/* Philo definition --------------------------------------------------------*/
/*$define${AOs::Philo_ctor} ################################################*/
/* Check for the minimum required QP version */
-#if ((QP_VERSION < 601) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
-#error qpc version 6.0.1 or higher required
+#if ((QP_VERSION < 630) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
+#error qpc version 6.3.0 or higher required
#endif
/*${AOs::Philo_ctor} .......................................................*/
void Philo_ctor(void) {
diff --git a/examples/qutest/dpp/table.c b/examples/qutest/dpp/table.c
index ab201184c..05d7863a0 100644
--- a/examples/qutest/dpp/table.c
+++ b/examples/qutest/dpp/table.c
@@ -3,7 +3,7 @@
* Model: dpp.qm
* File: ${.::table.c}
*
-* This code has been generated by QM tool (https://state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@@ -55,8 +55,8 @@ QMActive * const AO_Table = &l_table.super; /* "opaque" AO pointer */
/*..........................................................................*/
/*$define${AOs::Table_ctor} ################################################*/
/* Check for the minimum required QP version */
-#if ((QP_VERSION < 601) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
-#error qpc version 6.0.1 or higher required
+#if ((QP_VERSION < 630) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
+#error qpc version 6.3.0 or higher required
#endif
/*${AOs::Table_ctor} .......................................................*/
void Table_ctor(void) {
@@ -81,12 +81,6 @@ static QState Table_initial(Table * const me, QEvt const * const e) {
QS_OBJ_DICTIONARY(&l_table);
- QS_FUN_DICTIONARY(&QHsm_top);
- QS_FUN_DICTIONARY(&Table_initial);
- QS_FUN_DICTIONARY(&Table_active);
- QS_FUN_DICTIONARY(&Table_serving);
- QS_FUN_DICTIONARY(&Table_paused);
-
QS_SIG_DICTIONARY(DONE_SIG, (void *)0); /* global signals */
QS_SIG_DICTIONARY(EAT_SIG, (void *)0);
QS_SIG_DICTIONARY(PAUSE_SIG, (void *)0);
@@ -105,6 +99,11 @@ static QState Table_initial(Table * const me, QEvt const * const e) {
me->isHungry[n] = 0U;
BSP_displayPhilStat(n, "thinking");
}
+
+ QS_FUN_DICTIONARY(&Table_active);
+ QS_FUN_DICTIONARY(&Table_serving);
+ QS_FUN_DICTIONARY(&Table_paused);
+
return Q_TRAN(&Table_serving);
}
/*${AOs::Table::SM::active} ................................................*/
diff --git a/examples/qutest/evt_par/test_evt_par.c b/examples/qutest/evt_par/test_evt_par.c
index 46fd64b45..0a266cd93 100644
--- a/examples/qutest/evt_par/test_evt_par.c
+++ b/examples/qutest/evt_par/test_evt_par.c
@@ -1,7 +1,7 @@
/*****************************************************************************
* Purpose: example event QUTEST fixture
-* Last Updated for Version: 6.1.1
-* Date of the Last Update: 2018-03-08
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
@@ -42,13 +42,10 @@ int main(int argc, char *argv[]) {
static QF_MPOOL_EL(MyEvt3) smlPoolSto[10];
static QEvt const *myAoQueueSto[10];
- (void)argc; /* unused parameter */
- (void)argv; /* unused parameter */
+ QF_init(); /* initialize the framework */
- MyAO_ctor(); /* instantiate the MyAO active object */
-
- QF_init(); /* initialize the framework and the underlying RT kernel */
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize QS tracing system */
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* object dictionaries... */
QS_OBJ_DICTIONARY(smlPoolSto);
@@ -61,6 +58,8 @@ int main(int argc, char *argv[]) {
/* initialize event pools... */
QF_poolInit(smlPoolSto, sizeof(smlPoolSto), sizeof(smlPoolSto[0]));
+ /* start active objects... */
+ MyAO_ctor(); /* instantiate the MyAO active object */
QACTIVE_START(AO_MyAO, /* AO to start */
(uint_fast8_t)1, /* QP priority of the AO */
myAoQueueSto, /* event queue storage */
diff --git a/examples/qutest/qhsmtst/qhsmtst.c b/examples/qutest/qhsmtst/qhsmtst.c
index da7e6b396..2227d69e1 100644
--- a/examples/qutest/qhsmtst/qhsmtst.c
+++ b/examples/qutest/qhsmtst/qhsmtst.c
@@ -1,8 +1,9 @@
-/*****************************************************************************
+/*$file${.::qhsmtst.c} #####################################################*/
+/*
* Model: qhsmtst.qm
-* File: ./qhsmtst.c
+* File: ${.::qhsmtst.c}
*
-* This code has been generated by QM tool (see state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@@ -13,16 +14,12 @@
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
-*****************************************************************************/
-/*${.::qhsmtst.c} ..........................................................*/
+*/
+/*$endhead${.::qhsmtst.c} ##################################################*/
#include "qpc.h"
#include "qhsmtst.h"
-
-#if ((QP_VERSION < 580) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
-#error qpc version 5.8.0 or higher required
-#endif
-
+/*$declare${HSMs::QHsmTst} #################################################*/
/*${HSMs::QHsmTst} .........................................................*/
typedef struct {
/* protected: */
@@ -40,34 +37,33 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e);
static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e);
-
+/*$enddecl${HSMs::QHsmTst} #################################################*/
static QHsmTst l_hsmtst; /* the only instance of the QHsmTst class */
/* global-scope definitions ---------------------------------------*/
QHsm * const the_hsm = (QHsm *)&l_hsmtst; /* the opaque pointer */
+/*$define${HSMs::QHsmTst_ctor} #############################################*/
+/* Check for the minimum required QP version */
+#if ((QP_VERSION < 630) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
+#error qpc version 6.3.0 or higher required
+#endif
/*${HSMs::QHsmTst_ctor} ....................................................*/
void QHsmTst_ctor(void) {
QHsmTst *me = &l_hsmtst;
QHsm_ctor(&me->super, Q_STATE_CAST(&QHsmTst_initial));
}
+/*$enddef${HSMs::QHsmTst_ctor} #############################################*/
+/*$define${HSMs::QHsmTst} ##################################################*/
/*${HSMs::QHsmTst} .........................................................*/
/*${HSMs::QHsmTst::SM} .....................................................*/
static QState QHsmTst_initial(QHsmTst * const me, QEvt const * const e) {
- /* ${HSMs::QHsmTst::SM::initial} */
+ /*${HSMs::QHsmTst::SM::initial} */
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
- QS_FUN_DICTIONARY(&QHsm_top);
- QS_FUN_DICTIONARY(&QHsmTst_s);
- QS_FUN_DICTIONARY(&QHsmTst_s1);
- QS_FUN_DICTIONARY(&QHsmTst_s11);
- QS_FUN_DICTIONARY(&QHsmTst_s2);
- QS_FUN_DICTIONARY(&QHsmTst_s21);
- QS_FUN_DICTIONARY(&QHsmTst_s211);
-
QS_SIG_DICTIONARY(A_SIG, me);
QS_SIG_DICTIONARY(B_SIG, me);
QS_SIG_DICTIONARY(C_SIG, me);
@@ -79,33 +75,41 @@ static QState QHsmTst_initial(QHsmTst * const me, QEvt const * const e) {
QS_SIG_DICTIONARY(I_SIG, me);
QS_SIG_DICTIONARY(TERMINATE_SIG, me);
QS_SIG_DICTIONARY(IGNORE_SIG, me);
+
+ QS_FUN_DICTIONARY(&QHsmTst_s);
+ QS_FUN_DICTIONARY(&QHsmTst_s1);
+ QS_FUN_DICTIONARY(&QHsmTst_s11);
+ QS_FUN_DICTIONARY(&QHsmTst_s2);
+ QS_FUN_DICTIONARY(&QHsmTst_s21);
+ QS_FUN_DICTIONARY(&QHsmTst_s211);
+
return Q_TRAN(&QHsmTst_s2);
}
/*${HSMs::QHsmTst::SM::s} ..................................................*/
static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s} */
+ /*${HSMs::QHsmTst::SM::s} */
case Q_ENTRY_SIG: {
BSP_display("s-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s} */
+ /*${HSMs::QHsmTst::SM::s} */
case Q_EXIT_SIG: {
BSP_display("s-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::initial} */
+ /*${HSMs::QHsmTst::SM::s::initial} */
case Q_INIT_SIG: {
BSP_display("s-INIT;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
- /* ${HSMs::QHsmTst::SM::s::I} */
+ /*${HSMs::QHsmTst::SM::s::I} */
case I_SIG: {
- /* ${HSMs::QHsmTst::SM::s::I::[me->foo]} */
+ /*${HSMs::QHsmTst::SM::s::I::[me->foo]} */
if (me->foo) {
me->foo = 0U;
BSP_display("s-I;");
@@ -116,13 +120,13 @@ static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
}
break;
}
- /* ${HSMs::QHsmTst::SM::s::E} */
+ /*${HSMs::QHsmTst::SM::s::E} */
case E_SIG: {
BSP_display("s-E;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
- /* ${HSMs::QHsmTst::SM::s::TERMINATE} */
+ /*${HSMs::QHsmTst::SM::s::TERMINATE} */
case TERMINATE_SIG: {
BSP_exit();
status_ = Q_HANDLED();
@@ -139,33 +143,33 @@ static QState QHsmTst_s(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s::s1} */
+ /*${HSMs::QHsmTst::SM::s::s1} */
case Q_ENTRY_SIG: {
BSP_display("s1-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1} */
+ /*${HSMs::QHsmTst::SM::s::s1} */
case Q_EXIT_SIG: {
BSP_display("s1-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::initial} */
+ /*${HSMs::QHsmTst::SM::s::s1::initial} */
case Q_INIT_SIG: {
BSP_display("s1-INIT;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::I} */
+ /*${HSMs::QHsmTst::SM::s::s1::I} */
case I_SIG: {
BSP_display("s1-I;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::D} */
+ /*${HSMs::QHsmTst::SM::s::s1::D} */
case D_SIG: {
- /* ${HSMs::QHsmTst::SM::s::s1::D::[!me->foo]} */
+ /*${HSMs::QHsmTst::SM::s::s1::D::[!me->foo]} */
if (!me->foo) {
me->foo = 1U;
BSP_display("s1-D;");
@@ -176,25 +180,25 @@ static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
}
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::A} */
+ /*${HSMs::QHsmTst::SM::s::s1::A} */
case A_SIG: {
BSP_display("s1-A;");
status_ = Q_TRAN(&QHsmTst_s1);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::B} */
+ /*${HSMs::QHsmTst::SM::s::s1::B} */
case B_SIG: {
BSP_display("s1-B;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::F} */
+ /*${HSMs::QHsmTst::SM::s::s1::F} */
case F_SIG: {
BSP_display("s1-F;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::C} */
+ /*${HSMs::QHsmTst::SM::s::s1::C} */
case C_SIG: {
BSP_display("s1-C;");
status_ = Q_TRAN(&QHsmTst_s2);
@@ -211,27 +215,27 @@ static QState QHsmTst_s1(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s::s1::s11} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11} */
case Q_ENTRY_SIG: {
BSP_display("s11-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::s11} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11} */
case Q_EXIT_SIG: {
BSP_display("s11-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::s11::H} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11::H} */
case H_SIG: {
BSP_display("s11-H;");
status_ = Q_TRAN(&QHsmTst_s);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::s11::D} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11::D} */
case D_SIG: {
- /* ${HSMs::QHsmTst::SM::s::s1::s11::D::[me->foo]} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11::D::[me->foo]} */
if (me->foo) {
me->foo = 0U;
BSP_display("s11-D;");
@@ -242,7 +246,7 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
}
break;
}
- /* ${HSMs::QHsmTst::SM::s::s1::s11::G} */
+ /*${HSMs::QHsmTst::SM::s::s1::s11::G} */
case G_SIG: {
BSP_display("s11-G;");
status_ = Q_TRAN(&QHsmTst_s211);
@@ -259,27 +263,27 @@ static QState QHsmTst_s11(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s::s2} */
+ /*${HSMs::QHsmTst::SM::s::s2} */
case Q_ENTRY_SIG: {
BSP_display("s2-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2} */
+ /*${HSMs::QHsmTst::SM::s::s2} */
case Q_EXIT_SIG: {
BSP_display("s2-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::initial} */
+ /*${HSMs::QHsmTst::SM::s::s2::initial} */
case Q_INIT_SIG: {
BSP_display("s2-INIT;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::I} */
+ /*${HSMs::QHsmTst::SM::s::s2::I} */
case I_SIG: {
- /* ${HSMs::QHsmTst::SM::s::s2::I::[!me->foo]} */
+ /*${HSMs::QHsmTst::SM::s::s2::I::[!me->foo]} */
if (!me->foo) {
me->foo = 1U;
BSP_display("s2-I;");
@@ -290,13 +294,13 @@ static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
}
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::F} */
+ /*${HSMs::QHsmTst::SM::s::s2::F} */
case F_SIG: {
BSP_display("s2-F;");
status_ = Q_TRAN(&QHsmTst_s11);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::C} */
+ /*${HSMs::QHsmTst::SM::s::s2::C} */
case C_SIG: {
BSP_display("s2-C;");
status_ = Q_TRAN(&QHsmTst_s1);
@@ -313,37 +317,37 @@ static QState QHsmTst_s2(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s::s2::s21} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21} */
case Q_ENTRY_SIG: {
BSP_display("s21-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21} */
case Q_EXIT_SIG: {
BSP_display("s21-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::initial} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::initial} */
case Q_INIT_SIG: {
BSP_display("s21-INIT;");
status_ = Q_TRAN(&QHsmTst_s211);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::G} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::G} */
case G_SIG: {
BSP_display("s21-G;");
status_ = Q_TRAN(&QHsmTst_s1);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::A} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::A} */
case A_SIG: {
BSP_display("s21-A;");
status_ = Q_TRAN(&QHsmTst_s21);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::B} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::B} */
case B_SIG: {
BSP_display("s21-B;");
status_ = Q_TRAN(&QHsmTst_s211);
@@ -360,25 +364,25 @@ static QState QHsmTst_s21(QHsmTst * const me, QEvt const * const e) {
static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e) {
QState status_;
switch (e->sig) {
- /* ${HSMs::QHsmTst::SM::s::s2::s21::s211} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::s211} */
case Q_ENTRY_SIG: {
BSP_display("s211-ENTRY;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::s211} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::s211} */
case Q_EXIT_SIG: {
BSP_display("s211-EXIT;");
status_ = Q_HANDLED();
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::s211::H} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::s211::H} */
case H_SIG: {
BSP_display("s211-H;");
status_ = Q_TRAN(&QHsmTst_s);
break;
}
- /* ${HSMs::QHsmTst::SM::s::s2::s21::s211::D} */
+ /*${HSMs::QHsmTst::SM::s::s2::s21::s211::D} */
case D_SIG: {
BSP_display("s211-D;");
status_ = Q_TRAN(&QHsmTst_s21);
@@ -391,4 +395,4 @@ static QState QHsmTst_s211(QHsmTst * const me, QEvt const * const e) {
}
return status_;
}
-
+/*$enddef${HSMs::QHsmTst} ##################################################*/
diff --git a/examples/qutest/qhsmtst/qhsmtst.h b/examples/qutest/qhsmtst/qhsmtst.h
index a3e2b8cca..ef3e083b9 100644
--- a/examples/qutest/qhsmtst/qhsmtst.h
+++ b/examples/qutest/qhsmtst/qhsmtst.h
@@ -1,8 +1,9 @@
-/*****************************************************************************
+/*$file${.::qhsmtst.h} #####################################################*/
+/*
* Model: qhsmtst.qm
-* File: ./qhsmtst.h
+* File: ${.::qhsmtst.h}
*
-* This code has been generated by QM tool (see state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@@ -13,8 +14,8 @@
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
-*****************************************************************************/
-/*${.::qhsmtst.h} ..........................................................*/
+*/
+/*$endhead${.::qhsmtst.h} ##################################################*/
#ifndef qhsmtst_h
#define qhsmtst_h
@@ -35,12 +36,13 @@ enum QHsmTstSignals {
extern QHsm * const the_hsm; /* opaque pointer to the test HSM */
+/*$declare${HSMs::QHsmTst_ctor} ############################################*/
/*${HSMs::QHsmTst_ctor} ....................................................*/
void QHsmTst_ctor(void);
-
+/*$enddecl${HSMs::QHsmTst_ctor} ############################################*/
/* BSP functions to dispaly a message and exit */
void BSP_display(char const *msg);
void BSP_exit(void);
-#endif /* qhsmtst_h */
+#endif /* qhsmtst_h */
\ No newline at end of file
diff --git a/examples/qutest/qhsmtst/qhsmtst.qm b/examples/qutest/qhsmtst/qhsmtst.qm
index 08273cb38..6ee209443 100644
--- a/examples/qutest/qhsmtst/qhsmtst.qm
+++ b/examples/qutest/qhsmtst/qhsmtst.qm
@@ -1,25 +1,17 @@
-
+
QHsmTst is a contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.
Test active object
-
+
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
-QS_FUN_DICTIONARY(&QHsm_top);
-QS_FUN_DICTIONARY(&QHsmTst_s);
-QS_FUN_DICTIONARY(&QHsmTst_s1);
-QS_FUN_DICTIONARY(&QHsmTst_s11);
-QS_FUN_DICTIONARY(&QHsmTst_s2);
-QS_FUN_DICTIONARY(&QHsmTst_s21);
-QS_FUN_DICTIONARY(&QHsmTst_s211);
-
QS_SIG_DICTIONARY(A_SIG, me);
QS_SIG_DICTIONARY(B_SIG, me);
QS_SIG_DICTIONARY(C_SIG, me);
diff --git a/examples/qutest/qhsmtst/test_qhsm.c b/examples/qutest/qhsmtst/test_qhsm.c
index 1d38b330f..f04e75839 100644
--- a/examples/qutest/qhsmtst/test_qhsm.c
+++ b/examples/qutest/qhsmtst/test_qhsm.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: Fixture for QUTEST
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-15
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) 2005-2017 Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h"
@@ -41,25 +41,38 @@ enum {
};
/*--------------------------------------------------------------------------*/
-int main() {
+int main(int argc, char *argv[]) {
static QF_MPOOL_EL(QEvt) smlPoolSto[10]; /* small pool */
- QHsmTst_ctor(); /* instantiate the QHsmTst object */
+ QF_init(); /* initialize the framework */
- QF_init(); /* initialize the framework and the underlying RT kernel */
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* initialize event pools... */
QF_poolInit(smlPoolSto, sizeof(smlPoolSto), sizeof(smlPoolSto[0]));
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize the QS software tracing */
-
/* dictionaries... */
+ QS_FUN_DICTIONARY(&QHsm_top);
QS_OBJ_DICTIONARY(the_hsm);
QS_USR_DICTIONARY(BSP_DISPLAY);
+ QHsmTst_ctor(); /* instantiate the QHsmTst object */
+
return QF_run();
}
+/*--------------------------------------------------------------------------*/
+void BSP_display(char const *msg) {
+ QS_BEGIN(BSP_DISPLAY, (void *)0) /* application-specific record */
+ QS_STR(msg);
+ QS_END()
+}
+
+/*..........................................................................*/
+void BSP_exit(void) {
+}
+
/*--------------------------------------------------------------------------*/
void QS_onTestSetup(void) {
}
@@ -100,14 +113,3 @@ void QS_onTestEvt(QEvt *e) {
#endif
-/*--------------------------------------------------------------------------*/
-void BSP_display(char const *msg) {
- QS_BEGIN(BSP_DISPLAY, (void *)0) /* application-specific record */
- QS_STR(msg);
- QS_END()
-}
-
-/*..........................................................................*/
-void BSP_exit(void) {
-}
-
diff --git a/examples/qutest/qmsmtst/.qmsmtst b/examples/qutest/qmsmtst/.qmsmtst
new file mode 100644
index 000000000..9286d37aa
--- /dev/null
+++ b/examples/qutest/qmsmtst/.qmsmtst
@@ -0,0 +1,58 @@
+
+
+
+
+ - 1
+ - 0
+ - 3
+ - 0
+
+
+
+ - 2032128
+ - 0
+
+
+
+
+ - 0
+
+
+
+
+ - 0
+
+
+ - 0
+
+
+
+
+ - 0
+
+
+ - 0
+
+
+
+
+ - 0
+
+
+ - 0
+
+
+
+
+ - 0
+
+
+ - 0
+
+
+
+
+ - 0
+
+
+
diff --git a/examples/qutest/qmsmtst/qmsmtst.c b/examples/qutest/qmsmtst/qmsmtst.c
index a190c2c14..761514ae7 100644
--- a/examples/qutest/qmsmtst/qmsmtst.c
+++ b/examples/qutest/qmsmtst/qmsmtst.c
@@ -3,7 +3,7 @@
* Model: qmsmtst.qm
* File: ${.::qmsmtst.c}
*
-* This code has been generated by QM 4.2.0 (https://www.state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
@@ -102,7 +102,7 @@ static QMState const QMsmTst_s211_s = {
static QMsmTst l_msmtst; /* the only instance of the QMsmTst class */
/* global-scope definitions ---------------------------------------*/
-QMsm * const the_msm = (QMsm *)&l_msmtst; /* the opaque pointer */
+QMsm * const the_msm = (QMsm *)&l_msmtst; /* the opaque pointer */
/*$define${SMs::QMsmTst_ctor} ##############################################*/
/* Check for the minimum required QP version */
@@ -115,6 +115,7 @@ void QMsmTst_ctor(void) {
QMsm_ctor(&me->super, Q_STATE_CAST(&QMsmTst_initial));
}
/*$enddef${SMs::QMsmTst_ctor} ##############################################*/
+
/*$define${SMs::QMsmTst} ###################################################*/
/*${SMs::QMsmTst} ..........................................................*/
/*${SMs::QMsmTst::SM} ......................................................*/
@@ -136,13 +137,6 @@ static QState QMsmTst_initial(QMsmTst * const me, QEvt const * const e) {
me->foo = 0U;
BSP_display("top-INIT;");
- QS_FUN_DICTIONARY(&QMsmTst_s);
- QS_FUN_DICTIONARY(&QMsmTst_s1);
- QS_FUN_DICTIONARY(&QMsmTst_s11);
- QS_FUN_DICTIONARY(&QMsmTst_s2);
- QS_FUN_DICTIONARY(&QMsmTst_s21);
- QS_FUN_DICTIONARY(&QMsmTst_s211);
-
QS_SIG_DICTIONARY(A_SIG, me);
QS_SIG_DICTIONARY(B_SIG, me);
QS_SIG_DICTIONARY(C_SIG, me);
@@ -154,6 +148,14 @@ static QState QMsmTst_initial(QMsmTst * const me, QEvt const * const e) {
QS_SIG_DICTIONARY(I_SIG, me);
QS_SIG_DICTIONARY(TERMINATE_SIG, me);
QS_SIG_DICTIONARY(IGNORE_SIG, me);
+
+ QS_FUN_DICTIONARY(&QMsmTst_s);
+ QS_FUN_DICTIONARY(&QMsmTst_s1);
+ QS_FUN_DICTIONARY(&QMsmTst_s11);
+ QS_FUN_DICTIONARY(&QMsmTst_s2);
+ QS_FUN_DICTIONARY(&QMsmTst_s21);
+ QS_FUN_DICTIONARY(&QMsmTst_s211);
+
return QM_TRAN_INIT(&tatbl_);
}
/*${SMs::QMsmTst::SM::s} ...................................................*/
diff --git a/examples/qutest/qmsmtst/qmsmtst.h b/examples/qutest/qmsmtst/qmsmtst.h
index 359fe23d5..5ab4af8df 100644
--- a/examples/qutest/qmsmtst/qmsmtst.h
+++ b/examples/qutest/qmsmtst/qmsmtst.h
@@ -3,7 +3,7 @@
* Model: qmsmtst.qm
* File: ${.::qmsmtst.h}
*
-* This code has been generated by QM 4.2.0 (https://www.state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
diff --git a/examples/qutest/qmsmtst/qmsmtst.qm b/examples/qutest/qmsmtst/qmsmtst.qm
index 8a93ba3bc..7125272e9 100644
--- a/examples/qutest/qmsmtst/qmsmtst.qm
+++ b/examples/qutest/qmsmtst/qmsmtst.qm
@@ -1,24 +1,17 @@
-
+
QMsmTst is a QMsm state machine test based on the contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.
Test active object
-
+
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
-QS_FUN_DICTIONARY(&QMsmTst_s);
-QS_FUN_DICTIONARY(&QMsmTst_s1);
-QS_FUN_DICTIONARY(&QMsmTst_s11);
-QS_FUN_DICTIONARY(&QMsmTst_s2);
-QS_FUN_DICTIONARY(&QMsmTst_s21);
-QS_FUN_DICTIONARY(&QMsmTst_s211);
-
QS_SIG_DICTIONARY(A_SIG, me);
QS_SIG_DICTIONARY(B_SIG, me);
QS_SIG_DICTIONARY(C_SIG, me);
@@ -284,7 +277,7 @@ enum QMsmTstSignals {
extern QMsm * const the_msm; /* opaque pointer to the test MSM */
-$declare(SMs::QMsmTst_ctor)
+$declare${SMs::QMsmTst_ctor}
/* BSP functions to dispaly a message and exit */
void BSP_display(char const *msg);
@@ -296,15 +289,16 @@ void BSP_exit(void);
#include "qpc.h"
#include "qmsmtst.h"
-$declare(SMs::QMsmTst)
+$declare${SMs::QMsmTst}
static QMsmTst l_msmtst; /* the only instance of the QMsmTst class */
/* global-scope definitions ---------------------------------------*/
-QMsm * const the_msm = (QMsm *)&l_msmtst; /* the opaque pointer */
+QMsm * const the_msm = (QMsm *)&l_msmtst; /* the opaque pointer */
+
+$define${SMs::QMsmTst_ctor}
-$define(SMs::QMsmTst_ctor)
-$define(SMs::QMsmTst)
+$define${SMs::QMsmTst}
diff --git a/examples/qutest/qmsmtst/test_qmsm.c b/examples/qutest/qmsmtst/test_qmsm.c
index 0fccd2892..746af04f5 100644
--- a/examples/qutest/qmsmtst/test_qmsm.c
+++ b/examples/qutest/qmsmtst/test_qmsm.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: Fixture for QUTEST
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-15
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) 2005-2017 Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h"
@@ -41,22 +41,23 @@ enum {
};
/*--------------------------------------------------------------------------*/
-int main() {
+int main(int argc, char *argv[]) {
static QF_MPOOL_EL(QEvt) smlPoolSto[10]; /* small pool */
- QMsmTst_ctor(); /* instantiate the QMsmTst object */
+ QF_init(); /* initialize the framework */
- QF_init(); /* initialize the framework and the underlying RT kernel */
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* initialize event pools... */
QF_poolInit(smlPoolSto, sizeof(smlPoolSto), sizeof(smlPoolSto[0]));
- Q_ALLEGE(QS_INIT((void *)0)); /* initialize the QS software tracing */
-
/* dictionaries... */
QS_OBJ_DICTIONARY(the_msm);
QS_USR_DICTIONARY(BSP_DISPLAY);
+ QMsmTst_ctor(); /* instantiate the QHsmTst object */
+
return QF_run();
}
diff --git a/examples/qutest/self_test/test_qutest.c b/examples/qutest/self_test/test_qutest.c
index b66aaba8e..49a69e660 100644
--- a/examples/qutest/self_test/test_qutest.c
+++ b/examples/qutest/self_test/test_qutest.c
@@ -1,13 +1,13 @@
/*****************************************************************************
* Purpose: Fixture for QUTEST self-test
-* Last Updated for Version: 5.9.0
-* Date of the Last Update: 2017-05-12
+* Last Updated for Version: 6.3.1
+* Date of the Last Update: 2018-05-21
*
* Q u a n t u m L e a P s
* ---------------------------
* innovating embedded systems
*
-* Copyright (C) 2005-2017 Quantum Leaps, LLC. All rights reserved.
+* Copyright (C) 2005-2018 Quantum Leaps, LLC. All rights reserved.
*
* This program is open source software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License as published
@@ -28,7 +28,7 @@
* along with this program. If not, see .
*
* Contact information:
-* https://state-machine.com
+* https://www.state-machine.com
* mailto:info@state-machine.com
*****************************************************************************/
#include "qpc.h" /* for QUTEST */
@@ -48,8 +48,11 @@ enum {
/*--------------------------------------------------------------------------*/
int main(int argc, char *argv[]) {
- QF_init(); /* initialize the framework and the underlying RT kernel */
- Q_ALLEGE(QS_INIT(argc <= 1 ? (void *)0 : argv[1]) != (uint8_t)0);
+
+ QF_init(); /* initialize the framework */
+
+ /* initialize the QS software tracing */
+ Q_ALLEGE(QS_INIT(argc > 1 ? argv[1] : (void *)0));
/* global filter */
QS_FILTER_ON(QS_ALL_RECORDS); /* enable all QS records */
diff --git a/examples/win32/qhsmtst/Makefile b/examples/win32/qhsmtst/Makefile
index ee66450be..60f909176 100644
--- a/examples/win32/qhsmtst/Makefile
+++ b/examples/win32/qhsmtst/Makefile
@@ -1,7 +1,7 @@
##############################################################################
# Product: Makefile for QP/C, QHsmTst console, Win32, MinGW
-# Last Updated for Version: 5.6.4
-# Date of the Last Update: 2016-05-04
+# Last Updated for Version: 6.3.0
+# Date of the Last Update: 2018-05-07
#
# Q u a n t u m L e a P s
# ---------------------------
@@ -28,8 +28,8 @@
# along with this program. If not, see .
#
# Contact information:
-# Web: www.state-machine.com
-# Email: info@state-machine.com
+# https://www.state-machine.com
+# mailto:info@state-machine.com
##############################################################################
# examples of invoking this Makefile:
# building configurations: Debug (default), Release, and Spy
@@ -67,7 +67,7 @@ QP_PORT_DIR := $(QPC)/ports/win32
# list of all source directories used by this project
VPATH = \
- . \
+ .
# list of all include directories needed by this project
INCLUDES = \
@@ -140,15 +140,6 @@ CPPFLAGS = -ffunction-sections -fdata-sections \
else ifeq (spy, $(CONF)) # Spy configuration ................................
-# make sure that QTOOLS exists...
-ifeq ("$(wildcard $(QTOOLS))","")
-$(error QTOOLS not found. Please install Qtools and define QTOOLS env. variable)
-endif
-
-INCLUDES += -I$(QTOOLS)/qspy/include
-VPATH += $(QTOOLS)/qspy/source
-C_SRCS += qspy.c
-
BIN_DIR := spy
CFLAGS = -g -ffunction-sections -fdata-sections \
diff --git a/examples/win32/qhsmtst/qhsmtst.c b/examples/win32/qhsmtst/qhsmtst.c
index 2e3e01bc7..a5456d916 100644
--- a/examples/win32/qhsmtst/qhsmtst.c
+++ b/examples/win32/qhsmtst/qhsmtst.c
@@ -3,7 +3,7 @@
* Model: qhsmtst.qm
* File: ${.::qhsmtst.c}
*
-* This code has been generated by QM tool (https://state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
@@ -46,8 +46,8 @@ QHsm * const the_hsm = (QHsm *)&l_hsmtst; /* the opaque pointer */
/*$define${HSMs::QHsmTst_ctor} #############################################*/
/* Check for the minimum required QP version */
-#if ((QP_VERSION < 601) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
-#error qpc version 6.0.1 or higher required
+#if ((QP_VERSION < 630) || (QP_VERSION != ((QP_RELEASE^4294967295U) % 0x3E8)))
+#error qpc version 6.3.0 or higher required
#endif
/*${HSMs::QHsmTst_ctor} ....................................................*/
void QHsmTst_ctor(void) {
@@ -63,6 +63,14 @@ static QState QHsmTst_initial(QHsmTst * const me, QEvt const * const e) {
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
+
+ QS_FUN_DICTIONARY(&QHsmTst_s);
+ QS_FUN_DICTIONARY(&QHsmTst_s1);
+ QS_FUN_DICTIONARY(&QHsmTst_s11);
+ QS_FUN_DICTIONARY(&QHsmTst_s2);
+ QS_FUN_DICTIONARY(&QHsmTst_s21);
+ QS_FUN_DICTIONARY(&QHsmTst_s211);
+
return Q_TRAN(&QHsmTst_s2);
}
/*${HSMs::QHsmTst::SM::s} ..................................................*/
diff --git a/examples/win32/qhsmtst/qhsmtst.h b/examples/win32/qhsmtst/qhsmtst.h
index c37899a0f..ef3e083b9 100644
--- a/examples/win32/qhsmtst/qhsmtst.h
+++ b/examples/win32/qhsmtst/qhsmtst.h
@@ -3,7 +3,7 @@
* Model: qhsmtst.qm
* File: ${.::qhsmtst.h}
*
-* This code has been generated by QM tool (https://state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This program is open source software: you can redistribute it and/or
diff --git a/examples/win32/qhsmtst/qhsmtst.qm b/examples/win32/qhsmtst/qhsmtst.qm
index fa4d7331d..b5a2fd7ac 100644
--- a/examples/win32/qhsmtst/qhsmtst.qm
+++ b/examples/win32/qhsmtst/qhsmtst.qm
@@ -1,12 +1,12 @@
-
+
QHsmTst is a contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.
Test active object
-
+
(void)e; /* avoid compiler warning */
me->foo = 0U;
diff --git a/examples/win32/qmsmtst/qmsmtst.c b/examples/win32/qmsmtst/qmsmtst.c
index ae34f7136..5a7455097 100644
--- a/examples/win32/qmsmtst/qmsmtst.c
+++ b/examples/win32/qmsmtst/qmsmtst.c
@@ -3,7 +3,7 @@
* Model: qmsmtst.qm
* File: ${.::qmsmtst.c}
*
-* This code has been generated by QM 4.2.0 (https://www.state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
@@ -135,6 +135,14 @@ static QState QMsmTst_initial(QMsmTst * const me, QEvt const * const e) {
(void)e; /* avoid compiler warning */
me->foo = 0U;
BSP_display("top-INIT;");
+
+ QS_FUN_DICTIONARY(&QMsmTst_s);
+ QS_FUN_DICTIONARY(&QMsmTst_s1);
+ QS_FUN_DICTIONARY(&QMsmTst_s11);
+ QS_FUN_DICTIONARY(&QMsmTst_s2);
+ QS_FUN_DICTIONARY(&QMsmTst_s21);
+ QS_FUN_DICTIONARY(&QMsmTst_s211);
+
return QM_TRAN_INIT(&tatbl_);
}
/*${SMs::QMsmTst::SM::s} ...................................................*/
diff --git a/examples/win32/qmsmtst/qmsmtst.h b/examples/win32/qmsmtst/qmsmtst.h
index 359fe23d5..5ab4af8df 100644
--- a/examples/win32/qmsmtst/qmsmtst.h
+++ b/examples/win32/qmsmtst/qmsmtst.h
@@ -3,7 +3,7 @@
* Model: qmsmtst.qm
* File: ${.::qmsmtst.h}
*
-* This code has been generated by QM 4.2.0 (https://www.state-machine.com/qm).
+* This code has been generated by QM 4.2.1 (https://www.state-machine.com/qm).
* DO NOT EDIT THIS FILE MANUALLY. All your changes will be lost.
*
* This code is covered by the following QP license:
diff --git a/examples/win32/qmsmtst/qmsmtst.qm b/examples/win32/qmsmtst/qmsmtst.qm
index 829dd4049..665fd0f38 100644
--- a/examples/win32/qmsmtst/qmsmtst.qm
+++ b/examples/win32/qmsmtst/qmsmtst.qm
@@ -1,12 +1,12 @@
-
+
QMsmTst is a QMsm state machine test based on the contrived state machine from Chapter 2 of the PSiCC2 book for testing all possible transition topologies with up to 4-levels of state nesting.
Test active object
-
+
(void)e; /* avoid compiler warning */
me->foo = 0U;
diff --git a/include/qep.h b/include/qep.h
index bc3d896ef..0692362ab 100644
--- a/include/qep.h
+++ b/include/qep.h
@@ -4,8 +4,8 @@
* @ingroup qep
* @cond
******************************************************************************
-* Last updated for version 6.3.0
-* Last updated on 2018-05-09
+* Last updated for version 6.3.1
+* Last updated on 2018-05-22
*
* Q u a n t u m L e a P s
* ---------------------------
@@ -45,16 +45,16 @@
* major version number, Y is a 1-digit minor version number, and Z is
* a 1-digit release number.
*/
-#define QP_VERSION 630
+#define QP_VERSION 631
/*! The current QP version number string of the form X.Y.Z, where X is
* a 1-digit major version number, Y is a 1-digit minor version number,
* and Z is a 1-digit release number.
*/
-#define QP_VERSION_STR "6.3.0"
+#define QP_VERSION_STR "6.3.1"
-/*! Tamperproof current QP release (6.3.0) and date (2018-05-10) */
-#define QP_RELEASE 0x946859A9U
+/*! Tamperproof current QP release (6.3.1) and date (2018-05-24) */
+#define QP_RELEASE 0x946636C8U
/****************************************************************************/
diff --git a/version-6.3.0 b/version-6.3.0
deleted file mode 100644
index 125cbe025..000000000
--- a/version-6.3.0
+++ /dev/null
@@ -1,2 +0,0 @@
-QP/C 6.3.0
-2018-05-10
diff --git a/version-6.3.1 b/version-6.3.1
new file mode 100644
index 000000000..5c25abf42
--- /dev/null
+++ b/version-6.3.1
@@ -0,0 +1,2 @@
+QP/C 6.3.1
+2018-05-24