PFND3DWDDM2_0DDI_GETCRYPTOSESSIONPRIVATEDATASIZE コールバック関数 (d3d10umddi.h)
GetCryptoSessionPrivateDataSize は、オプションのプライベート ドライバー データのサイズを取得します。
構文
PFND3DWDDM2_0DDI_GETCRYPTOSESSIONPRIVATEDATASIZE Pfnd3dwddm20DdiGetcryptosessionprivatedatasize;
void Pfnd3dwddm20DdiGetcryptosessionprivatedatasize(
D3D10DDI_HDEVICE hDevice,
const GUID *pCryptoType,
const GUID *pDecoderProfile,
const GUID *pKeyExchangeType,
UINT *pPrivateInputSize,
UINT *pPrivateOutputSize
)
{...}
パラメーター
hDevice
ディスプレイ デバイス (グラフィックス コンテキスト) へのハンドル。 Direct3D ランタイムは、ユーザー モード ドライバーにこのハンドルを、デバイスの作成時にD3DDDIARG_CREATEDEVICE構造体の hDevice メンバーとして渡しました。
pCryptoType
プライベート入力および出力サイズのクエリを実行する暗号化の種類を示します。
pDecoderProfile
プライベート入出力サイズの照会対象となるデコーダー プロファイルを示します。
pKeyExchangeType
プライベート入力および出力サイズのクエリを実行するキー交換の種類を示します。
pPrivateInputSize
ドライバーが入力コマンドに必要なプライベート データのサイズを返します。
pPrivateOutputSize
ドライバーが出力コマンドに必要なプライベート データのサイズを返します。
戻り値
なし
解説
pKeyExchangeType をD3D11_KEY_EXCHANGE_HW_PROTECTIONすると、NegotiateCryptessionKeyExchangeデバイス ドライバー インターフェイス (DDI) で次の動作が想定されます。
- DataSize は、 D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA 構造体のサイズに設定されます。
- pData は 、D3D11_KEY_EXCHANGE_CONTENT_PROTECTION_DATA 構造体を指します。
-
pInputData は 、 次の場所にあるD3D11_KEY_EXCHANGE_CONTENT_PROTECTION_OUTPUT_DATA 構造体を指します。
- pbInput[0] – pbInput[N-1] には、ドライバーで使用するために予約されたメモリが含まれています。 ドライバー用に予約されたバイト数 (N) は、GetCryptoSessionPrivateDataSizeDDI によって返される pPrivateInputSize 値によって決まります。
- pbInput[N] には、Digital Rights Management (DRM) コマンド パケットの最初のバイトが含まれています。
-
pOutputData は 、 次のD3D11_KEY_EXCHANGE_CONTENT_PROTECTION_OUTPUT_DATA 構造体を指します。
- pbOutput[0] – pbOutput[M-1] には、ドライバーで使用するために予約されたメモリが含まれています。 ドライバー用に予約されたバイト数 (M) は、GetCryptoSessionPrivateDataSizeDDI によって返される pPrivateOutputSize 値によって決まります。
- pbOutput[M] には、DRM コマンド パケットの最初のバイトが含まれています。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 |
サポートされている最小のサーバー | Windows Server 2016 |
対象プラットフォーム | デスクトップ |
Header | d3d10umddi.h (D3d10umddi.h を含む) |