Функция WdfDeviceInitSetPowerPolicyEventCallbacks (wdfdevice.h)
[Применимо к KMDF и UMDF]
Метод WdfDeviceInitSetPowerPolicyEventCallbacks регистрирует функции обратного вызова политики питания драйвера.
Синтаксис
void WdfDeviceInitSetPowerPolicyEventCallbacks(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PWDF_POWER_POLICY_EVENT_CALLBACKS PowerPolicyEventCallbacks
);
Параметры
[in] DeviceInit
Вызывающий указатель на структуру WDFDEVICE_INIT.
[in] PowerPolicyEventCallbacks
Указатель на инициализированную WDF_POWER_POLICY_EVENT_CALLBACKS структуру вызывающего абонента.
Возвращаемое значение
Никакой
Замечания
Если драйвер вызывает WdfDeviceInitSetPowerPolicyEventCallbacks, перед вызовом WdfDeviceCreate. Дополнительные сведения см. в создании объекта устройства Framework.
Дополнительные сведения о WdfDeviceInitSetPowerPolicyEventCallbacksсм. в владения политикой питания.
Примеры
Следующий пример кода инициализирует структуру WDF_POWER_POLICY_EVENT_CALLBACKS, а затем вызывает WdfDeviceInitSetPowerPolicyEventCallbacks.
WDF_POWER_POLICY_EVENT_CALLBACKS powerPolicyCallbacks;
WDF_POWER_POLICY_EVENT_CALLBACKS_INIT(&powerPolicyCallbacks);
powerPolicyCallbacks.EvtDeviceArmWakeFromS0 = PciDrvEvtDeviceWakeArmS0;
powerPolicyCallbacks.EvtDeviceDisarmWakeFromS0 = PciDrvEvtDeviceWakeDisarmS0;
powerPolicyCallbacks.EvtDeviceWakeFromS0Triggered = PciDrvEvtDeviceWakeTriggeredS0;
powerPolicyCallbacks.EvtDeviceArmWakeFromSx = PciDrvEvtDeviceWakeArmSx;
powerPolicyCallbacks.EvtDeviceDisarmWakeFromSx = PciDrvEvtDeviceWakeDisarmSx;
powerPolicyCallbacks.EvtDeviceWakeFromSxTriggered = PciDrvEvtDeviceWakeTriggeredSx;
WdfDeviceInitSetPowerPolicyEventCallbacks(
DeviceInit,
&powerPolicyCallbacks
);
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
минимальная версия KMDF | 1.0 |
минимальная версия UMDF | 2.0 |
заголовка | wdfdevice.h (include Wdf.h) |
библиотеки | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <= DISPATCH_LEVEL |
правил соответствия DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), FDOPowerPolicyOwnerAPI(kmdf), KmdfIrql(( kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NonFDONotPowerPolicyOwnerAPI(kmdf), PdoDeviceInitAPI(kmdf) |