OPM DDI の取得
次のシーケンスは、Microsoft DirectX グラフィックス カーネル サブシステム (Dxgkrnl.sys) がディスプレイ ミニポート ドライバーの OPM DDI を取得する方法を示しています。
DirectX グラフィックス カーネル サブシステムは、ディスプレイ ミニポート ドライバーの DxgkDdiAddDevice 関数を呼び出して、グラフィックス アダプターのコンテキスト ブロックを作成し、そのグラフィックス アダプターにハンドルを返します。
DirectX グラフィックス カーネル サブシステムは、次の表の値を使用して QUERY_INTERFACE 構造体を初期化します。
メンバー名 メンバーの型 値 InterfaceType
CONST PGUID
GUID_DEVINTERFACE_OPM を指すポインター
(BF4672DE-6B4E-4BE4-A325-68A91EA49C09)
Size
USHORT
sizeof(DXGK_OPM_INTERFACE)
Version
USHORT
DXGK_OPM_INTERFACE_VERSION_1
Interface
PINTERFACE
DXGK_OPM_INTERFACE 構造体を指すポインター
InterfaceSpecificData
PVOID
NULL
DirectX グラフィックス カーネル サブシステムは、ディスプレイ ミニポート ドライバーへの DxgkDdiQueryInterface 関数の呼び出しで初期化された QUERY_INTERFACE を渡します。
ディスプレイ ミニポート ドライバーが OPM インターフェイスをサポートしていない場合、DxgkDdiQueryInterface は STATUS_NOT_SUPPORTED を返す必要があります。
ディスプレイ ミニポート ドライバーが OPM をサポートしている場合、DxgkDdiQueryInterface は、次の表の値を使用して QUERY_INTERFACE の Interface メンバーで受信した DXGK_OPM_INTERFACE 構造体を初期化します。
メンバー名、タイプ、および値:
Size
USHORT タイプsizeof(DXGK_OPM_INTERFACE)
Version
USHORT タイプDXGK_OPM_INTERFACE_VERSION_1
InterfaceReference
PINTERFACE_REFERENCE タイプディスプレイ ミニポート ドライバーの InterfaceReference ルーチンを指すポインター (InterfaceReference の詳細については、INTERFACE 構造体の「備考」セクションを参照してください。)
InterfaceDereference
PINTERFACE_DEREFERENCE タイプディスプレイ ミニポート ドライバーの InterfaceDereference ルーチンを指すポインター (InterfaceDereference の詳細については、INTERFACE 構造体の「備考」セクションを参照してください。)
DxgkDdiOPMGetCertificateSize
DXGKDDI_OPM_GET_CERTIFICATE_SIZE タイプディスプレイ ミニポート ドライバーの DxgkDdiOPMGetCertificateSize 関数を指すポインター
DxgkDdiOPMGetCertificate
DXGKDDI_OPM_GET_CERTIFICATE タイプディスプレイ ミニポート ドライバーの DxgkDdiOPMGetCertificate 関数を指すポインター
DxgkDdiOPMCreateProtectedOutput
DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT タイプディスプレイ ミニポート ドライバーの DxgkDdiOPMCreateProtectedOutput 関数を指すポインター
DxgkDdiOPMGetRandomNumber
DXGKDDI_OPM_GET_RANDOM_NUMBER タイプディスプレイ ミニポート ドライバーの DxgkDdiOPMGetRandomNumber 関数を指すポインター
DxgkDdiOPMSetSigningKeyAndSequenceNumbers
DXGKDDI_OPM_SET_SIGNING_KEY_AND_SEQUENCE_NUMBERSディスプレイ ミニポート ドライバーの DxgkDdiOPMSetSigningKeyAndSequenceNumbers 関数を指すポインター
DxgkDdiOPMGetInformation
DXGKDDI_OPM_GET_INFORMATIONディスプレイ ミニポート ドライバーの DxgkDdiOPMGetInformation 関数を指すポインター
DxgkDdiOPMGetCOPPCompatibleInformation
DXGKDDI_OPM_GET_COPP_COMPATIBLE_INFORMATIONディスプレイ ミニポート ドライバーの DxgkDdiOPMGetCOPPCompatibleInformation 関数を指すポインター
DxgkDdiOPMConfigureProtectedOutput
DXGKDDI_OPM_CONFIGURE_PROTECTED_OUTPUTディスプレイ ミニポート ドライバーの DxgkDdiOPMConfigureProtectedOutput 関数を指すポインター
DxgkDdiOPMDestroyProtectedOutput
DXGKDDI_OPM_DESTROY_PROTECTED_OUTPUTディスプレイ ミニポート ドライバーの DxgkDdiOPMDestroyProtectedOutput 関数を指すポインター
ディスプレイ ミニポート ドライバーが OPM インターフェイスを使用して終了すると、ドライバーは、その InterfaceDereference ルーチンを呼び出します。 ドライバーは、その DxgkDdiRemoveDevice 関数が呼び出される前に、InterfaceDereference を呼び出す必要があります。