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 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | d3d10umddi.h (D3d10umddi.h を含む) |