次の方法で共有


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

イベントの種類 (DpAcpiEvent、DpPowerStateEventDpDockingEvent) を提供する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 コントローラーに接続されている出力デバイスの 1 つの状態が切り替えられたことを示します。 たとえば、ユーザーはアクティブな出力ディスプレイを 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

ディスプレイ ミニポート ドライバーがオペレーティング システムに対して行う要求の種類を示す値へのポインター。 次の表に、指定できる値を示します。

Value 要求の種類
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 で定義されているエラー コードのいずれかを返します。

注釈

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

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

要件

要件
サポートされている最小のクライアント Windows Vista
対象プラットフォーム デスクトップ
Header dispmprt.h
IRQL PASSIVE_LEVEL

こちらもご覧ください

DxgkCbEvalAcpiMethod