D3DDDI_DEVICEFUNCS構造体 (d3dumddi.h)

D3DDDI_DEVICEFUNCS構造体には、グラフィックス プリミティブをレンダリングし、状態の変更を処理するためにユーザー モードディスプレイ ドライバーが実装できる関数が含まれています。

構文

typedef struct _D3DDDI_DEVICEFUNCS {
  PFND3DDDI_SETRENDERSTATE                           pfnSetRenderState;
  PFND3DDDI_UPDATEWINFO                              pfnUpdateWInfo;
  PFND3DDDI_VALIDATEDEVICE                           pfnValidateDevice;
  PFND3DDDI_SETTEXTURESTAGESTATE                     pfnSetTextureStageState;
  PFND3DDDI_SETTEXTURE                               pfnSetTexture;
  PFND3DDDI_SETPIXELSHADER                           pfnSetPixelShader;
  PFND3DDDI_SETPIXELSHADERCONST                      pfnSetPixelShaderConst;
  PFND3DDDI_SETSTREAMSOURCEUM                        pfnSetStreamSourceUm;
  PFND3DDDI_SETINDICES                               pfnSetIndices;
  PFND3DDDI_SETINDICESUM                             pfnSetIndicesUm;
  PFND3DDDI_DRAWPRIMITIVE                            pfnDrawPrimitive;
  PFND3DDDI_DRAWINDEXEDPRIMITIVE                     pfnDrawIndexedPrimitive;
  PFND3DDDI_DRAWRECTPATCH                            pfnDrawRectPatch;
  PFND3DDDI_DRAWTRIPATCH                             pfnDrawTriPatch;
  PFND3DDDI_DRAWPRIMITIVE2                           pfnDrawPrimitive2;
  PFND3DDDI_DRAWINDEXEDPRIMITIVE2                    pfnDrawIndexedPrimitive2;
  PFND3DDDI_VOLBLT                                   pfnVolBlt;
  PFND3DDDI_BUFBLT                                   pfnBufBlt;
  PFND3DDDI_TEXBLT                                   pfnTexBlt;
  PFND3DDDI_STATESET                                 pfnStateSet;
  PFND3DDDI_SETPRIORITY                              pfnSetPriority;
  PFND3DDDI_CLEAR                                    pfnClear;
  PFND3DDDI_UPDATEPALETTE                            pfnUpdatePalette;
  PFND3DDDI_SETPALETTE                               pfnSetPalette;
  PFND3DDDI_SETVERTEXSHADERCONST                     pfnSetVertexShaderConst;
  PFND3DDDI_MULTIPLYTRANSFORM                        pfnMultiplyTransform;
  PFND3DDDI_SETTRANSFORM                             pfnSetTransform;
  PFND3DDDI_SETVIEWPORT                              pfnSetViewport;
  PFND3DDDI_SETZRANGE                                pfnSetZRange;
  PFND3DDDI_SETMATERIAL                              pfnSetMaterial;
  PFND3DDDI_SETLIGHT                                 pfnSetLight;
  PFND3DDDI_CREATELIGHT                              pfnCreateLight;
  PFND3DDDI_DESTROYLIGHT                             pfnDestroyLight;
  PFND3DDDI_SETCLIPPLANE                             pfnSetClipPlane;
  PFND3DDDI_GETINFO                                  pfnGetInfo;
  PFND3DDDI_LOCK                                     pfnLock;
  PFND3DDDI_UNLOCK                                   pfnUnlock;
  PFND3DDDI_CREATERESOURCE                           pfnCreateResource;
  PFND3DDDI_DESTROYRESOURCE                          pfnDestroyResource;
  PFND3DDDI_SETDISPLAYMODE                           pfnSetDisplayMode;
  PFND3DDDI_PRESENT                                  pfnPresent;
  PFND3DDDI_FLUSH                                    pfnFlush;
  PFND3DDDI_CREATEVERTEXSHADERFUNC                   pfnCreateVertexShaderFunc;
  PFND3DDDI_DELETEVERTEXSHADERFUNC                   pfnDeleteVertexShaderFunc;
  PFND3DDDI_SETVERTEXSHADERFUNC                      pfnSetVertexShaderFunc;
  PFND3DDDI_CREATEVERTEXSHADERDECL                   pfnCreateVertexShaderDecl;
  PFND3DDDI_DELETEVERTEXSHADERDECL                   pfnDeleteVertexShaderDecl;
  PFND3DDDI_SETVERTEXSHADERDECL                      pfnSetVertexShaderDecl;
  PFND3DDDI_SETVERTEXSHADERCONSTI                    pfnSetVertexShaderConstI;
  PFND3DDDI_SETVERTEXSHADERCONSTB                    pfnSetVertexShaderConstB;
  PFND3DDDI_SETSCISSORRECT                           pfnSetScissorRect;
  PFND3DDDI_SETSTREAMSOURCE                          pfnSetStreamSource;
  PFND3DDDI_SETSTREAMSOURCEFREQ                      pfnSetStreamSourceFreq;
  PFND3DDDI_SETCONVOLUTIONKERNELMONO                 pfnSetConvolutionKernelMono;
  PFND3DDDI_COMPOSERECTS                             pfnComposeRects;
  PFND3DDDI_BLT                                      pfnBlt;
  PFND3DDDI_COLORFILL                                pfnColorFill;
  PFND3DDDI_DEPTHFILL                                pfnDepthFill;
  PFND3DDDI_CREATEQUERY                              pfnCreateQuery;
  PFND3DDDI_DESTROYQUERY                             pfnDestroyQuery;
  PFND3DDDI_ISSUEQUERY                               pfnIssueQuery;
  PFND3DDDI_GETQUERYDATA                             pfnGetQueryData;
  PFND3DDDI_SETRENDERTARGET                          pfnSetRenderTarget;
  PFND3DDDI_SETDEPTHSTENCIL                          pfnSetDepthStencil;
  PFND3DDDI_GENERATEMIPSUBLEVELS                     pfnGenerateMipSubLevels;
  PFND3DDDI_SETPIXELSHADERCONSTI                     pfnSetPixelShaderConstI;
  PFND3DDDI_SETPIXELSHADERCONSTB                     pfnSetPixelShaderConstB;
  PFND3DDDI_CREATEPIXELSHADER                        pfnCreatePixelShader;
  PFND3DDDI_DELETEPIXELSHADER                        pfnDeletePixelShader;
  PFND3DDDI_CREATEDECODEDEVICE                       pfnCreateDecodeDevice;
  PFND3DDDI_DESTROYDECODEDEVICE                      pfnDestroyDecodeDevice;
  PFND3DDDI_SETDECODERENDERTARGET                    pfnSetDecodeRenderTarget;
  PFND3DDDI_DECODEBEGINFRAME                         pfnDecodeBeginFrame;
  PFND3DDDI_DECODEENDFRAME                           pfnDecodeEndFrame;
  PFND3DDDI_DECODEEXECUTE                            pfnDecodeExecute;
  PFND3DDDI_DECODEEXTENSIONEXECUTE                   pfnDecodeExtensionExecute;
  PFND3DDDI_CREATEVIDEOPROCESSDEVICE                 pfnCreateVideoProcessDevice;
  PFND3DDDI_DESTROYVIDEOPROCESSDEVICE                pfnDestroyVideoProcessDevice;
  PFND3DDDI_VIDEOPROCESSBEGINFRAME                   pfnVideoProcessBeginFrame;
  PFND3DDDI_VIDEOPROCESSENDFRAME                     pfnVideoProcessEndFrame;
  PFND3DDDI_SETVIDEOPROCESSRENDERTARGET              pfnSetVideoProcessRenderTarget;
  PFND3DDDI_VIDEOPROCESSBLT                          pfnVideoProcessBlt;
  PFND3DDDI_CREATEEXTENSIONDEVICE                    pfnCreateExtensionDevice;
  PFND3DDDI_DESTROYEXTENSIONDEVICE                   pfnDestroyExtensionDevice;
  PFND3DDDI_EXTENSIONEXECUTE                         pfnExtensionExecute;
  PFND3DDDI_CREATEOVERLAY                            pfnCreateOverlay;
  PFND3DDDI_UPDATEOVERLAY                            pfnUpdateOverlay;
  PFND3DDDI_FLIPOVERLAY                              pfnFlipOverlay;
  PFND3DDDI_GETOVERLAYCOLORCONTROLS                  pfnGetOverlayColorControls;
  PFND3DDDI_SETOVERLAYCOLORCONTROLS                  pfnSetOverlayColorControls;
  PFND3DDDI_DESTROYOVERLAY                           pfnDestroyOverlay;
  PFND3DDDI_DESTROYDEVICE                            pfnDestroyDevice;
  PFND3DDDI_QUERYRESOURCERESIDENCY                   pfnQueryResourceResidency;
  PFND3DDDI_OPENRESOURCE                             pfnOpenResource;
  PFND3DDDI_GETCAPTUREALLOCATIONHANDLE               pfnGetCaptureAllocationHandle;
  PFND3DDDI_CAPTURETOSYSMEM                          pfnCaptureToSysMem;
  PFND3DDDI_LOCKASYNC                                pfnLockAsync;
  PFND3DDDI_UNLOCKASYNC                              pfnUnlockAsync;
  PFND3DDDI_RENAME                                   pfnRename;
  PFND3DDDI_DXVAHD_CREATEVIDEOPROCESSOR              pfnCreateVideoProcessor;
  PFND3DDDI_DXVAHD_SETVIDEOPROCESSBLTSTATE           pfnSetVideoProcessBltState;
  PFND3DDDI_DXVAHD_GETVIDEOPROCESSBLTSTATEPRIVATE    pfnGetVideoProcessBltStatePrivate;
  PFND3DDDI_DXVAHD_SETVIDEOPROCESSSTREAMSTATE        pfnSetVideoProcessStreamState;
  PFND3DDDI_DXVAHD_GETVIDEOPROCESSSTREAMSTATEPRIVATE pfnGetVideoProcessStreamStatePrivate;
  PFND3DDDI_DXVAHD_VIDEOPROCESSBLTHD                 pfnVideoProcessBltHD;
  PFND3DDDI_DXVAHD_DESTROYVIDEOPROCESSOR             pfnDestroyVideoProcessor;
  PFND3DDDI_CREATEAUTHENTICATEDCHANNEL               pfnCreateAuthenticatedChannel;
  PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE          pfnAuthenticatedChannelKeyExchange;
  PFND3DDDI_QUERYAUTHENTICATEDCHANNEL                pfnQueryAuthenticatedChannel;
  PFND3DDDI_CONFIGUREAUTHENICATEDCHANNEL             pfnConfigureAuthenticatedChannel;
  PFND3DDDI_DESTROYAUTHENTICATEDCHANNEL              pfnDestroyAuthenticatedChannel;
  PFND3DDDI_CREATECRYPTOSESSION                      pfnCreateCryptoSession;
  PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE                 pfnCryptoSessionKeyExchange;
  PFND3DDDI_DESTROYCRYPTOSESSION                     pfnDestroyCryptoSession;
  PFND3DDDI_ENCRYPTIONBLT                            pfnEncryptionBlt;
  PFND3DDDI_GETPITCH                                 pfnGetPitch;
  PFND3DDDI_STARTSESSIONKEYREFRESH                   pfnStartSessionKeyRefresh;
  PFND3DDDI_FINISHSESSIONKEYREFRESH                  pfnFinishSessionKeyRefresh;
  PFND3DDDI_GETENCRYPTIONBLTKEY                      pfnGetEncryptionBltKey;
  PFND3DDDI_DECRYPTIONBLT                            pfnDecryptionBlt;
  PFND3DDDI_RESOLVESHAREDRESOURCE                    pfnResolveSharedResource;
  PFND3DDDI_VOLBLT1                                  pfnVolBlt1;
  PFND3DDDI_BUFBLT1                                  pfnBufBlt1;
  PFND3DDDI_TEXBLT1                                  pfnTexBlt1;
  PFND3DDDI_DISCARD                                  pfnDiscard;
  PFND3DDDI_OFFERRESOURCES                           pfnOfferResources;
  PFND3DDDI_RECLAIMRESOURCES                         pfnReclaimResources;
  PFND3DDDI_CHECKDIRECTFLIPSUPPORT                   pfnCheckDirectFlipSupport;
  PFND3DDDI_CREATERESOURCE2                          pfnCreateResource2;
  PFND3DDDI_CHECKMULTIPLANEOVERLAYSUPPORT            pfnCheckMultiPlaneOverlaySupport;
  PFND3DDDI_PRESENTMULTIPLANEOVERLAY                 pfnPresentMultiPlaneOverlay;
  void                                               *pfnReserved1;
  PFND3DDDI_FLUSH1                                   pfnFlush1;
  PFND3DDDI_CHECKCOUNTERINFO                         pfnCheckCounterInfo;
  PFND3DDDI_CHECKCOUNTER                             pfnCheckCounter;
  PFND3DDDI_UPDATESUBRESOURCEUP                      pfnUpdateSubresourceUP;
  PFND3DDDI_PRESENT1                                 pfnPresent1;
  PFND3DDDI_CHECKPRESENTDURATIONSUPPORT              pfnCheckPresentDurationSupport;
  PFND3DDDI_SETMARKER                                pfnSetMarker;
  PFND3DDDI_SETMARKERMODE                            pfnSetMarkerMode;
  PFND3DDDI_TRIMRESIDENCYSET                         pfnTrimResidencySet;
  PFND3DDDI_SYNCTOKEN                                pfnAcquireResource;
  PFND3DDDI_SYNCTOKEN                                pfnReleaseResource;
} D3DDDI_DEVICEFUNCS;

メンバー

pfnSetRenderState

レンダリング状態を更新するドライバー SetRenderState 関数へのポインター。

pfnUpdateWInfo

w バッファリングの w 範囲を更新するドライバー UpdateWInfo 関数へのポインター。

pfnValidateDevice

ハードウェアが現在の状態で指定されているブレンド操作を実行できるパスの数を返すドライバー の ValidateDevice 関数へのポインター。

pfnSetTextureStageState

複数のテクスチャ グループ内の特定のステージでテクスチャの状態を更新する、ドライバー の SetTextureStageState 関数へのポインター。

pfnSetTexture

複数のテクスチャ グループ内の特定のステージにテクスチャを設定するドライバー の SetTexture 関数へのポインター。

pfnSetPixelShader

現在のピクセル シェーダーを設定するドライバー SetPixelShader 関数へのポインター。

pfnSetPixelShaderConst

float 値を持つ 1 つ以上のピクセル シェーダー定数レジスタを設定するドライバー SetPixelShaderConst 関数へのポインター。

pfnSetStreamSourceUm

頂点ストリーム ソースをユーザー メモリ バッファーにバインドするドライバー SetStreamSourceUM 関数へのポインター。

pfnSetIndices

現在のインデックス バッファーを設定するドライバー SetIndices 関数へのポインター。

pfnSetIndicesUm

インデックス バッファーをユーザー メモリ バッファーにバインドするドライバー SetIndicesUM 関数へのポインター。

pfnDrawPrimitive

Microsoft Direct3D ランタイムが頂点データを変換していないインデックスのないプリミティブを描画するドライバー DrawPrimitive 関数へのポインター。

pfnDrawIndexedPrimitive

Direct3D ランタイムが頂点データを変換していないインデックス付きプリミティブを描画するドライバー DrawIndexedPrimitive 関数へのポインター。

pfnDrawRectPatch

新しいまたはキャッシュされた四角形のパッチを描画するか、以前に定義したパッチの仕様を更新する、ドライバー DrawRectPatch 関数へのポインター。

pfnDrawTriPatch

新しい三角形パッチまたはキャッシュされた三角形パッチを描画するか、以前に定義したパッチの仕様を更新する、ドライバー DrawTriPatch 関数へのポインター。

pfnDrawPrimitive2

Direct3D ランタイムが頂点データを変換したインデックスのないプリミティブを描画するドライバー DrawPrimitive2 関数へのポインター。

pfnDrawIndexedPrimitive2

Direct3D ランタイムが頂点データを変換したインデックス付きプリミティブを描画するドライバー DrawIndexedPrimitive2 関数へのポインター。

pfnVolBlt

ソース ボリューム テクスチャから宛先ボリューム テクスチャへのビット ブロック転送 (ビットblt) を実行するドライバー VolBlt 関数へのポインター。

pfnBufBlt

ソース頂点またはインデックス バッファーから変換先の頂点またはインデックス バッファーへのビットブレットを実行するドライバー BufBlt 関数へのポインター。

pfnTexBlt

ソース テクスチャから宛先テクスチャへのビットブレットを実行するドライバー TexBlt 関数へのポインター。

pfnStateSet

状態セット操作を実行するドライバー の StateSet 関数へのポインター。

pfnSetPriority

マネージド テクスチャのメモリからの削除の優先度を設定するドライバー の SetPriority 関数へのポインター。

pfnClear

レンダリング ターゲット、深度バッファー、またはステンシル バッファーに対してハードウェア支援のクリアを実行するドライバー Clear 関数へのポインター。

pfnUpdatePalette

テクスチャ パレットを更新するドライバー UpdatePalette 関数へのポインター。

pfnSetPalette

テクスチャのパレットを設定するドライバー の SetPalette 関数へのポインター。

pfnSetVertexShaderConst

1 つ以上の頂点シェーダー定数レジスタを float 値で設定する、ドライバー の SetVertexShaderConst 関数へのポインター。

pfnMultiplyTransform

現在の変換を乗算するドライバー の MultiplyTransform 関数へのポインター。

pfnSetTransform

変換を設定するドライバー の SetTransform 関数へのポインター。

pfnSetViewport

ビュークリッピング四角形のガードバンド対応ドライバーを通知するドライバー SetViewport 関数へのポインター。

pfnSetZRange

z 値の範囲についてドライバーに通知するドライバー SetZRange 関数へのポインター。

pfnSetMaterial

システム上のデバイスがレンダリング中に必要な効果を作成するために使用するマテリアル プロパティを設定する、ドライバー の SetMaterial 関数へのポインター。

pfnSetLight

光源のプロパティを設定するドライバー の SetLight 関数へのポインター。

pfnCreateLight

光源を作成するドライバー の CreateLight 関数へのポインター。

pfnDestroyLight

光源を非アクティブ化するドライバー DestroyLight 関数へのポインター。

pfnSetClipPlane

クリップ プレーンを設定するドライバー SetClipPlane 関数へのポインター。

pfnGetInfo

デバイスに関する情報を取得するドライバー GetInfo 関数へのポインター。

pfnLock

リソースまたはリソース内のサーフェスをロックするドライバーロック関数へのポインター。

pfnUnlock

Lock 関数が以前にロックしたリソースまたはリソース内のサーフェスのロックを解除する、ドライバーUnlock 関数へのポインター。

pfnCreateResource

リソースを作成するドライバー の CreateResource 関数へのポインター。

pfnDestroyResource

CreateResource 関数によって作成されたリソースを解放するドライバー DestroyResource 関数へのポインター。

pfnSetDisplayMode

表示するサーフェスを設定するドライバー SetDisplayMode 関数へのポインター。

pfnPresent

コピーまたは反転によってソースサーフェスの表示を要求するドライバー Present 関数へのポインター。

pfnFlush

ハードウェア コマンド バッファー内にある未処理のハードウェア コマンドをディスプレイ ミニポート ドライバーに送信する、ユーザー モードディスプレイ ドライバー Flush 関数へのポインター。

pfnCreateVertexShaderFunc

頂点シェーダー コードをハードウェア固有の形式に変換し、このコードを指定されたシェーダー ハンドルに関連付ける、ドライバー の CreateVertexShaderFunc 関数へのポインター。

pfnDeleteVertexShaderFunc

頂点シェーダー コードに関連付けられているドライバー側リソースをクリーンアップするドライバー DeleteVertexShaderFunc 関数へのポインター。

pfnSetVertexShaderFunc

後続のすべての描画操作でそのコードが使用されるように頂点シェーダー コードを設定するドライバー SetVertexShaderFunc 関数へのポインター。

pfnCreateVertexShaderDecl

頂点シェーダー宣言をハードウェア固有の形式に変換し、この宣言を指定されたシェーダー ハンドルに関連付ける、ドライバー CreateVertexShaderDecl 関数へのポインター。

pfnDeleteVertexShaderDecl

頂点シェーダー宣言に関連付けられているドライバー側リソースをクリーンアップするドライバー DeleteVertexShaderDecl 関数へのポインター。

pfnSetVertexShaderDecl

後続のすべての描画操作でその宣言が使用されるように頂点シェーダー宣言を設定する、ドライバー SetVertexShaderDecl 関数へのポインター。

pfnSetVertexShaderConstI

1 つ以上の頂点シェーダー定数レジスタを整数値で設定する、ドライバー の SetVertexShaderConstI 関数へのポインター。

pfnSetVertexShaderConstB

ブール値を持つ 1 つ以上の頂点シェーダー定数レジスタを設定するドライバー SetVertexShaderConstB 関数へのポインター。

pfnSetScissorRect

レンダリングが制限されているレンダー ターゲットの一部をマークするドライバー SetScissorRect 関数へのポインター。

pfnSetStreamSource

頂点ストリーム ソースの一部を頂点バッファーにバインドする、ドライバー の SetStreamSource 関数へのポインター。

pfnSetStreamSourceFreq

頂点バッファーにバインドされているストリーム ソースの頻度除数を設定する、ドライバー の SetStreamSourceFreq 関数へのポインター。

pfnSetConvolutionKernelMono

モノクロ畳み込みカーネルを設定するドライバー SetConvolutionKernelMono 関数へのポインター。

pfnComposeRects

四角形の領域を構成するドライバー ComposeRects 関数へのポインター。

pfnBlt

ソース サーフェスの内容をコピー先サーフェスにコピーするドライバー Blt 関数へのポインター。

pfnColorFill

サーフェス上の四角形の領域を特定のA8R8G8B8色で塗りつぶす、ドライバー の ColorFill 関数へのポインター。

pfnDepthFill

ネイティブ形式で指定されたピクセル値で深度バッファーを埋めるドライバー DepthFill 関数へのポインター。

pfnCreateQuery

Direct3D ランタイムが後で処理のために発行するクエリのドライバー側リソースを作成するドライバー の CreateQuery 関数へのポインター。

pfnDestroyQuery

CreateQuery 関数が作成したクエリのリソースを解放するドライバー DestroyQuery 関数へのポインター。

pfnIssueQuery

CreateQuery 関数が作成したクエリを処理するドライバーの IssueQuery 関数へのポインター。

pfnGetQueryData

クエリに関する情報を取得するドライバー GetQueryData 関数へのポインター。

pfnSetRenderTarget

ドライバーのコンテキストでレンダー ターゲットサーフェスを設定するドライバー SetRenderTarget 関数へのポインター。

pfnSetDepthStencil

ドライバーのコンテキストで深度バッファーを設定するドライバー SetDepthStencil 関数へのポインター。

pfnGenerateMipSubLevels

MIP マップ テクスチャのサブレベルを再生成するドライバー GenerateMipSubLevels 関数へのポインター。

pfnSetPixelShaderConstI

整数値を持つ 1 つ以上のピクセル シェーダー定数レジスタを設定するドライバー SetPixelShaderConstI 関数へのポインター。

pfnSetPixelShaderConstB

ブール値を持つ 1 つ以上のピクセル シェーダー定数レジスタを設定するドライバー SetPixelShaderConstB 関数へのポインター。

pfnCreatePixelShader

ピクセル シェーダー コードをハードウェア固有の形式に変換し、このコードをシェーダー ハンドルに関連付けるドライバー CreatePixelShader 関数へのポインター。

pfnDeletePixelShader

ピクセル シェーダー コードに関連付けられているドライバー側リソースをクリーンアップするドライバー DeletePixelShader 関数へのポインター。

pfnCreateDecodeDevice

指定されたパラメーターから Microsoft DirectX ビデオ アクセラレーション (VA) デコード デバイスの表現を作成するドライバー の CreateDecodeDevice 関数へのポインター。

pfnDestroyDecodeDevice

DirectX VA デコード デバイスのリソースを解放するドライバー DestroyDecodeDevice 関数へのポインター。

pfnSetDecodeRenderTarget

デコードするレンダー ターゲットを設定するドライバー SetDecodeRenderTarget 関数へのポインター。 SetDecodeRenderTargetDecodeBeginFrame/DecodeEndFrame ブロックの外部でのみ呼び出すことができます。

pfnDecodeBeginFrame

フレームのデコードを開始できることを示すドライバー DecodeBeginFrame 関数へのポインター。

pfnDecodeEndFrame

フレームデコード操作を完了する必要があることを示すドライバー DecodeEndFrame 関数へのポインター。

pfnDecodeExecute

DirectX VA デコード操作を実行するドライバー DecodeExecute 関数へのポインター。 DecodeExecuteDecodeBeginFrame/DecodeEndFrame ブロック内で呼び出す必要があります。

pfnDecodeExtensionExecute

非標準の DirectX VA デコード操作を実行するドライバー DecodeExtensionExecute 関数へのポインター。 DecodeExtensionExecuteDecodeBeginFrame/DecodeEndFrame ブロック内で呼び出す必要があります。

pfnCreateVideoProcessDevice

指定されたパラメーターから DirectX VA ビデオ処理デバイスの表現を作成するドライバー CreateVideoProcessDevice 関数へのポインター。

pfnDestroyVideoProcessDevice

DirectX VA ビデオ処理デバイスのリソースを解放するドライバー DestroyVideoProcessDevice 関数へのポインター。

pfnVideoProcessBeginFrame

フレームのビデオ処理を開始できることを示すドライバー VideoProcessBeginFrame 関数へのポインター。

pfnVideoProcessEndFrame

ビデオ処理操作を完了する必要があることを示すドライバー VideoProcessEndFrame 関数へのポインター。

pfnSetVideoProcessRenderTarget

ビデオ処理のレンダー ターゲットを設定するドライバー SetVideoProcessRenderTarget 関数へのポインター。 SetVideoProcessRenderTarget は、 VideoProcessBeginFrame/VideoProcessEndFrame ブロックの外部でのみ呼び出すことができます。

pfnVideoProcessBlt

DirectX VA ビデオを処理するドライバー VideoProcessBlt 関数へのポインター。 VideoProcessBlt は、 VideoProcessBeginFrame/VideoProcessEndFrame ブロック内で呼び出す必要があります。

pfnCreateExtensionDevice

指定されたパラメーターから DirectX VA 拡張デバイスの表現を作成するドライバーの CreateExtensionDevice 関数へのポインター。

pfnDestroyExtensionDevice

DirectX VA 拡張デバイスのリソースを解放するドライバー DestroyExtensionDevice 関数へのポインター。

pfnExtensionExecute

指定された DirectX VA 拡張デバイスに固有の操作を実行するドライバー ExtensionExecute 関数へのポインター。

pfnCreateOverlay

オーバーレイ ハードウェアを割り当て、オーバーレイを表示するドライバー の CreateOverlay 関数へのポインター。

pfnUpdateOverlay

表示されているオーバーレイを再構成または移動するドライバー UpdateOverlay 関数へのポインター。

pfnFlipOverlay

オーバーレイ ハードウェアが新しい割り当ての表示を開始するドライバー FlipOverlay 関数へのポインター。

pfnGetOverlayColorControls

オーバーレイのカラー コントロール設定を取得するドライバー GetOverlayColorControls 関数へのポインター。

pfnSetOverlayColorControls

オーバーレイのカラー コントロール設定を変更するドライバー の SetOverlayColorControls 関数へのポインター。

pfnDestroyOverlay

オーバーレイ ハードウェアを無効にし、オーバーレイ ハンドルを解放する、ドライバーの DestroyOverlay 関数へのポインター。

pfnDestroyDevice

ディスプレイ デバイスのリソースを解放するドライバー DestroyDevice 関数へのポインター。

pfnQueryResourceResidency

リソースの所在地を決定するドライバー QueryResourceResidency 関数へのポインター。

pfnOpenResource

共有リソースが開かれていることをドライバーに通知するドライバー OpenResource 関数へのポインター。

pfnGetCaptureAllocationHandle

指定されたキャプチャ リソースを割り当てにマップするドライバー GetCaptureAllocationHandle 関数へのポインター。

pfnCaptureToSysMem

キャプチャ バッファーをビデオ メモリサーフェイスにコピーするドライバー CaptureToSysMem 関数へのポインター。

pfnLockAsync

リソースまたはリソース内のサーフェスをロックするドライバー の LockAsync 関数へのポインター。

pfnUnlockAsync

LockAsync 関数が以前にロックしたリソースまたはリソース内のサーフェスのロックを解除する、ドライバーの UnlockAsync 関数へのポインター。

pfnRename

新しい割り当て、リソース、またはリソース内のサーフェスで名前を変更するドライバーの 名前 変更関数へのポインター。

pfnCreateVideoProcessor

ビデオ プロセッサを作成するドライバー CreateVideoProcessor 関数へのポインター。

pfnSetVideoProcessBltState

ビデオ プロセッサのビットビットの状態を設定するドライバー SetVideoProcessBltState 関数へのポインター。

pfnGetVideoProcessBltStatePrivate

ビデオ プロセッサのプライベート ビットレットの状態データを取得するドライバー GetVideoProcessBltStatePrivate 関数へのポインター。

pfnSetVideoProcessStreamState

ビデオ プロセッサのストリームの状態を設定するドライバー SetVideoProcessStreamState 関数へのポインター。

pfnGetVideoProcessStreamStatePrivate

ビデオ プロセッサのプライベート ストリーム状態データを取得するドライバー GetVideoProcessStreamStatePrivate 関数へのポインター。

pfnVideoProcessBltHD

ビデオ入力ストリームを処理し、出力サーフェイスに作成するドライバー VideoProcessBltHD 関数へのポインター。

pfnDestroyVideoProcessor

以前に作成したビデオ プロセッサのリソースを解放するドライバー DestroyVideoProcessor 関数へのポインター。

pfnCreateAuthenticatedChannel

Direct3D ランタイムとドライバーが保護の設定とクエリに使用できるチャネルを作成するドライバー CreateAuthenticatedChannel 関数へのポインター。

pfnAuthenticatedChannelKeyExchange

セッション キーをネゴシエートするドライバー AuthenticatedChannelKeyExchange 関数へのポインター。

pfnQueryAuthenticatedChannel

認証されたチャネルに対して機能と状態の情報を照会するドライバー QueryAuthenticatedChannel 関数へのポインター。

pfnConfigureAuthenticatedChannel

認証済みチャネル内の状態を設定するドライバー ConfigureAuthenticatedChannel 関数へのポインター。

pfnDestroyAuthenticatedChannel

認証済みチャネルのリソースを解放するドライバー DestroyAuthenticatedChannel 関数へのポインター。

pfnCreateCryptoSession

暗号化セッションを作成するドライバー CreateCryptoSession 関数へのポインター。

pfnCryptoSessionKeyExchange

暗号化セッション中にキー交換を実行するドライバー CryptoSessionKeyExchange 関数へのポインター。

pfnDestroyCryptoSession

暗号化セッションのリソースを解放するドライバー DestroyCryptoSession 関数へのポインター。

pfnEncryptionBlt

暗号化されたビットブレット操作を実行するドライバー EncryptionBlt 関数へのポインター。

pfnGetPitch

暗号化されたサーフェスのピッチを取得するドライバー GetPitch 関数へのポインター。

pfnStartSessionKeyRefresh

現在のビデオ セッションを保護モードに設定するドライバー StartSessionKeyRefresh 関数へのポインター。

pfnFinishSessionKeyRefresh

現在のビデオ セッションを保護されていないモードに設定するドライバー FinishSessionKeyRefresh 関数へのポインター。

pfnGetEncryptionBltKey

暗号化された bitblt セッションのキーを取得するドライバー GetEncryptionBltKey 関数へのポインター。

pfnDecryptionBlt

保護されたサーフェスにデータを書き込むドライバー DecryptionBlt 関数へのポインター。

pfnResolveSharedResource

共有リソースを解決するドライバー ResolveSharedResource 関数へのポインター。

pfnVolBlt1

ボリューム ビット ブロック転送 (bitblt) 操作を実行するドライバー VolBlt1 関数へのポインター。

Windows 8 以降でサポートされています。

pfnBufBlt1

ビット ブロック転送 (bitblt) 操作を実行するドライバー BufBlt1 関数へのポインター。

Windows 8 以降でサポートされています。

pfnTexBlt1

テクスチャ ビット ブロック転送 (bitblt) 操作を実行するドライバー TexBlt1 関数へのポインター。

Windows 8 以降でサポートされています。

pfnDiscard

ビデオ表示メモリから一連のサブリソースを破棄 (削除) するドライバーの 破棄 関数へのポインター。

Windows 8 以降でサポートされています。

pfnOfferResources

ユーザー モード ディスプレイ ドライバーが再利用のためにビデオ メモリ リソースを提供することを要求するドライバー OfferResources 関数へのポインター。

Windows 8 以降でサポートされています。

pfnReclaimResources

以前に再利用のために提供したビデオ メモリ リソースを再利用するために Direct3D ランタイムによって呼び出されるドライバーの ReclaimResources 関数へのポインター。

Windows 8 以降でサポートされています。

pfnCheckDirectFlipSupport

ユーザー モード ドライバーが Direct Flip 操作をサポートしていることを確認するために DWM によって呼び出されるドライバー CheckDirectFlipSupport 関数へのポインター。

Windows 8 以降でサポートされています。

pfnCreateResource2

リソースを作成するドライバー CreateResource2 関数へのポインター。

Windows 8 以降でサポートされています。

pfnCheckMultiPlaneOverlaySupport

複数プレーン オーバーレイのハードウェア サポートの詳細をチェックするために Direct3D ランタイムによって呼び出されるドライバー pfnCheckMultiPlaneOverlaySupport (D3D) 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnPresentMultiPlaneOverlay

Direct3D ランタイムによって呼び出されるドライバー pfnPresentMultiplaneOverlay (D3D) 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnReserved1

システムで使用するために予約されています。 ドライバーでは を使用しないでください。

Windows 8.1 以降でサポートされています。

pfnFlush1

Direct3D ランタイムによって呼び出され、ハードウェア コマンド バッファー内の未処理のハードウェア コマンドをディスプレイ ミニポート ドライバーに送信するために呼び出されるドライバー pfnFlush1 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnCheckCounterInfo

カウンターの操作に関連するグローバル情報を決定するために Direct3D ランタイムによって呼び出されるドライバー pfnCheckCounterInfo 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnCheckCounter

カウンターを記述する情報を取得するために Direct3D ランタイムによって呼び出されるドライバー pfnCheckCounter 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnUpdateSubresourceUP

Direct3D ランタイムによって呼び出されるドライバー pfnUpdateSubresourceUP 関数へのポインター。ソース システム メモリ領域からターゲット サブリソース リージョンを更新します。

Windows 8.1 以降でサポートされています。

pfnPresent1

アプリケーションのレンダリングが完了し、共有リソースのすべての所有権が解放され、ドライバーが移動先画面に表示されるように要求することをユーザー モード ディスプレイ ドライバーに通知する、ドライバー pfnPresent1(D3D) 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnCheckPresentDurationSupport

Direct3D ランタイムによって呼び出されるドライバー CheckPresentDurationSupport 関数へのポインター。ユーザー モード ディスプレイ ドライバーは、新しいモニターの更新レートにシームレスに切り替えるためのハードウェア デバイス機能を取得するように要求します。

Windows 8.1 以降でサポートされています。

pfnSetMarker

pfnSetMarker の最後の呼び出し以降に GPU 作業が完了した場合に新しいタイム スタンプを生成する必要があることをユーザー モードディスプレイ ドライバーに通知する、ドライバー pfnSetMarker 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnSetMarkerMode

Windows イベント トレーシング (ETW) マーカー イベントの種類をサポートする必要があることをユーザー モードディスプレイ ドライバーに通知するドライバー pfnSetMarkerMode 関数へのポインター。

Windows 8.1 以降でサポートされています。

pfnTrimResidencySet

pfnAcquireResource

pfnReleaseResource

注釈

D3dumddi.h の次のコードは、 D3DDDI_DEVICEFUNCS のメンバーが指す関数の関数宣言を示しています。

typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETRENDERSTATE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_RENDERSTATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UPDATEWINFO)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_WINFO*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VALIDATEDEVICE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_VALIDATETEXTURESTAGESTATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETTEXTURESTAGESTATE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_TEXTURESTAGESTATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETTEXTURE)(
        _In_ HANDLE hDevice, _In_ UINT, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPIXELSHADER)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPIXELSHADERCONST)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETPIXELSHADERCONST*, _In_ CONST FLOAT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETSTREAMSOURCEUM)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETSTREAMSOURCEUM*, _In_ CONST VOID*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETINDICES)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETINDICES*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETINDICESUM)(
        _In_ HANDLE hDevice, _In_ UINT, _In_ CONST VOID*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWPRIMITIVE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWPRIMITIVE*, _In_opt_ CONST UINT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWINDEXEDPRIMITIVE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWINDEXEDPRIMITIVE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWRECTPATCH)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWRECTPATCH*, _In_ CONST D3DDDIRECTPATCH_INFO*, _In_ CONST FLOAT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWTRIPATCH)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWTRIPATCH*, _In_ CONST D3DDDITRIPATCH_INFO*, _In_ CONST FLOAT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWPRIMITIVE2)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWPRIMITIVE2*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DRAWINDEXEDPRIMITIVE2)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DRAWINDEXEDPRIMITIVE2*, _In_ UINT, _In_ CONST VOID*, _In_opt_ CONST UINT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VOLBLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_VOLUMEBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_BUFBLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_BUFFERBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_TEXBLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_TEXBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_STATESET)(
        _In_ HANDLE hDevice, _In_ D3DDDIARG_STATESET*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPRIORITY)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETPRIORITY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CLEAR)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_CLEAR*, _In_ UINT, _In_ CONST RECT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UPDATEPALETTE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_UPDATEPALETTE*, _In_ CONST PALETTEENTRY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPALETTE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETPALETTE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVERTEXSHADERCONST)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETVERTEXSHADERCONST*, _In_ CONST VOID*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_MULTIPLYTRANSFORM)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_MULTIPLYTRANSFORM*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETTRANSFORM)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETTRANSFORM*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVIEWPORT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_VIEWPORTINFO*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETZRANGE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_ZRANGE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETMATERIAL)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETMATERIAL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETLIGHT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETLIGHT*, _In_ CONST D3DDDI_LIGHT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATELIGHT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_CREATELIGHT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYLIGHT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DESTROYLIGHT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETCLIPPLANE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETCLIPPLANE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETINFO)(
        _In_ HANDLE hDevice, _In_ UINT, _Out_writes_bytes_(DevInfoSize)VOID*, _In_ UINT DevInfoSize);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_LOCK)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_LOCK*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UNLOCK)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_UNLOCK*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_LOCKASYNC)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_LOCKASYNC*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UNLOCKASYNC)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_UNLOCKASYNC*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_RENAME)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_RENAME*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATERESOURCE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATERESOURCE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYRESOURCE)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETDISPLAYMODE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETDISPLAYMODE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_PRESENT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_PRESENT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_FLUSH)(
        _In_ HANDLE hDevice);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEVERTEXSHADERDECL)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEVERTEXSHADERDECL*, _In_ CONST D3DDDIVERTEXELEMENT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVERTEXSHADERDECL)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DELETEVERTEXSHADERDECL)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEVERTEXSHADERFUNC)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEVERTEXSHADERFUNC*, _In_ CONST UINT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVERTEXSHADERFUNC)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _In_ HRESULT (APIENTRY *PFND3DDDI_DELETEVERTEXSHADERFUNC)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVERTEXSHADERCONSTI)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETVERTEXSHADERCONSTI*, _In_ CONST INT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVERTEXSHADERCONSTB)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETVERTEXSHADERCONSTB*, _In_ CONST BOOL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETSCISSORRECT)(
        _In_ HANDLE hDevice, _In_ CONST RECT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETSTREAMSOURCE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETSTREAMSOURCE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETSTREAMSOURCEFREQ)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETSTREAMSOURCEFREQ*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETCONVOLUTIONKERNELMONO)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETCONVOLUTIONKERNELMONO*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_COMPOSERECTS)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_COMPOSERECTS*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_BLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_BLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_COLORFILL)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_COLORFILL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DEPTHFILL)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DEPTHFILL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEQUERY)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEQUERY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYQUERY)(
        _In_ HANDLE hDevice, _In_ CONST HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_ISSUEQUERY)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_ISSUEQUERY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETQUERYDATA)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_GETQUERYDATA*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETRENDERTARGET)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETRENDERTARGET*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETDEPTHSTENCIL)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETDEPTHSTENCIL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GENERATEMIPSUBLEVELS)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_GENERATEMIPSUBLEVELS*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPIXELSHADERCONSTI)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETPIXELSHADERCONSTI*, _In_ CONST INT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETPIXELSHADERCONSTB)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETPIXELSHADERCONSTB*, _In_ CONST BOOL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEPIXELSHADER)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEPIXELSHADER*, _In_ CONST UINT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DELETEPIXELSHADER)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEDECODEDEVICE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEDECODEDEVICE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYDECODEDEVICE)(
        _In_ HANDLE hDevice, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETDECODERENDERTARGET) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETDECODERENDERTARGET*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DECODEBEGINFRAME) (
        _In_ HANDLE hDevice, _In_ D3DDDIARG_DECODEBEGINFRAME*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DECODEENDFRAME) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_DECODEENDFRAME*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DECODEEXECUTE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DECODEEXECUTE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DECODEEXTENSIONEXECUTE)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_DECODEEXTENSIONEXECUTE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEVIDEOPROCESSDEVICE) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEVIDEOPROCESSDEVICE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYVIDEOPROCESSDEVICE) (
        _In_ HANDLE hDevice, _In_ HANDLE hVideoProcessor);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VIDEOPROCESSBEGINFRAME) (
        _In_ HANDLE hDevice, _In_ HANDLE hVideoProcess);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VIDEOPROCESSENDFRAME) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_VIDEOPROCESSENDFRAME*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETVIDEOPROCESSRENDERTARGET) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETVIDEOPROCESSRENDERTARGET*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VIDEOPROCESSBLT) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_VIDEOPROCESSBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEEXTENSIONDEVICE) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEEXTENSIONDEVICE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYEXTENSIONDEVICE) (
        _In_ HANDLE hDevice, _In_ HANDLE hExtension);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_EXTENSIONEXECUTE) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_EXTENSIONEXECUTE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYDEVICE)(
        _In_ HANDLE hDevice);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEOVERLAY) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEOVERLAY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UPDATEOVERLAY) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_UPDATEOVERLAY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_FLIPOVERLAY) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_FLIPOVERLAY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETOVERLAYCOLORCONTROLS) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_GETOVERLAYCOLORCONTROLS*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETOVERLAYCOLORCONTROLS) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_SETOVERLAYCOLORCONTROLS*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYOVERLAY) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DESTROYOVERLAY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_QUERYRESOURCERESIDENCY) (
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_QUERYRESOURCERESIDENCY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_OPENRESOURCE) (
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_OPENRESOURCE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETCAPTUREALLOCATIONHANDLE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_GETCAPTUREALLOCATIONHANDLE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CAPTURETOSYSMEM)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_CAPTURETOSYSMEM*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_CREATEVIDEOPROCESSOR)(
        _In_ HANDLE, _Inout_ D3DDDIARG_DXVAHD_CREATEVIDEOPROCESSOR*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_SETVIDEOPROCESSBLTSTATE)(
        _In_ HANDLE, _In_ CONST D3DDDIARG_DXVAHD_SETVIDEOPROCESSBLTSTATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_GETVIDEOPROCESSBLTSTATEPRIVATE)(
        _In_ HANDLE, _Inout_ D3DDDIARG_DXVAHD_GETVIDEOPROCESSBLTSTATEPRIVATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_SETVIDEOPROCESSSTREAMSTATE)(
        _In_ HANDLE, _In_ CONST D3DDDIARG_DXVAHD_SETVIDEOPROCESSSTREAMSTATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_GETVIDEOPROCESSSTREAMSTATEPRIVATE)(
        _In_ HANDLE, _Inout_ D3DDDIARG_DXVAHD_GETVIDEOPROCESSSTREAMSTATEPRIVATE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_VIDEOPROCESSBLTHD)(
        _In_ HANDLE, _In_ CONST D3DDDIARG_DXVAHD_VIDEOPROCESSBLTHD*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DXVAHD_DESTROYVIDEOPROCESSOR)(
        _In_ HANDLE, _In_ HANDLE);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATEAUTHENTICATEDCHANNEL)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATEAUTHENTICATEDCHANNEL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_AUTHENTICATEDCHANNELKEYEXCHANGE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_AUTHENTICATEDCHANNELKEYEXCHANGE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_QUERYAUTHENTICATEDCHANNEL)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_QUERYAUTHENTICATEDCHANNEL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CONFIGUREAUTHENICATEDCHANNEL)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_CONFIGUREAUTHENTICATEDCHANNEL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYAUTHENTICATEDCHANNEL)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DESTROYAUTHENTICATEDCHANNEL*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATECRYPTOSESSION)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATECRYPTOSESSION*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DESTROYCRYPTOSESSION)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DESTROYCRYPTOSESSION*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_ENCRYPTIONBLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_ENCRYPTIONBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETPITCH)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_GETPITCH*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_STARTSESSIONKEYREFRESH)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_STARTSESSIONKEYREFRESH*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_FINISHSESSIONKEYREFRESH)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_FINISHSESSIONKEYREFRESH*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_GETENCRYPTIONBLTKEY)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_GETENCRYPTIONBLTKEY*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DECRYPTIONBLT)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DECRYPTIONBLT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_RESOLVESHAREDRESOURCE)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_RESOLVESHAREDRESOURCE*);
#if (D3D_UMD_INTERFACE_VERSION >= D3D_UMD_INTERFACE_VERSION_WIN8)
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_VOLBLT1)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_VOLUMEBLT1*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_BUFBLT1)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_BUFFERBLT1*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_TEXBLT1)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_TEXBLT1*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_DISCARD)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_DISCARD*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_OFFERRESOURCES)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_OFFERRESOURCES*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_RECLAIMRESOURCES)(
        _In_ HANDLE hDevice, _Inout_ CONST D3DDDIARG_RECLAIMRESOURCES*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CHECKDIRECTFLIPSUPPORT)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CHECKDIRECTFLIPSUPPORT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CREATERESOURCE2)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CREATERESOURCE2*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CHECKMULTIPLANEOVERLAYSUPPORT)(
        _In_ HANDLE hDevice, _Inout_ D3DDDIARG_CHECKMULTIPLANEOVERLAYSUPPORT*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_PRESENTMULTIPLANEOVERLAY)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_PRESENTMULTIPLANEOVERLAY*);
#if (D3D_UMD_INTERFACE_VERSION >= D3D_UMD_INTERFACE_VERSION_WDDM1_3)
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_FLUSH1)(
        _In_ HANDLE hDevice, UINT /*D3DDDI_FLUSH_FLAGS*/ FlushFlags);
typedef VOID ( APIENTRY* PFND3DDDI_CHECKCOUNTERINFO )(
        _In_ HANDLE hDevice, _Out_ D3DDDIARG_COUNTER_INFO* );
typedef _Check_return_ HRESULT ( APIENTRY* PFND3DDDI_CHECKCOUNTER )(
        _In_ HANDLE hDevice, _In_ D3DDDIQUERYTYPE, _Out_ D3DDDI_COUNTER_TYPE*, _Out_ UINT*,
        _Out_writes_to_opt_(*pNameLength, *pNameLength) LPSTR,
        _Inout_opt_ UINT* pNameLength,
        _Out_writes_to_opt_(*pUnitsLength, *pUnitsLength) LPSTR,
        _Inout_opt_ UINT* pUnitsLength,
        _Out_writes_to_opt_(*pDescriptionLength, *pDescriptionLength) LPSTR,
        _Inout_opt_ UINT* pDescriptionLength);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_UPDATESUBRESOURCEUP)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_UPDATESUBRESOURCEUP*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_PRESENT1)(
        _In_ HANDLE hDevice, _In_ CONST D3DDDIARG_PRESENT1*);
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_CHECKPRESENTDURATIONSUPPORT)(
        _In_ HANDLE hDevice, _In_ D3DDDIARG_CHECKPRESENTDURATIONSUPPORT*);
#endif // D3D_UMD_INTERFACE_VERSION
#if (D3D_UMD_INTERFACE_VERSION >= D3D_UMD_INTERFACE_VERSION_WDDM1_3)
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETMARKERMODE)(
        _In_ HANDLE hDevice, _In_ D3DDDI_MARKERTYPE Type, /*D3DDDI_SETMARKERMODE*/ UINT Flags );
typedef _Check_return_ HRESULT (APIENTRY *PFND3DDDI_SETMARKER)(
        _In_ HANDLE hDevice);
#endif // D3D_UMD_INTERFACE_VERSION

要件

要件
サポートされている最小のクライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
Header d3dumddi.h (D3dumddi.h を含む)

こちらもご覧ください

CreateDevice

D3DDDIARG_CREATEDEVICE