![]() |
WL865E4-P
36.07.001
|
This section describes the M2MB APIs to perform OS event operations. More...
This section describes the M2MB APIs to perform OS event operations.
#define M2MB_OS_EV_INVALID 0 |
Definition at line 54 of file m2mb_os_ev.h.
#define M2MB_OS_EV_INVALID_ATTR 0 |
Definition at line 55 of file m2mb_os_ev.h.
typedef HANDLE M2MB_OS_EV_ATTR_HANDLE |
Definition at line 104 of file m2mb_os_ev.h.
typedef HANDLE M2MB_OS_EV_HANDLE |
Definition at line 103 of file m2mb_os_ev.h.
enum M2MB_OS_EV_GET_OPT_E |
Enumerator | |
---|---|
M2MB_OS_EV_GET_ANY | |
M2MB_OS_EV_GET_ANY_AND_CLEAR | |
M2MB_OS_EV_GET_ALL | |
M2MB_OS_EV_GET_ALL_AND_CLEAR | |
M2MB_OS_EV_GET_OPT_END |
Definition at line 91 of file m2mb_os_ev.h.
enum M2MB_OS_EV_SEL_CMD_E |
Definition at line 63 of file m2mb_os_ev.h.
enum M2MB_OS_EV_SET_OPT_E |
Enumerator | |
---|---|
M2MB_OS_EV_SET | |
M2MB_OS_EV_CLEAR | |
M2MB_OS_EV_SET_OPT_END |
Definition at line 80 of file m2mb_os_ev.h.
M2MB_OS_RESULT_E m2mb_os_ev_deinit | ( | M2MB_OS_EV_HANDLE | eveHandle | ) |
Application Event deinit or deletion.
This service deletes the specified OS event. All tasks suspended waiting for this event are resumed with a return value equal to M2MB_OS_DELETED The resources will be released and handle set to M2MB_INVALID_EV It is the application’s responsibility to prevent the use of a deleted event.
[in] | eveHandle | handle of the event |
Example
M2MB_OS_RESULT_E m2mb_os_ev_get | ( | M2MB_OS_EV_HANDLE | evHandle, |
UINT32 | reqEvBits, | ||
M2MB_OS_EV_GET_OPT_E | optGet, | ||
UINT32 * | pCurEvBits, | ||
UINT32 | timeout | ||
) |
Get an application event.
This service retrieves bits event from the specified event. Each event contains 32 event bits. This service can retrieve a variety of event bits combinations, as selected by the input reqEvBits.
[in] | evHandle | Handle of event |
[in] | reqEvBits | Requested bits event |
[in] | optGet | Option for get the event (see M2MB_OS_EV_GET_OPT_E) |
[out] | pCurEvBits | Pointer to where current bits events are written to. It contains all the currents bits as found before any actions are taken (e.g cleared as requested) |
[in] | timeout | Wait option in case of no success in getting requested bit event |
Example
M2MB_OS_RESULT_E m2mb_os_ev_getItem | ( | M2MB_OS_EV_HANDLE | evHandle, |
M2MB_OS_EV_SEL_CMD_E | selCmd, | ||
MEM_W * | pOut, | ||
void * | pIn | ||
) |
Get specific properties of the event.
This service retrieves values for a specified parameter of the specified event Selecting cmd, a parameter to be retrieved can be set. To be used when an event is already created: it is under application responsibility
[in] | selCmd | Select parameter to be retrieved (see M2MB_OS_EV_SEL_CMD_E) |
[in] | evHandle | Handle of event |
[out] | pOut | Pointer Output parameter got: its meaning depends on selCmd used See examples as general pointer, it is set to UINT32 |
[in] | pIn | Pointer to void general Parameter to be specified, if any, to get right output See examples If parameter is not needed, use NULL |
Example
M2MB_OS_RESULT_E m2mb_os_ev_init | ( | M2MB_OS_EV_HANDLE * | pEvHandle, |
M2MB_OS_EV_ATTR_HANDLE * | pEvAttr | ||
) |
Application Event Set Creation.
This service creates a group of 32 event bits. All 32 event bits in the event are initialized to zero.
[out] | pEvHandle | Pointer to event handle |
[in] | pEvAttr | Pointer to event attribute handle |
Example
M2MB_OS_RESULT_E m2mb_os_ev_set | ( | M2MB_OS_EV_HANDLE | evHandle, |
UINT32 | evBits, | ||
M2MB_OS_EV_SET_OPT_E | optSet | ||
) |
Set bits of event in a specified event.
This service sets or clears event bits in an event, depending upon the specified set-option. All suspended tasks whose event bits request is now satisfied are resumed.
[in] | evHandle | Handle of event |
[in] | evBits | Event bits to set or clear |
[in] | optSet | Option for set or clear specified bit (see M2MB_OS_EV_SET_OPT_E) |
Allowed From Initialization, tasks, events, and ISRs Preemption Possible Yes
Example
M2MB_OS_RESULT_E m2mb_os_ev_setAttrItem | ( | M2MB_OS_EV_ATTR_HANDLE * | pEvAttr, |
UINT8 | nCmds, | ||
... | |||
) |
Set specific attribute for event init or creation.
This service set the attribute (or create it) to be used for event creation
[in] | pEvAttr | Pointer to event attribute of event |
[in] | nCmds | Number of commands to be issued at once |
[in] | ... | Variable inputs, N cmds (see M2MB_OS_EV_SEL_CMD_E) followed by N arguments for their respective issued commands. CMDS(...) and CMDS_ARGS(...) macro can be used to better insert cmd and parameters and to better control right insertion |
Allowed From Initialization, tasks, events, and ISRs
Example
M2MB_OS_RESULT_E m2mb_os_ev_setItem | ( | M2MB_OS_EV_HANDLE | evHandle, |
M2MB_OS_EV_SEL_CMD_E | selCmd, | ||
void * | pIn | ||
) |
Set specific properties of the event.
This service set value for a specified parameter of the specified event if available To be used when an event is already created: its right use is under application responsibility By Selecting cmd, a specified parameter to be set can be selected
[in] | evHandle | Handle of event |
[in] | selCmd | Select parameter to be set (see M2MB_OS_EV_SEL_CMD_E) |
[in] | pIn | Pointer to value to be set. If a simple value, can be easily casted to (void*) e.g. int value -3 has to be passed, use (void*)-3 NULL if no value is needed |
Example