QP/C++
Defines | Typedefs | Variables
qevt.h File Reference

QEvt class and basic macros used by all QP components. More...

Go to the source code of this file.

Defines

#define QP_VERSION   0x4503U
 The current QP version number.
#define QP_BEGIN_   namespace QP {
 begin of the namespace QP
#define QP_END_   }
 end of the namespace QP
#define QP_   QP::
 namespace QP prefix
#define Q_DIM(array_)   (sizeof(array_) / sizeof(array_[0]))
#define Q_UINT2PTR_CAST(type_, uint_)   (reinterpret_cast<type_ *>(uint_))
 Perform cast from unsigned integer uint_ to pointer of type type_.
#define QEVT_INITIALIZER(sig_)
 Initializer of static constant QEvt instances.

Typedefs

typedef char char_t
 typedef for character strings.
typedef float float32_t
 typedef for 32-bit IEEE 754 floating point numbers
typedef double float64_t
 typedef for 64-bit IEEE 754 floating point numbers
typedef int enum_t
 typedef for enumerations used for event signals

Variables

QP_BEGIN_ typedef uint16_t QSignal
 QSignal represents the signal of an event.

Detailed Description

QEvt class and basic macros used by all QP components.

This header file must be included, perhaps indirectly, in all modules (*.cpp files) that use any component of QP/C++ (such as QEP, QF, or QK).

Definition in file qevt.h.


Define Documentation

#define Q_DIM (   array_)    (sizeof(array_) / sizeof(array_[0]))

helper macro to calculate static dimension of a 1-dim array array_

Definition at line 205 of file qevt.h.

Referenced by QF::poolInit().

#define Q_UINT2PTR_CAST (   type_,
  uint_ 
)    (reinterpret_cast<type_ *>(uint_))

Perform cast from unsigned integer uint_ to pointer of type type_.

This macro encapsulates the cast to (type_ *), which QP ports or application might use to access embedded hardware registers. Such uses can trigger PC-Lint "Note 923: cast from int to pointer" and this macro helps to encapsulate this deviation.

Definition at line 235 of file qevt.h.

#define QEVT_INITIALIZER (   sig_)
Value:
{ static_cast<QP_ QSignal>(sig_), \
    static_cast<uint8_t>(0), static_cast<uint8_t>(0) }

Initializer of static constant QEvt instances.

This macro encapsulates the ugly casting of enumerated signals to QSignal and constants for QEvt.poolID and QEvt.refCtr_.

Definition at line 242 of file qevt.h.

#define QP_   QP::

namespace QP prefix

Note:
defines to nothing if #Q_USE_NAMESPACE is undefined

Definition at line 126 of file qevt.h.

Referenced by QK_sched_(), and QK_schedExt_().

#define QP_BEGIN_   namespace QP {

begin of the namespace QP

Note:
defines to nothing if #Q_USE_NAMESPACE is undefined

Definition at line 116 of file qevt.h.

#define QP_END_   }

end of the namespace QP

Note:
defines to nothing if #Q_USE_NAMESPACE is undefined

Definition at line 121 of file qevt.h.

#define QP_VERSION   0x4503U

The current QP version number.

Returns:
version of the QP as a hex constant constant 0xXYZZ, where X is a 1-digit major version number, Y is a 1-digit minor version number, and ZZ is a 2-digit release number.

Definition at line 51 of file qevt.h.

Referenced by QEP::getVersion(), QS::getVersion(), QK::getVersion(), and QF::getVersion().


Typedef Documentation

typedef char char_t

typedef for character strings.

This typedef specifies character type for exclusive use in character strings. Use of this type, rather than plain 'char', is in compliance with the MISRA-C 2004 Rules 6.1(req), 6.3(adv).

Definition at line 216 of file qevt.h.


Variable Documentation

QP_BEGIN_ typedef uint16_t QSignal

QSignal represents the signal of an event.

The relationship between an event and a signal is as follows. A signal in UML is the specification of an asynchronous stimulus that triggers reactions [UML document ptc/03-08-02], and as such is an essential part of an event. (The signal conveys the type of the occurrence-what happened?) However, an event can also contain additional quantitative information about the occurrence in form of event parameters. Please refer to the

Definition at line 150 of file qevt.h.

Referenced by QF::new_(), and QTimeEvt::QTimeEvt().