cc [ flag... ] file... -ldat [ library... ] #include <dat/udat.h> DAT_RETURN dat_evd_post_se( IN DAT_EVD_HANDLE evd_handle, IN const DAT_EVENT *event )
evd_handle Handle for an instance of the Event Dispatcher
event A pointer to a Consumer created Software Event.
The dat_evd_post_se() function posts Software events to the Event Dispatcher event queue. This is analogous to event arrival on the Event Dispatcher software Event Stream. The event that the Consumer provides adheres to the event format as defined in <dat.h>. The first element in the event provides the type of the event (DAT_EVENT_TYPE_SOFTWARE); the rest provide the event-type-specific parameters. These parameters are opaque to a Provider. Allocation and release of the memory referenced by the event pointer in a software event are the Consumer's responsibility.
There is no ordering between events from different Event Streams. All the synchronization issues between multiple Consumer contexts trying to post events to an Event Dispatcher instance simultaneously are left to a Consumer.
If the event queue is full, the operation is completed unsuccessfully and returns DAT_QUEUE_FULL. The event is not queued. The queue overflow condition does takes place and, therefore, the asynchronous Event Dispatcher is not effected.
DAT_SUCCESS The operation was successful.
DAT_INVALID_HANDLE The evd_handle parameter is invalid.
DAT_INVALID_PARAMETER The event parameter is invalid.
DAT_QUEUE_FULL The Event Dispatcher queue is full.
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
|Interface Stability||Standard: uDAPL, 1.1, 1.2|