функция обратного вызова DXGKDDI_NOTIFY_ACPI_EVENT (dispmprt.h)

Уведомляет драйвер минипорта дисплея об определенных событиях ACPI.

Синтаксис

DXGKDDI_NOTIFY_ACPI_EVENT DxgkddiNotifyAcpiEvent;

NTSTATUS DxgkddiNotifyAcpiEvent(
  [in]  IN_CONST_PVOID MiniportDeviceContext,
  [in]  IN_DXGK_EVENT_TYPE EventType,
  [in]  IN_ULONG Event,
  [in]  IN_PVOID Argument,
  [out] OUT_PULONG AcpiFlags
)
{...}

Параметры

[in] MiniportDeviceContext

Дескриптор для блока контекста, представляющего видеоадаптер. Функция DxgkDdiAdddDevice драйвера мини-порта дисплея ранее предоставляла этот дескриптор подсистеме ядра графики DirectX.

[in] EventType

Перечислитель DXGK_EVENT_TYPE , предоставляющий тип события (DpAcpiEvent, DpPowerStateEvent, DpDockingEvent).

[in] Event

Номер события. В следующей таблице перечислены возможные номера событий для каждого из типов событий.

Тип события Возможные номера событий
DpAcpiEvent Ниже приведены допустимые события, определенные в Dispmprt.h:
  • ACPI_NOTIFY_CYCLE_DISPLAY_HOTKEY — уведомляет операционную систему о том, что пользователь нажал клавишу отображения цикла.
  • ACPI_NOTIFY_DOCK_EVENT — указывает, что произошло событие закрепления. Например, пользователь прикрепить или отстыковать мобильный компьютер.
  • ACPI_NOTIFY_DEVICE_HOTPLUG — указывает, что состояние любого выходного устройства, подключенного к контроллеру VGA, было изменено. Например, пользователь удалил или подключил дисплей CRT к порту VGA.
  • ACPI_NOTIFY_PANEL_SWITCH — указывает, что состояние одного из устройств вывода, подключенных к контроллеру VGA, переключилось. Например, пользователь переключил активный выходной дисплей с ЖК-дисплея на тип CRT.
  • ACPI_NOTIFY_VIDEO_WAKEUP — указывает, что отображение выходных данных было возобновлено. Например, пользователь повторно активировал дисплей компьютера.
DpPowerStateEvent PO_CB_LID_SWITCH_STATE, PO_CB_AC_STATUS
Определяется в Wdm.h.
DpDockingEvent ACPI_NOTIFY_DOCK_EVENT — указывает, что произошло событие закрепления. Например, пользователь прикрепить или отстыковать мобильный компьютер.
Определяется в Dispmprt.h.

[in] Argument

Указатель на аргумент, зависящий от события . Для большинства событий это значение равно NULL. В следующей таблице показаны аргументы события, которые являются значениями ULONG для указанных доступных номеров событий.

Номер события Возможные аргументы события
PO_CB_AC_STATUS 0 — указывает, что система работает от батареи.
1 — указывает, что система находится в режиме питания переменного тока.
PO_CB_LID_SWITCH_STATE 0 — указывает, что крышка закрывается.
1 — указывает, что крышка открывается.

[out] AcpiFlags

Указатель на значение, указывающее тип запроса, который драйвер мини-порта дисплея должен выполнить к операционной системе. В следующей таблице показаны значения, которые можно указать.

Значение Тип запроса
DXGK_ACPI_CHANGE_DISPLAY_MODE Драйвер мини-порта дисплея отправляет операционной системе запрос на вызов функции DxgkDdiRecommendFunctionalVidPn , а затем инициирует смену режима на новую рекомендуемую активную сеть видеотрансляций (VidPN). Например, драйвер мини-порта дисплея может выполнить этот запрос, если пользователь указал изменение режима.
DXGK_ACPI_CHANGE_DISPLAY_TOPOLOGY
DXGK_ACPI_POLL_DISPLAY_CHILDREN Драйвер мини-порта дисплея отправляет запрос операционной системе для опроса подключения дочерних элементов видеоадаптера, представленного MiniportDeviceContext.
DXGK_ACPI_CHAIN_NOT_HANDLED Указывает, что событие с типом DxgkChainedAcpiEvent не было обработано гибридным дискретным драйвером и поэтому должно быть отправлено в гибридный интегрированный драйвер.

Этот параметр игнорируется, если эта функция возвращает ошибку или если адаптер дисплея теряет питание.

Возвращаемое значение

DxgkDdiNotifyAcpiEvent возвращает STATUS_SUCCESS в случае успешного выполнения; в противном случае возвращается один из кодов ошибок, определенных в ntstatus.h.

Комментарии

DxgkDdiNotifyAcpiEvent — это необязательная функция драйвера минипорта дисплея.

DxgkDdiNotifyAcpiEvent должен быть доступным для страниц.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях операционных систем Windows.
Целевая платформа Персональный компьютер
Верхняя часть dispmprt.h
IRQL PASSIVE_LEVEL

См. также раздел

DxgkCbEvalAcpiMethod