Поделиться через


структура WDF_PNPPOWER_EVENT_CALLBACKS (wdfdevice.h)

[Применимо к KMDF и UMDF]

Структура WDF_PNPPOWER_EVENT_CALLBACKS содержит указатели на функции обратного вызова событий питания драйвера Plug and Play.

Синтаксис

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;

Члены

Size

Размер этой структуры в байтах.

EvtDeviceD0Entry

Указатель на функцию обратного вызова события EvtDeviceD0Entry или NULL.

EvtDeviceD0EntryPostInterruptsEnabled

Указатель на функцию обратного вызова события EvtDeviceD0EntryPostInterruptsEnable d или NULL.

EvtDeviceD0Exit

Указатель на функцию обратного вызова события драйвера EvtDeviceD0Exit или NULL.

EvtDeviceD0ExitPreInterruptsDisabled

Указатель на функцию обратного вызова событий драйвера EvtDeviceD0ExitPreInterruptsDisabled или NULL.

EvtDevicePrepareHardware

Указатель на функцию обратного вызова событий драйвера EvtDevicePrepareHardware или NULL.

EvtDeviceReleaseHardware

Указатель на функцию обратного вызова события драйвера EvtDeviceReleaseHardware или NULL.

EvtDeviceSelfManagedIoCleanup

Указатель на функцию обратного вызова события evtDeviceSelfManagedIoClean up или NULL.

EvtDeviceSelfManagedIoFlush

Указатель на функцию обратного вызова события EvtDeviceSelfManagedIoFlush или NULL.

EvtDeviceSelfManagedIoInit

Указатель на функцию обратного вызова события драйвера EvtDeviceSelfManagedIoInit или NULL.

EvtDeviceSelfManagedIoSuspend

Указатель на функцию обратного вызова события драйвера EvtDeviceSelfManagedIoSuspend или NULL.

EvtDeviceSelfManagedIoRestart

Указатель на функцию обратного вызова события evtDeviceSelfManagedIoRe start или NULL.

EvtDeviceSurpriseRemoval

Указатель на функцию обратного вызова события EvtDeviceSurpriseRemoval или NULL.

EvtDeviceQueryRemove

Указатель на функцию обратного вызова события драйвера EvtDeviceQueryRemove или NULL.

EvtDeviceQueryStop

Указатель на функцию обратного вызова события драйвера EvtDeviceQueryStop или NULL.

EvtDeviceUsageNotification

Указатель на функцию обратного вызова события драйвера EvtDeviceUsageNotification или NULL.

EvtDeviceRelationsQuery

Указатель на функцию обратного вызова события драйвера EvtDeviceRelationsQuery или NULL.

EvtDeviceUsageNotificationEx

Указатель на функцию обратного вызова событий драйвера EvtDeviceUsageNotificationEx или NULL. Член EvtDeviceUsageNotificationEx доступен в версии 1.11 и более поздних версиях KMDF. Драйвер может зарегистрировать EvtDeviceRelationsQuery или EvtDeviceUsageNotificationEx, но не оба.

Замечания

Структура WDF_PNPPOWER_EVENT_CALLBACKS используется в качестве входных данных для метода WdfDeviceInitSetPnpPowerEventCallbacks.

Драйвер должен инициализировать свою структуру WDF_PNPPOWER_EVENT_CALLBACKS путем вызова WDF_PNPPOWER_EVENT_CALLBACKS_INIT.

Требования

Требование Ценность
минимальная версия KMDF 1.0
минимальная версия UMDF 2.0
Заголовок wdfdevice.h (include Wdf.h)

См. также

WDF_POWER_POLICY_EVENT_CALLBACKS