次の方法で共有


PDXGK_INITIAL_COMPONENT_STATE コールバック関数 (d3dkmthk.h)

PDXGK_INITIAL_COMPONENT_STATE コールバック関数は、コンポーネントの状態を初期化するためにクライアント ドライバーによって実装されます。

構文

PDXGK_INITIAL_COMPONENT_STATE PdxgkInitialComponentState;

void PdxgkInitialComponentState(
  PVOID GraphicsDeviceHandle,
  PVOID PrivateHandle,
  ULONG ComponentIndex,
  BOOLEAN IsBlockingType,
  UINT InitialFState,
  GUID ComponentGuid,
  UINT PowerComponentMappingFlag
)
{...}

パラメーター

GraphicsDeviceHandle

グラフィックス デバイスのハンドル。

PrivateHandle

任意のコールバックで提供される不透明なハンドル。 このハンドルはグローバルに一意である必要があるため、呼び出し元のドライバーの PDO または FDO へのポインターを使用する必要があります。

ComponentIndex

コンポーネントのインデックス。 一般に、これはグラフィックス アダプターで使用されるインデックスになります。 ただし、リンクされたディスプレイ アダプター (LDA) のシナリオでは例外です。このシナリオでは、ComponentIndex の HIWORD がアダプター インデックスを示します。これは、グラフィックス ドライバーが LDA シナリオでの F 状態の変更のためにグラフィックス カーネルによって呼び出されたときに実行されます。

IsBlockingType

コンポーネントが "ブロック" の場合は TRUE を設定します。たとえば、グラフィックス ドライバーは、コンポーネントを ActiveInD3= 0として報告しています。 それ以外の場合は、FALSE を設定します。

InitialFState

呼び出し時に ComponentIndex によって表されるコンポーネントの F 状態。 F 状態遷移が現在進行中の場合、PreNotification=FALSE を含む PDXGK_FSTATE_NOTIFICATION 完了通知コールバックは、遷移が完了したときにしばらく後に続きます。 タイミングによっては、PreNotification=TRUE コールバックが発生することがあります。 発生した場合は、完了通知コールバックの前に置きます。

ComponentGuid

DXGKQAITYPE_POWERCOMPONENTINFO 応答中にこのコンポーネントのグラフィックス ドライバーによって報告されるコンポーネント GUID である GUID 値。

PowerComponentMappingFlag

HIWORD は、これがカスタム ドライバー定義値 (0 = いいえ、1 = はい) であるかどうかを示します。 0 (いいえ) の場合、下位ワードは DXGKMT_POWER_SHARED_TYPE 列挙値を表します。 これらの値は、DXGK_POWER_COMPONENT_MAPPINGに追加された DXGK_POWER_COMPONENT_SHARED_DESC の種類を使用して、DXGKQAITYPE_POWERCOMPONENTINFO 応答中にグラフィックス ドライバーによって設定されます。

戻り値

何一つ

備考

共有電源の登録時 (IoCallDriver 呼び出し)、PDXGK_INITIAL_COMPONENT_STATE が提供された場合は、グラフィックス ドライバーが報告した共有電源コンポーネントごとに 1 回呼び出されます。 このコールバックの動作は次のようになります。

  • これらの呼び出しは再入呼び出しであり、IoCallDriver 戻る前に発生
  • これらの呼び出しは DISPATCH_LEVEL で発生します。これには、ドライバー コードとデータがメモリ常駐
  • IoCallDriver 戻る前にこれらのコールバックが発生するため、DXGK_GRAPHICSPOWER_REGISTER_OUTPUT はまだ入力されていません
  • F 状態遷移が現在進行中の場合、通知後の PDXGK_FSTATE_NOTIFICATION は最終的な状態のドライバーに警告します。 このような呼び出しは、InitialComponentStateCb 呼び出しの後に発生することが保証されます。 ただし、同期が必要な場合は、IoCallDriver が返 前にこのようなコールバックが発生する可能性があります。 スピン ロックは、IoCallDriver PDXGK_FSTATE_NOTIFICATION ハンドラー 周囲に存在する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows 8
サポートされる最小サーバー Windows Server 2012
ヘッダー d3dkmthk.h
IRQL DISPATCH_LEVEL

関連項目

DXGK_GRAPHICSPOWER_REGISTER_OUTPUT

DXGK_POWER_COMPONENT_MAPPING

DXGK_QUERYADAPTERINFOTYPE

DXGKMT_POWER_SHARED_TYPE

PDXGK_FSTATE_NOTIFICATION