次の方法で共有


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

ディスプレイ アダプターを表すコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーの DxgkDdiAddDevice 関数は、以前に DirectX グラフィックス カーネル サブシステムにこのハンドルを提供しました。

[in] EventType

イベントの種類 (DpAcpiEventDpPowerStateEventDpDockingEvent) を提供する DXGK_EVENT_TYPE 列挙子。

[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 コントローラーに接続されている出力デバイスの状態が切り替えられたことを示します。 たとえば、ユーザーは、アクティブな出力ディスプレイを LCD から 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 - システムが AC 電源であることを示します。
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 ディスプレイ ミニポート ドライバーは、ミニポートDeviceContext によって表されるディスプレイ アダプターの子の接続をポーリングするオペレーティング システムに要求を行います。
DXGK_ACPI_CHAIN_NOT_HANDLED DxgkChainedAcpiEvent 型のイベントがハイブリッドディスクリート ドライバーによって処理されなかったため、ハイブリッド統合ドライバーに送信する必要があることを示します。

この関数がエラーを返す場合、またはディスプレイ アダプターの電源が切れた場合、このパラメーターは無視されます。

戻り値

DxgkDdiNotifyAcpiEvent 成功するとSTATUS_SUCCESSが返されます。それ以外の場合は、Ntstatus.hで定義されているエラー コードの 1 つを返します。

備考

DxgkDdiNotifyAcpiEvent は、オプションのディスプレイ ミニポート ドライバー関数です。

DxgkDdiNotifyAcpiEvent ページング可能にする必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ターゲット プラットフォーム デスクトップ
ヘッダー dispmprt.h
IRQL PASSIVE_LEVEL

関連項目

dxgkCbEvalAcpiMethod