Функция WdfDeviceInitRegisterPowerPolicyStateChangeCallback (wdfdevice.h)
[Применяется только к KMDF]
Примечание
Этот метод предназначен только для внутреннего использования майкрософт.
Метод WdfDeviceInitRegisterPowerPolicyStateChangeCallback регистрирует функцию обратного вызова событий, предоставляемую драйвером, которую платформа вызывает при изменении состояния конечного автомата политики управления питанием устройства.
Синтаксис
NTSTATUS WdfDeviceInitRegisterPowerPolicyStateChangeCallback(
[in] PWDFDEVICE_INIT DeviceInit,
[in] WDF_DEVICE_POWER_POLICY_STATE PowerPolicyState,
[in] PFN_WDF_DEVICE_POWER_POLICY_STATE_CHANGE_NOTIFICATION EvtDevicePowerPolicyStateChange,
[in] ULONG CallbackTypes
);
Параметры
[in] DeviceInit
Указатель на структуру WDFDEVICE_INIT , предоставленный вызывающим.
[in] PowerPolicyState
Перечислитель WDF_DEVICE_POWER_POLICY_STATE , определяющий состояние компьютера политики питания, для которого драйвер запрашивает уведомление.
[in] EvtDevicePowerPolicyStateChange
Предоставленный вызывающим элементом указатель на функцию обратного вызова события EvtDevicePowerPolicyStateChange драйвера.
[in] CallbackTypes
Комбинация WDF_STATE_NOTIFICATION_TYPE типизированных перечислителей ORed.
Возвращаемое значение
Если WdfDeviceInitRegisterPowerPolicyStateChangeCallback не обнаруживает ошибок, он возвращает STATUS_SUCCESS. К дополнительным возвращаемым значениям относятся:
Код возврата | Описание |
---|---|
|
Обнаружен недопустимый параметр. |
|
Недостаточно памяти для завершения операции. |
Комментарии
Если драйвер вызывает WdfDeviceInitRegisterPowerPolicyStateChangeCallback, он должен сделать это перед вызовом WdfDeviceCreate.
Дополнительные сведения о WdfDeviceInitRegisterPowerPolicyStateChangeCallback см. в разделе Конечные машины в платформе.
Примеры
В следующем примере кода регистрируется функция обратного вызова события, которая будет вызываться платформой при изменении состояния конечного автомата политики питания устройства.
status = WdfDeviceInitRegisterPowerPolicyStateChangeCallback(
DeviceInit,
WdfDevStatePwrPolCheckPowerPageable,
PciDrvPowerPolicyStateChangeCallback,
StateNotificationAllStates
);
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,0 |
Верхняя часть | wdfdevice.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (см. раздел Управление версиями библиотеки платформы). |
IRQL | PASSIVE_LEVEL |
Правила соответствия DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |