// poscx.h
NTSTATUS PosCxPutPendingEvent(
[in] WDFDEVICE device,
[in] ULONG deviceInterfaceTag,
[in] ULONG eventType,
[in] size_t rawEventDataSize,
PVOID rawEventDataPtr,
[in] POS_CX_EVENT_ATTRIBUTES eventAttr
);
View the official Windows Driver Kit DDI referenceNo description available.
PosCxPutPendingEvent creates a new event object, copies the event data to the new event object, and tries to delegate it to the waiting caller. If the target caller does not have a read request waiting, the new event is added to the designated event queue (control or data).
device [in]A handle to a framework device object that represents the device.
deviceInterfaceTag [in]The device interface associated with the event. By default, only file objects that have the same tag will receive this event.
eventType [in]The new event type.
rawEventDataSize [in]The raw event (without point-of-service header) buffer size in bytes.
rawEventDataPtrThe pointer to the raw (without point-of-service header) event data. The caller may reuse/release rawEventDataPtr after PosCxPutPendingEvent returns.
eventAttr [in]The event attributes.
Possible return values are:
| Value | Description |
|---|---|
| STATUS_SUCCESS | The event was created and delegated to a waiting caller, or the event was discarded because there is no device owner. |
| STATUS_PENDING | The event was queued because no caller is currently waiting. |
| Other errors | Other appropriate failure error codes. |