EvmCallback(5)EvmCallback(5)NAMEEvmCallback - Event Management callback function
SYNOPSIS
void EventCB(
EvmConnection_t connection,
EvmCallbackArg_t callbackArg,
EvmCallbackData_t *callbackData)
DESCRIPTION
An EVM callback function is a function that you provide to allow your
program to handle messages arriving on an EVM connection. Most mes‐
sages will be incoming events or responses to requests you have made to
the EVM daemon, but you may also get a callback for other reasons.
You specify the name (EventCB) of the callback function in the callback
parameter when you create an EVM connection with a response mode of
callback.
Your callback function is invoked by EvmConnDispatch(), which you must
call whenever you detect activity pending on the connection.
An EVM callback function must conform to the prototype shown.
Callback function parameters:
The connection parameter contains the connection context pertaining to
this callback. This value was returned by EvmConnCreate() when the
connection was created. If you have one callback function servicing
multiple connections, you might test this to determine which connection
a particular invocation is handling. The callbackArg parameter con‐
tains the value you specified as the callbackArg parameter to EvmCon‐
nCreate() when you created the connection. For example, you might use
it to hold a pointer to your own context data for the connection. The
callbackData parameter points to a structure containing the details of
the callback. The structure includes a callback reason code, an event,
and a union containing data specific to each possible reason. The
event member may contain NULL if it is not applicable to the reason.
You may get these reasons: This callback reason indicates that the dae‐
mon was unable to deliver one or more events, probably because the
client process had not finished processing earlier events, causing the
connection buffer to overflow. If necessary, you can use EvmConnCon‐
trol(3) to increase the size of the receive buffer. This callback rea‐
son indicates that an EVM event has been received from the daemon. The
event is available in the callbackData structure. You must use
EvmEventDestroy(3) to free the event when you have finished with it.
This callback reason indicates that a prior EvmEventPost() call has
completed, usually with a response from the daemon if the responseMode
was specified as EvmRESPONSE_CALLBACK when the connection was created.
The posting status is available in the callbackData structure. This
callback reason indicates that a requested template has been delivered
in response to an EvmConnRegistrationGet() request. You must use
EvmEventDestroy(3) to free the template when you have finished with it.
This callback reason indicates that a prior EvmEventSubscribe() call
has completed, usually with a response from the daemon. This callback
reason indicates that event template information has been delivered in
response to an EvmConnTemplateScan() request. The template is avail‐
able in the callbackData structure. You must use EvmEventDestroy(3) to
free the template when you have finished with it.
See the Common Desktop Environment: Programmer's Guide for examples of
callback functions.
FILES
Header file that contains the event declaration, structures, and proto‐
type for the callback function
SEE ALSO
Routines: EvmConnCreate(3), EvmConnCheck(3), EvmConnSubscribe(3),
EvmEventPost(3)
Event Management: EVM(5)
Event Connection: EvmConnection(5)
EVM Events: EvmEvent(5)
Programmer's Guide
EvmCallback(5)