WDF_PNPPOWER_EVENT_CALLBACKS structure
[Applies to KMDF and UMDF]
The WDF_PNPPOWER_EVENT_CALLBACKS structure contains pointers to a driver's Plug and Play and power event callback functions.
Syntax
typedef struct _WDF_PNPPOWER_EVENT_CALLBACKS { ULONG Size; PFN_WDF_DEVICE_D0_ENTRY EvtDeviceD0Entry; PFN_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED EvtDeviceD0EntryPostInterruptsEnabled; PFN_WDF_DEVICE_D0_EXIT EvtDeviceD0Exit; PFN_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EvtDeviceD0ExitPreInterruptsDisabled; PFN_WDF_DEVICE_PREPARE_HARDWARE EvtDevicePrepareHardware; PFN_WDF_DEVICE_RELEASE_HARDWARE EvtDeviceReleaseHardware; PFN_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP EvtDeviceSelfManagedIoCleanup; PFN_WDF_DEVICE_SELF_MANAGED_IO_FLUSH EvtDeviceSelfManagedIoFlush; PFN_WDF_DEVICE_SELF_MANAGED_IO_INIT EvtDeviceSelfManagedIoInit; PFN_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND EvtDeviceSelfManagedIoSuspend; PFN_WDF_DEVICE_SELF_MANAGED_IO_RESTART EvtDeviceSelfManagedIoRestart; PFN_WDF_DEVICE_SURPRISE_REMOVAL EvtDeviceSurpriseRemoval; PFN_WDF_DEVICE_QUERY_REMOVE EvtDeviceQueryRemove; PFN_WDF_DEVICE_QUERY_STOP EvtDeviceQueryStop; PFN_WDF_DEVICE_USAGE_NOTIFICATION EvtDeviceUsageNotification; PFN_WDF_DEVICE_RELATIONS_QUERY EvtDeviceRelationsQuery; PFN_WDF_DEVICE_USAGE_NOTIFICATION_EX EvtDeviceUsageNotificationEx; } WDF_PNPPOWER_EVENT_CALLBACKS, *PWDF_PNPPOWER_EVENT_CALLBACKS;
Members
- Size
-
The size, in bytes, of this structure.
- EvtDeviceD0Entry
-
A pointer to the driver's EvtDeviceD0Entry event callback function, or NULL.
- EvtDeviceD0EntryPostInterruptsEnabled
-
A pointer to the driver's EvtDeviceD0EntryPostInterruptsEnabled event callback function, or NULL.
- EvtDeviceD0Exit
-
A pointer to the driver's EvtDeviceD0Exit event callback function, or NULL.
- EvtDeviceD0ExitPreInterruptsDisabled
-
A pointer to the driver's EvtDeviceD0ExitPreInterruptsDisabled event callback function, or NULL.
- EvtDevicePrepareHardware
-
A pointer to the driver's EvtDevicePrepareHardware event callback function, or NULL.
- EvtDeviceReleaseHardware
-
A pointer to the driver's EvtDeviceReleaseHardware event callback function, or NULL.
- EvtDeviceSelfManagedIoCleanup
-
A pointer to the driver's EvtDeviceSelfManagedIoCleanup event callback function, or NULL.
- EvtDeviceSelfManagedIoFlush
-
A pointer to the driver's EvtDeviceSelfManagedIoFlush event callback function, or NULL.
- EvtDeviceSelfManagedIoInit
-
A pointer to the driver's EvtDeviceSelfManagedIoInit event callback function, or NULL.
- EvtDeviceSelfManagedIoSuspend
-
A pointer to the driver's EvtDeviceSelfManagedIoSuspend event callback function, or NULL.
- EvtDeviceSelfManagedIoRestart
-
A pointer to the driver's EvtDeviceSelfManagedIoRestart event callback function, or NULL.
- EvtDeviceSurpriseRemoval
-
A pointer to the driver's EvtDeviceSurpriseRemoval event callback function, or NULL.
- EvtDeviceQueryRemove
-
A pointer to the driver's EvtDeviceQueryRemove event callback function, or NULL.
- EvtDeviceQueryStop
-
A pointer to the driver's EvtDeviceQueryStop event callback function, or NULL.
- EvtDeviceUsageNotification
-
A pointer to the driver's EvtDeviceUsageNotification event callback function, or NULL.
- EvtDeviceRelationsQuery
-
A pointer to the driver's EvtDeviceRelationsQuery event callback function, or NULL.
- EvtDeviceUsageNotificationEx
-
A pointer to the driver's EvtDeviceUsageNotificationEx event callback function, or NULL. The EvtDeviceUsageNotificationEx member is available in version 1.11 and later versions of KMDF. A driver can register either EvtDeviceRelationsQuery or EvtDeviceUsageNotificationEx, but not both.
Remarks
The WDF_PNPPOWER_EVENT_CALLBACKS structure is used as input to the WdfDeviceInitSetPnpPowerEventCallbacks method.
Your driver should initialize its WDF_PNPPOWER_EVENT_CALLBACKS structure by calling WDF_PNPPOWER_EVENT_CALLBACKS_INIT.
Requirements
Minimum KMDF version | 1.0 |
---|---|
Minimum UMDF version | 2.0 |
Header |
|
See also