QP/C
Data Structures | Defines | Typedefs
qevent.h File Reference

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

Go to the source code of this file.

Data Structures

struct  QEvent
 Event structure. More...

Defines

#define QP_VERSION   0x4400U
 The current QP version number.
#define Q_SIGNAL_SIZE   2
 The size (in bytes) of the signal of an event. Valid values: 1, 2, or 4; default 1.
#define Q_DIM(array_)   (sizeof(array_) / sizeof(array_[0]))
#define Q_UINT2PTR_CAST(type_, uint_)   ((type_ *)(uint_))
 Perform cast from unsigned integer uint_ to pointer of type type_.

Typedefs

typedef uint16_t QSignal
 QSignal represents the signal of an event.
typedef char char_t
 typedef for character strings.
typedef float float32_t
typedef double float64_t

Detailed Description

QEvent class and basic macros used by all QP components.

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

Definition in file qevent.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 154 of file qevent.h.

Referenced by QF_poolInit(), and QF_publish().

#define Q_SIGNAL_SIZE   2

The size (in bytes) of the signal of an event. Valid values: 1, 2, or 4; default 1.

This macro can be defined in the QEP port file (qep_port.h) to configure the QSignal type. When the macro is not defined, the default of 2 bytes is applied.

Definition at line 111 of file qevent.h.

#define Q_UINT2PTR_CAST (   type_,
  uint_ 
)    ((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 180 of file qevent.h.

#define QP_VERSION   0x4400U

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 47 of file qevent.h.

Referenced by QEP_getVersion(), QF_getVersion(), and QS_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 164 of file qevent.h.

typedef float float32_t

typedef for 32-bit IEEE 754 floating point numbers

Definition at line 167 of file qevent.h.

typedef double float64_t

typedef for 64-bit IEEE 754 floating point numbers

Definition at line 170 of file qevent.h.

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.

Definition at line 126 of file qevent.h.