Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > E

EvmCallback(5)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

EvmCallback() — event management (EVM) 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 messages are incoming events or responses to requests you have made to the EVM daemon, but you may also get a callback for other reasons.

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 contains the value you specified as the callbackArg parameter to EvmConnCreate() 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:

    EvmREASON_EVENTS_MISSED

    This callback reason indicates that the daemon 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 EvmConnControl() to increase the size of the receive buffer. See the EvmConnControl(3) reference page.

    EvmREASON_EVENT_DELIVERED

    This callback reason indicates that an EVM event has been received from the daemon. The event is available in the callbackData structure. You must use EvmEventDestroy() to free the event when you have finished with it. See the EvmEventDestroy(3) reference page.

    EvmREASON_POST_COMPLETE

    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.

    EvmREASON_REGISTRATION_DELIVERED

    This callback reason indicates that a requested template has been delivered in response to an EvmConnRegistrationGet() request. You must use EvmEventDestroy() to free the template when you have finished with it.

    EvmREASON_SUBSCRIBE_COMPLETE

    This callback reason indicates that a prior EvmEventSubscribe() call has completed, usually with a response from the daemon.

    EvmREASON_TEMPLATE_INFO_DELIVERED

    This callback reason indicates that event template information has been delivered in response to an EvmConnTemplateScan() request.

    The template is available in the callbackData structure. You must use EvmEventDestroy() to free the template when you have finished with it.

FILES

/usr/include/evm/evm.h

Header file that contains the event declaration, structures, and prototype for the callback function

EVM Events

EvmEvent(5).

EVM Programmer's Guide,

EVM System Administration Guide.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.