Skip to content

Commit 01dd96a

Browse files
committed
6.9.4
1 parent cf38676 commit 01dd96a

File tree

6 files changed

+59
-15
lines changed

6 files changed

+59
-15
lines changed
File renamed without changes.

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
[![Object-Oriented Programming in C](img/thumbnail.jpg)](https://www.state-machine.com/oop)
2+
3+
4+
## Brought to you by:
5+
[![Quantum Leaps](https://www.state-machine.com/attachments/logo_ql_400.png)](https://www.state-machine.co)
6+
7+
---------------------------------------------------------------------
18
![QP-Arduino](https://www.state-machine.com/img/logo_qp-arduino.png)
29

310
This README provides a quick overview of QP for Arduino.

libraries/qpn_avr/src/qepn.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @ingroup qep
55
* @cond
66
******************************************************************************
7-
* Last updated for version 6.8.0
7+
* Last updated for version 6.8.2
88
* Last updated on 2020-03-08
99
*
1010
* Q u a n t u m L e a P s
@@ -62,6 +62,7 @@ static int_fast8_t QHsm_tran_(QHsm * const me,
6262

6363
/****************************************************************************/
6464
/**
65+
* @protected @memberof QHsm
6566
* @description
6667
* Performs the first step of HSM initialization by assigning the initial
6768
* pseudostate to the currently active state of the state machine.
@@ -92,6 +93,7 @@ void QHsm_ctor(QHsm * const me, QStateHandler initial) {
9293

9394
/****************************************************************************/
9495
/**
96+
* @private @memberof QHsm
9597
* @description
9698
* Executes the top-most initial transition in a HSM.
9799
*
@@ -152,6 +154,7 @@ void QHsm_init_(QHsm * const me) {
152154

153155
/****************************************************************************/
154156
/**
157+
* @protected @memberof QHsm
155158
* @description
156159
* QHsm_top() is the ultimate root of state hierarchy in all HSMs derived
157160
* from ::QHsm.
@@ -173,6 +176,7 @@ QState QHsm_top(void const * const me) {
173176

174177
/****************************************************************************/
175178
/**
179+
* @private @memberof QHsm
176180
* @description
177181
* Dispatches an event for processing to a hierarchical state machine (HSM).
178182
* The processing of an event represents one run-to-completion (RTC) step.
@@ -274,6 +278,7 @@ void QHsm_dispatch_(QHsm * const me) {
274278

275279
/****************************************************************************/
276280
/**
281+
* @private @memberof QHsm
277282
* @description
278283
* Static helper function to execute transition sequence in a hierarchical
279284
* state machine (HSM).
@@ -419,6 +424,7 @@ static int_fast8_t QHsm_tran_(QHsm * const me,
419424

420425
/****************************************************************************/
421426
/**
427+
* @private @memberof QHsm
422428
* @description
423429
* Finds the child state of the given @c parent, such that this child state
424430
* is an ancestor of the currently active state. The main purpose of this

libraries/qpn_avr/src/qepn.h

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,9 @@ struct QHsmVtable {
224224
#define QHSM_DISPATCH(me_) ((*(me_)->vptr->dispatch)((me_)))
225225

226226
/* public methods */
227-
/*! protected "constructor" of a HSM. */
227+
/*! "constructor" of a HSM.
228+
* @protected @memberof QHsm
229+
*/
228230
void QHsm_ctor(QHsm * const me, QStateHandler initial);
229231

230232
/*! Obtain the current active state from a HSM (read only). */
@@ -235,7 +237,9 @@ void QHsm_ctor(QHsm * const me, QStateHandler initial);
235237
*/
236238
#define QHsm_state(me_) (Q_STATE_CAST(Q_HSM_UPCAST(me_)->state))
237239

238-
/*! Obtain the current active child state of a given parent in QHsm */
240+
/*! Obtain the current active child state of a given parent in QHsm
241+
* @public @memberof QHsm
242+
*/
239243
/**
240244
* @param[in] me_ pointer (see @ref oop)
241245
* @param[in] parent_ pointer to the parent state-handler
@@ -249,13 +253,19 @@ void QHsm_ctor(QHsm * const me, QStateHandler initial);
249253
QStateHandler QHsm_childState_(QHsm * const me,
250254
QStateHandler const parent);
251255

252-
/*! Implementation of the top-most initial transition in QHsm. */
256+
/*! Implementation of the top-most initial transition in QHsm.
257+
* @private @memberof QHsm
258+
*/
253259
void QHsm_init_(QHsm * const me);
254260

255-
/*! Implementation of dispatching events to QHsm. */
261+
/*! Implementation of dispatching events to QHsm.
262+
* @private @memberof QHsm
263+
*/
256264
void QHsm_dispatch_(QHsm * const me);
257265

258-
/*! the top-state. */
266+
/*! the top-state.
267+
* @protected @memberof QHsm
268+
*/
259269
QState QHsm_top(void const * const me);
260270

261271

libraries/qpn_avr/src/qfn.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @ingroup qfn
55
* @cond
66
******************************************************************************
7-
* Last updated for version 6.8.0
7+
* Last updated for version 6.8.2
88
* Last updated on 2020-03-08
99
*
1010
* Q u a n t u m L e a P s
@@ -93,6 +93,9 @@ uint8_t const Q_ROM QF_log2Lkup[16] = {
9393
#endif /* QF_LOG2 */
9494

9595
/****************************************************************************/
96+
/**
97+
* @protected @memberof QActive
98+
*/
9699
void QActive_ctor(QActive * const me, QStateHandler initial) {
97100
static QActiveVtable const vtable = { /* QActive virtual table */
98101
{ &QHsm_init_,
@@ -116,6 +119,7 @@ void QActive_ctor(QActive * const me, QStateHandler initial) {
116119

117120
/****************************************************************************/
118121
/**
122+
* @private @memberof QActive
119123
* @description
120124
* Direct event posting is the simplest asynchronous communication method
121125
* available in QF-nano.
@@ -201,6 +205,7 @@ bool QActive_postX_(QActive * const me, uint_fast8_t margin,
201205

202206
/****************************************************************************/
203207
/**
208+
* @private @memberof QActive
204209
* @description
205210
* Direct event posting is the simplest asynchronous communication method
206211
* available in QF-nano.
@@ -424,6 +429,7 @@ void QF_tickXISR(uint_fast8_t const tickRate) {
424429

425430
/****************************************************************************/
426431
/**
432+
* @public @memberof QActive
427433
* @description
428434
* Arms a time event to fire in a specified number of clock ticks at the
429435
* specified tick rate. The timeout signal gets directly posted (using the
@@ -475,6 +481,7 @@ void QActive_armX(QActive * const me, uint_fast8_t const tickRate,
475481

476482
/****************************************************************************/
477483
/**
484+
* @public @memberof QActive
478485
* @description
479486
* The time event of the active object gets disarmed (stopped).
480487
*

libraries/qpn_avr/src/qfn.h

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @ingroup qfn
55
* @cond
66
******************************************************************************
7-
* Last updated for version 6.8.0
7+
* Last updated for version 6.8.2
88
* Last updated on 2020-03-08
99
*
1010
* Q u a n t u m L e a P s
@@ -97,7 +97,9 @@
9797
#endif
9898

9999
/****************************************************************************/
100-
/*! QActive active object (based on QHsm-implementation) */
100+
/*! QActive active object (based on QHsm-implementation)
101+
* @extends QHsm
102+
*/
101103
/**
102104
* @description
103105
* QActive is the base structure for derivation of active objects. Active
@@ -141,7 +143,9 @@ typedef struct QActive {
141143

142144
} QActive;
143145

144-
/*! Virtual table for the QActive class */
146+
/*! Virtual table for the QActive class
147+
* @extends QHsmVtable
148+
*/
145149
typedef struct {
146150
QHsmVtable super; /*!< inherits QHsmVtable */
147151

@@ -278,11 +282,15 @@ void QActive_ctor(QActive * const me, QStateHandler initial);
278282
QF_ACTIVE_CAST((me_)), (margin_), \
279283
(enum_t)(sig_), (QParam)(par_)))
280284

281-
/*! Implementation of the task-level event posting */
285+
/*! Implementation of the task-level event posting
286+
* @private @memberof QActive
287+
*/
282288
bool QActive_postX_(QActive * const me, uint_fast8_t margin,
283289
enum_t const sig, QParam const par);
284290

285-
/*! Implementation of the ISR-level event posting */
291+
/*! Implementation of the ISR-level event posting
292+
* @private @memberof QActive
293+
*/
286294
bool QActive_postXISR_(QActive * const me, uint_fast8_t margin,
287295
enum_t const sig, QParam const par);
288296

@@ -322,16 +330,22 @@ void QActive_ctor(QActive * const me, QStateHandler initial);
322330
void QF_tickXISR(uint_fast8_t const tickRate);
323331

324332
#ifdef QF_TIMEEVT_PERIODIC
325-
/*! Arm the QP-nano one-shot time event. */
333+
/*! Arm the QP-nano one-shot time event.
334+
* @public @memberof QActive
335+
*/
326336
void QActive_armX(QActive * const me, uint_fast8_t const tickRate,
327337
QTimeEvtCtr const nTicks, QTimeEvtCtr const interval);
328338
#else
329-
/*! Arm the QP-nano one-shot time event. */
339+
/*! Arm the QP-nano one-shot time event.
340+
* @public @memberof QActive
341+
*/
330342
void QActive_armX(QActive * const me, uint_fast8_t const tickRate,
331343
QTimeEvtCtr const nTicks);
332344
#endif
333345

334-
/*! Disarm a time event. Since the tick counter */
346+
/*! Disarm a time event. Since the tick counter
347+
* @public @memberof QActive
348+
*/
335349
void QActive_disarmX(QActive * const me, uint_fast8_t const tickRate);
336350

337351
#endif /* (QF_TIMEEVT_CTR_SIZE != 0U) */

0 commit comments

Comments
 (0)