QP/C++  6.5.1
qpcpp.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"
Include dependency graph for qpcpp.h:

Go to the source code of this file.

Namespaces

 QP
 namespace associated with the QP/C++ framework
 

Macros

#define QP_API_VERSION   0
 Macro that specifies the backwards compatibility with the QP/C++ API version. More...
 
#define QFsm   QHsm
 
#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()) More...
 
#define Q_ROM
 
#define Q_ROM_BYTE(rom_var_)   (rom_var_)
 
#define Q_ROM_VAR
 
#define postFIFO(e_, sender_)   POST((e_), (sender_))
 
#define tick(sender_)   TICK_X(static_cast<uint8_t>(0), (sender_))
 
#define QS_RESET()   ((void)0)
 
#define publish(e_, sender_)   PUBLISH((e_), (sender_))
 

Typedefs

typedef QEvt QEvent
 deprecated typedef for backwards compatibility More...
 

Detailed Description

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

Definition in file qpcpp.h.

Macro Definition Documentation

◆ QP_API_VERSION

#define QP_API_VERSION   0

Macro that specifies the backwards compatibility with the QP/C++ API version.

Description
This header file must be included directly or indirectly in all application modules (*.cpp files) that use QP/C++.
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 60 of file qpcpp.h.

◆ QFsm

#define QFsm   QHsm
Deprecated:
QFsm state machine; instead use: QP::QHsm.

Legacy state machines coded in the "QFsm-style" will continue to work, but will use the QP::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 QP::QMsm state machine and the QM modeling tool.

Definition at line 86 of file qpcpp.h.

◆ Q_IGNORED

#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())

Definition at line 91 of file qpcpp.h.

◆ Q_ROM

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

Definition at line 97 of file qpcpp.h.

◆ Q_ROM_BYTE

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

Definition at line 100 of file qpcpp.h.

◆ Q_ROM_VAR

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

Definition at line 103 of file qpcpp.h.

◆ postFIFO

#define postFIFO (   e_,
  sender_ 
)    POST((e_), (sender_))
Deprecated:
call to QActive post FIFO operation

Definition at line 108 of file qpcpp.h.

◆ tick

#define tick (   sender_)    TICK_X(static_cast<uint8_t>(0), (sender_))
Deprecated:
call of QF system clock tick (for rate 0)

Definition at line 111 of file qpcpp.h.

◆ QS_RESET

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

Definition at line 121 of file qpcpp.h.

◆ publish

#define publish (   e_,
  sender_ 
)    PUBLISH((e_), (sender_))
Deprecated:
call to QF publish operation

Definition at line 135 of file qpcpp.h.