![]() |
EM-ODP 4.4.0
Event Machine on ODP
|
#include <inttypes.h>#include <stdarg.h>#include <stddef.h>#include <stdbool.h>#include <odp/api/cpumask.h>#include <event_machine/api/event_machine_config.h>

Go to the source code of this file.
Data Structures | |
| struct | em_notif_t |
Macros | |
| #define | EM_TRUE 1 |
| #define | EM_FALSE 0 |
| #define | EM_UNDEF_U64 0 |
| #define | EM_UNDEF_U32 0 |
| #define | EM_UNDEF_U16 0 |
| #define | EM_UNDEF_U8 0 |
| #define | EM_UNDEF_UINTPTR EM_STATIC_CAST(uintptr_t, NULL) |
| #define | EM_UNDEF_PTR NULL |
| #define | EM_HANDLE_T(type_t) |
| #define | EM_HDL_UNDEF NULL |
| #define | PRI_HDL "p" |
| #define | EM_EVENT_UNDEF EM_STATIC_CAST(em_event_t, EM_HDL_UNDEF) |
| #define | PRI_EVENT PRI_HDL |
| #define | EM_POOL_UNDEF EM_STATIC_CAST(em_pool_t, EM_HDL_UNDEF) |
| #define | PRI_POOL PRI_HDL |
| #define | EM_EO_UNDEF EM_STATIC_CAST(em_eo_t, EM_HDL_UNDEF) |
| #define | PRI_EO PRI_HDL |
| #define | EM_QUEUE_UNDEF EM_STATIC_CAST(em_queue_t, EM_HDL_UNDEF) |
| #define | PRI_QUEUE PRI_HDL |
| #define | EM_QUEUE_GROUP_UNDEF EM_STATIC_CAST(em_queue_group_t, EM_HDL_UNDEF) |
| #define | PRI_QGRP PRI_HDL |
| #define | EM_EVENT_GROUP_UNDEF EM_STATIC_CAST(em_event_group_t, EM_HDL_UNDEF) |
| #define | PRI_EGRP PRI_HDL |
| #define | EM_ATOMIC_GROUP_UNDEF EM_STATIC_CAST(em_atomic_group_t, EM_HDL_UNDEF) |
| #define | PRI_AGRP PRI_HDL |
Typedefs | |
| typedef uint32_t | em_event_type_t |
Functions | |
| EM_HANDLE_T (em_event_t) | |
| EM_HANDLE_T (em_pool_t) | |
| EM_HANDLE_T (em_eo_t) | |
| EM_HANDLE_T (em_queue_t) | |
| EM_HANDLE_T (em_queue_group_t) | |
| EM_HANDLE_T (em_event_group_t) | |
| EM_HANDLE_T (em_atomic_group_t) | |
Event Machine basic types and defines
Definition in file event_machine_types.h.
| #define EM_ATOMIC_GROUP_UNDEF EM_STATIC_CAST(em_atomic_group_t, EM_HDL_UNDEF) |
Undefined atomic group
Definition at line 197 of file event_machine_types.h.
| #define EM_EO_UNDEF EM_STATIC_CAST(em_eo_t, EM_HDL_UNDEF) |
Undefined EO
Definition at line 136 of file event_machine_types.h.
| #define EM_EVENT_GROUP_UNDEF EM_STATIC_CAST(em_event_group_t, EM_HDL_UNDEF) |
Undefined event group
Definition at line 182 of file event_machine_types.h.
| #define EM_EVENT_UNDEF EM_STATIC_CAST(em_event_t, EM_HDL_UNDEF) |
Undefined event
Definition at line 110 of file event_machine_types.h.
| #define EM_FALSE 0 |
EM boolean value: False
Definition at line 59 of file event_machine_types.h.
| #define EM_HANDLE_T | ( | type_t | ) |
Define 'type_t' as a struct ptr to improve type safety
Definition at line 82 of file event_machine_types.h.
| #define EM_HDL_UNDEF NULL |
Undefined EM-handle
Definition at line 92 of file event_machine_types.h.
| #define EM_POOL_UNDEF EM_STATIC_CAST(em_pool_t, EM_HDL_UNDEF) |
Undefined EM pool
Definition at line 124 of file event_machine_types.h.
| #define EM_QUEUE_GROUP_UNDEF EM_STATIC_CAST(em_queue_group_t, EM_HDL_UNDEF) |
Undefined queue group
Definition at line 168 of file event_machine_types.h.
| #define EM_QUEUE_UNDEF EM_STATIC_CAST(em_queue_t, EM_HDL_UNDEF) |
Undefined queue
Definition at line 148 of file event_machine_types.h.
| #define EM_TRUE 1 |
EM boolean value: True
Definition at line 57 of file event_machine_types.h.
| #define EM_UNDEF_PTR NULL |
EM undefined pointer
Definition at line 73 of file event_machine_types.h.
| #define EM_UNDEF_U16 0 |
EM undefined u16
Definition at line 66 of file event_machine_types.h.
| #define EM_UNDEF_U32 0 |
EM undefined u32
Definition at line 64 of file event_machine_types.h.
| #define EM_UNDEF_U64 0 |
EM undefined u64
Definition at line 62 of file event_machine_types.h.
| #define EM_UNDEF_U8 0 |
EM undefined u8
Definition at line 68 of file event_machine_types.h.
| #define EM_UNDEF_UINTPTR EM_STATIC_CAST(uintptr_t, NULL) |
EM undefined uintptr
Definition at line 70 of file event_machine_types.h.
| #define PRI_AGRP PRI_HDL |
em_atomic_group_t printf format
Definition at line 199 of file event_machine_types.h.
| #define PRI_EGRP PRI_HDL |
em_event_group_t printf format
Definition at line 184 of file event_machine_types.h.
| #define PRI_EO PRI_HDL |
em_eo_t printf format
Definition at line 138 of file event_machine_types.h.
| #define PRI_EVENT PRI_HDL |
| #define PRI_HDL "p" |
EM-handle printf format
Definition at line 101 of file event_machine_types.h.
| #define PRI_POOL PRI_HDL |
em_pool_t printf format
Definition at line 126 of file event_machine_types.h.
| #define PRI_QGRP PRI_HDL |
em_queue_group_t printf format
Definition at line 170 of file event_machine_types.h.
| #define PRI_QUEUE PRI_HDL |
em_queue_t printf format
Definition at line 150 of file event_machine_types.h.
Event type
The event type is given to the EO-receive function for each received event and is also needed for event allocation. This type is an unsigned integer split into major and minor parts: 1) the major-field categorizes the event and 2) the minor is a more detailed system specific description. The major-part will not change by HW, but the minor-part can be HW/SW platform specific and thus could be split into more sub-fields as needed. The application should use the access functions for reading major and minor parts.
The only event type with defined content is EM_EVENT_TYPE_SW with minor type 0, which needs to be portable (direct pointer to data).
Definition at line 221 of file event_machine_types.h.