QP/C  5.9.7
qpc.h File Reference
QEP | QF | QV | QK | QXK | QS

QP/C public interface including backwards-compatibility layer. More...

#include "qf_port.h"
#include "qassert.h"
#include "qs_port.h"

Go to the source code of this file.

Macros

#define QP_API_VERSION   0
 Specifies the backwards compatibility with the QP/C API version. More...
 
#define QMSM_INIT(me_, e_)   QHSM_INIT((me_), (e_))
 
#define QMSM_DISPATCH(me_, e_)   QHSM_DISPATCH((me_), (e_))
 
#define QFsm_ctor   QHsm_ctor
 
#define Q_IGNORED()   (Q_SUPER(&QHsm_top))
 deprecated macro to call in QFsm state-handler when it ignores (does not handle) an event (instead use Q_SUPER())
 
#define QF_onIdle   QV_onIdle
 
#define Q_ROM
 
#define Q_ROM_BYTE(rom_var_)   (rom_var_)
 
#define Q_ROM_VAR
 
#define QMsm_init(me_, e_)   QHSM_INIT((me_), (e_))
 
#define QMsm_dispatch(me_, e_)   QHSM_DISPATCH((me_), (e_))
 
#define QFsm_init(me_, e_)   QHSM_INIT((me_), (e_))
 
#define QFsm_dispatch(me_, e_)   QHSM_DISPATCH((me_), (e_))
 
#define QEQueue_postFIFO(me_, e_)   ((void)QEQueue_post((me_), (e_), (uint16_t)0))
 
#define QActive_start   QActive_start_
 
#define QActive_postFIFO(me_, e_, sender_)   QACTIVE_POST((me_), (e_), (sender_))
 
#define QF_tick(sender_)   QF_TICK((sender_))
 
#define QTimeEvt_ctor(me_, sig_)   QTimeEvt_ctorX((me_), (QActive *)0, (sig_), (uint8_t)0)
 
#define QTimeEvt_postIn(me_, act_, nTicks_)
 
#define QTimeEvt_postEvery(me_, act_, nTicks_)
 
#define QS_RESET()   ((void)0)
 

Typedefs

typedef QHsm QFsm
 
typedef QEvt QEvent
 

Variables

char_t const Q_APP_BUILD_DATE [12]
 Symbols for time-stamping the application build. More...
 
char_t const Q_APP_BUILD_TIME [9]
 

Detailed Description

QP/C public interface including backwards-compatibility layer.

Definition in file qpc.h.

Macro Definition Documentation

◆ QP_API_VERSION

#define QP_API_VERSION   0

Specifies the backwards compatibility with the QP/C API version.

Description
For example, QP_API_VERSION=450 will cause generating the compatibility layer with QP/C version 4.5.0 and newer, but not older than 4.5.0. QP_API_VERSION=0 causes generation of the compatibility layer "from the begining of time", which is the maximum backwards compatibilty. This is the default.

Conversely, QP_API_VERSION=9999 means that no compatibility layer should be generated. This setting is useful for checking if an application complies with the latest QP/C API.

Definition at line 90 of file qpc.h.

◆ QMSM_INIT

#define QMSM_INIT (   me_,
  e_ 
)    QHSM_INIT((me_), (e_))
Deprecated:
call to the QMSM_INIT() operation; instead use: QHSM_INIT()

Definition at line 98 of file qpc.h.

◆ QMSM_DISPATCH

#define QMSM_DISPATCH (   me_,
  e_ 
)    QHSM_DISPATCH((me_), (e_))
Deprecated:
call to the QMSM_DISPATCH() operation; instead use: QHSM_DISPATCH()

Definition at line 102 of file qpc.h.

◆ QFsm_ctor

#define QFsm_ctor   QHsm_ctor
Deprecated:
QFsm state machine constructor; instead use: QHsm_ctor()

Definition at line 119 of file qpc.h.

◆ QF_onIdle

#define QF_onIdle   QV_onIdle
Deprecated:
macro for cooperativew "Vanilla" kernel; instead use: QV_onIdle()

Definition at line 128 of file qpc.h.

◆ Q_ROM

#define Q_ROM
Deprecated:
macro for odd 8-bit CPUs.

Definition at line 135 of file qpc.h.

◆ Q_ROM_BYTE

#define Q_ROM_BYTE (   rom_var_)    (rom_var_)
Deprecated:
macro for odd 8-bit CPUs.

Definition at line 138 of file qpc.h.

◆ Q_ROM_VAR

#define Q_ROM_VAR
Deprecated:
macro for odd 8-bit CPUs.

Definition at line 141 of file qpc.h.

◆ QMsm_init

#define QMsm_init (   me_,
  e_ 
)    QHSM_INIT((me_), (e_))
Deprecated:
call to the QMsm init operation; instead use: QHSM_INIT()

Definition at line 144 of file qpc.h.

◆ QMsm_dispatch

#define QMsm_dispatch (   me_,
  e_ 
)    QHSM_DISPATCH((me_), (e_))
Deprecated:
call to the QMsm dispatch operation; instead use: QHSM_DISPATCH()

Definition at line 148 of file qpc.h.

◆ QFsm_init

#define QFsm_init (   me_,
  e_ 
)    QHSM_INIT((me_), (e_))
Deprecated:
call to the QFsm init operation; instead use: QHSM_INIT()

Definition at line 151 of file qpc.h.

◆ QFsm_dispatch

#define QFsm_dispatch (   me_,
  e_ 
)    QHSM_DISPATCH((me_), (e_))
Deprecated:
to the QFsm dispatch operation; instead use: QHSM_DISPATCH()

Definition at line 155 of file qpc.h.

◆ QEQueue_postFIFO

#define QEQueue_postFIFO (   me_,
  e_ 
)    ((void)QEQueue_post((me_), (e_), (uint16_t)0))
Deprecated:
interface defined for backwards compatibility; instead use: QEQueue_post()

Definition at line 159 of file qpc.h.

◆ QActive_start

#define QActive_start   QActive_start_
Deprecated:
name of the QActive start operation; instead use: QACTIVE_START()

Definition at line 164 of file qpc.h.

◆ QActive_postFIFO

#define QActive_postFIFO (   me_,
  e_,
  sender_ 
)    QACTIVE_POST((me_), (e_), (sender_))
Deprecated:
call to QActive post FIFO operation; instead use: QACTIVE_POST()

Definition at line 171 of file qpc.h.

◆ QF_tick

#define QF_tick (   sender_)    QF_TICK((sender_))
Deprecated:
call of QF system clock tick (for rate 0); instead use: QF_TICK()

Definition at line 176 of file qpc.h.

◆ QTimeEvt_ctor

#define QTimeEvt_ctor (   me_,
  sig_ 
)    QTimeEvt_ctorX((me_), (QActive *)0, (sig_), (uint8_t)0)
Deprecated:
time event constructor; instead use: QTimeEvt_ctorX()

Definition at line 187 of file qpc.h.

◆ QTimeEvt_postIn

#define QTimeEvt_postIn (   me_,
  act_,
  nTicks_ 
)
Value:
do { \
(me_)->act = (act_); \
QTimeEvt_armX((me_), (nTicks_), (uint8_t)0); \
} while (0)
unsigned char uint8_t
exact-width 8-bit unsigned int
Definition: stdint.h:28
Deprecated:
time event one-shot arm operation; instead use: QTimeEvt_armX()

Definition at line 192 of file qpc.h.

◆ QTimeEvt_postEvery

#define QTimeEvt_postEvery (   me_,
  act_,
  nTicks_ 
)
Value:
do { \
(me_)->act = (act_); \
QTimeEvt_armX((me_), (nTicks_), (nTicks_)); \
} while (0)
Deprecated:
time event periodic arm operation; instead use: QTimeEvt_armX()

Definition at line 199 of file qpc.h.

◆ QS_RESET

#define QS_RESET ( )    ((void)0)
Deprecated:
macro for generating QS-Reset trace record.

Definition at line 205 of file qpc.h.

Typedef Documentation

◆ QFsm

typedef QHsm QFsm
Deprecated:
QFsm state machine; instead use: QHsm.

Legacy state machines coded in the "QFsm-style" will continue to work, but will use the QHsm implementation internally. There is no longer any efficiency advantage in using the "QFsm-style" state machines.

Note
For efficiency, the recommended migration path is to use the QMsm state machine and the QM modeling tool.

Definition at line 117 of file qpc.h.

◆ QEvent

typedef QEvt QEvent
Deprecated:
typedef for backwards compatibility; instead use QEvt

Definition at line 212 of file qpc.h.

Variable Documentation

◆ Q_APP_BUILD_DATE

char_t const Q_APP_BUILD_DATE[12]

Symbols for time-stamping the application build.

Description
This header file must be included directly or indirectly in all application modules (*.c files) that use QP/C.
Description
The exernal symbols Q_APP_BUILD_DATE and Q_APP_BUILD_TIME are defined in the module qstamp.c. This module needs to be re-compiled for every software build.