D3DDDI_DEVICEFUNCS Struktur (d3dumddi.h)

Die D3DDDI_DEVICEFUNCS-Struktur enthält Funktionen, die der Benutzermodusanzeigetreiber implementieren kann, um Grafikgrundsätze und Prozesszustandsänderungen zu rendern.

Syntax

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;

Member

pfnSetRenderState

Ein Zeiger auf die SetRenderState-Funktion des Treibers, die den Renderzustand aktualisiert.

pfnUpdateWInfo

Ein Zeiger auf die UpdateWInfo-Funktion des Treibers, die den w-Bereich für den Puffer w aktualisiert.

pfnValidateDevice

Ein Zeiger auf die Treiberfunktion ValidateDevice , die die Anzahl von Durchläufen zurückgibt, in denen die Hardware die Im aktuellen Zustand angegebenen Mischvorgänge ausführen kann.

pfnSetTextureStageState

Ein Zeiger auf die Treiberfunktion SetTextureStageState , die den Zustand einer Textur in einer bestimmten Phase in einer Gruppe mit mehreren Texturen aktualisiert.

pfnSetTexture

Ein Zeiger auf die SetTexture-Treiberfunktion , die eine Textur auf eine bestimmte Phase in einer Gruppe mit mehreren Texturen festlegt.

pfnSetPixelShader

Ein Zeiger auf die SetPixelShader-Funktion des Treibers, die den aktuellen Pixel-Shader festlegt.

pfnSetPixelShaderConst

Ein Zeiger auf die Treiberfunktion SetPixelShaderConst , die mindestens ein Pixel-Shaderkonstantenregister mit Floatwerten festlegt.

pfnSetStreamSourceUm

Ein Zeiger auf die SetStreamSourceUM-Treiberfunktion , die eine Vertexstreamquelle an einen Benutzerspeicherpuffer bindet.

pfnSetIndices

Ein Zeiger auf die SetIndices-Funktion des Treibers, die den aktuellen Indexpuffer festlegt.

pfnSetIndicesUm

Ein Zeiger auf die SetIndicesUM-Funktion des Treibers, die einen Indexpuffer an einen Benutzerspeicherpuffer bindet.

pfnDrawPrimitive

Ein Zeiger auf die DrawPrimitive-Funktion des Treibers, die nicht indizierte Grundtypen zeichnet, in denen die Microsoft Direct3D-Runtime die Vertexdaten nicht transformiert hat.

pfnDrawIndexedPrimitive

Ein Zeiger auf die DrawIndexedPrimitive-Funktion des Treibers, die indizierte Primitive zeichnet, in denen die Direct3D-Runtime die Vertexdaten nicht transformiert hat.

pfnDrawRectPatch

Ein Zeiger auf die DrawRectPatch-Funktion des Treibers, die einen neuen oder zwischengespeicherten rechteckigen Patch zeichnet oder die Spezifikation eines zuvor definierten Patches aktualisiert.

pfnDrawTriPatch

Ein Zeiger auf die DrawTriPatch-Funktion des Treibers, die einen neuen oder zwischengespeicherten Dreieckspatch zeichnet oder die Spezifikation eines zuvor definierten Patches aktualisiert.

pfnDrawPrimitive2

Ein Zeiger auf die DrawPrimitive2-Funktion des Treibers, die nicht indizierte Grundtypen zeichnet, in denen die Direct3D-Runtime die Vertexdaten transformiert hat.

pfnDrawIndexedPrimitive2

Ein Zeiger auf die DrawIndexedPrimitive2-Funktion des Treibers, die indizierte Grundtypen zeichnet, in denen die Direct3D-Runtime die Vertexdaten transformiert hat.

pfnVolBlt

Ein Zeiger auf die VolBlt-Funktion des Treibers, die eine Bitblockübertragung (Bitblt) von einer Quellvolumetextur auf eine Zielvolumetextur ausführt.

pfnBufBlt

Ein Zeiger auf die BufBlt-Funktion des Treibers, die eine Bitblt von einem Quellvertex oder Indexpuffer auf einen Zielvertex oder Indexpuffer ausführt.

pfnTexBlt

Ein Zeiger auf die TexBlt-Funktion des Treibers, die eine Bitblt von einer Quelltextur auf eine Zieltextur ausführt.

pfnStateSet

Ein Zeiger auf die StateSet-Funktion des Treibers, die einen Zustandssatzvorgang ausführt.

pfnSetPriority

Ein Zeiger auf die SetPriority-Treiberfunktion , die die eviction-from-memory-Priorität für eine verwaltete Textur festlegt.

pfnClear

Ein Zeiger auf die Treiber-Clear-Funktion , die hardwaregestütztes Löschen für das Renderingziel, den Tiefenpuffer oder den Schablonenpuffer ausführt.

pfnUpdatePalette

Ein Zeiger auf die Treiberfunktion UpdatePalette , die eine Texturpalette aktualisiert.

pfnSetPalette

Ein Zeiger auf die SetPalette-Funktion des Treibers, die die Palette für eine Textur festlegt.

pfnSetVertexShaderConst

Ein Zeiger auf die SetVertexShaderConst-Funktion des Treibers, die mindestens ein Vertex-Shaderkonstantenregister mit Floatwerten festlegt.

pfnMultiplyTransform

Ein Zeiger auf die Multiplikationsfunktion des Treibers, die eine aktuelle Transformation multipliziert.

pfnSetTransform

Ein Zeiger auf die SetTransform-Treiberfunktion , die eine Transformation einrichtet.

pfnSetViewport

Ein Zeiger auf die SetViewport-Funktion des Treibers, der die treiberfähigen Treiber über das Rechteck mit Ansichtsausschnitt informiert.

pfnSetZRange

Ein Zeiger auf die SetZRange-Funktion des Treibers, der den Treiber über den Bereich der z-Werte informiert.

pfnSetMaterial

Ein Zeiger auf die SetMaterial-Funktion des Treibers, der die Materialeigenschaften festlegt, die Geräte im System verwenden, um den erforderlichen Effekt während des Renderings zu erzeugen.

pfnSetLight

Ein Zeiger auf die SetLight-Treiberfunktion , die Eigenschaften für eine Lichtquelle festlegt.

pfnCreateLight

Ein Zeiger auf die CreateLight-Funktion des Treibers, die eine Lichtquelle erstellt.

pfnDestroyLight

Ein Zeiger auf die DestroyLight-Funktion des Treibers, die eine Lichtquelle deaktiviert.

pfnSetClipPlane

Ein Zeiger auf die SetClipPlane-Funktion des Treibers, die eine Clipebene festlegt.

pfnGetInfo

Ein Zeiger auf die GetInfo-Treiberfunktion , die Informationen zum Gerät abruft.

pfnLock

Ein Zeiger auf die Treibersperrfunktion , die eine Ressource oder eine Oberfläche innerhalb der Ressource sperrt.

pfnUnlock

Ein Zeiger auf die Entsperrungsfunktion des Treibers, die eine Ressource oder eine Oberfläche innerhalb der Ressource entsperrt, die die Lock-Funktion zuvor gesperrt hat.

pfnCreateResource

Ein Zeiger auf die CreateResource-Funktion des Treibers, die eine Ressource erstellt.

pfnDestroyResource

Ein Zeiger auf die Treiberfunktion DestroyResource , die die Ressource freigibt, die von der CreateResource-Funktion erstellt wurde.

pfnSetDisplayMode

Ein Zeiger auf die SetDisplayMode-Funktion des Treibers, die eine Oberfläche für die Anzeige festlegt.

pfnPresent

Ein Zeiger auf die Driver Present-Funktion , die anfordert, dass die Quelloberfläche entweder durch Kopieren oder Kippen angezeigt wird.

pfnFlush

Ein Zeiger auf die Funktion Flush des Benutzermodusanzeigetreibers, die ausstehende Hardwarebefehle, die sich im Hardwarebefehlpuffer befinden, an den Anzeigeminiporttreiber übermittelt.

pfnCreateVertexShaderFunc

Ein Zeiger auf die Treiberfunktion CreateVertexShaderFunc , die den Vertex-Shadercode in ein hardwarespezifisches Format konvertiert und diesen Code dem angegebenen Shaderhandle ordnet.

pfnDeleteVertexShaderFunc

Ein Zeiger auf die DeleteVertexShaderFunc-Funktion des Treibers, die treiberseitige Ressourcen bereinigt, die dem Vertex-Shadercode zugeordnet sind.

pfnSetVertexShaderFunc

Ein Zeiger auf die SetVertexShaderFunc-Treiberfunktion , die den Vertex-Shadercode so festlegt, dass alle nachfolgenden Zeichnungsvorgänge diesen Code verwenden.

pfnCreateVertexShaderDecl

Ein Zeiger auf die CreateVertexShaderDecl-Treiberfunktion , die die Vertex-Shaderdeklaration in ein hardwarespezifisches Format konvertiert und diese Deklaration dem angegebenen Shaderhandle ordnet.

pfnDeleteVertexShaderDecl

Ein Zeiger auf die DeleteVertexShaderDecl-Funktion des Treibers, die treiberseitige Ressourcen bereinigt, die der Vertex-Shaderdeklaration zugeordnet sind.

pfnSetVertexShaderDecl

Ein Zeiger auf die SetVertexShaderDecl-Treiberfunktion , die die Vertex-Shaderdeklaration so festlegt, dass alle nachfolgenden Zeichnungsvorgänge diese Deklaration verwenden.

pfnSetVertexShaderConstI

Ein Zeiger auf die SetVertexShaderConstI-Treiberfunktion , die mindestens ein Vertex-Shaderkonstantenregister mit ganzzahligen Werten festlegt.

pfnSetVertexShaderConstB

Ein Zeiger auf die SetVertexShaderConstB-Funktion des Treibers, die mindestens ein Vertex-Shaderkonstantenregister mit booleschen Werten festlegt.

pfnSetScissorRect

Ein Zeiger auf die SetScissorRect-Funktion des Treibers , der einen Teil eines Renderziels markiert, auf das das Rendern beschränkt ist.

pfnSetStreamSource

Ein Zeiger auf die SetStreamSource-Treiberfunktion , die einen Teil einer Vertexstreamquelle an einen Vertexpuffer bindet.

pfnSetStreamSourceFreq

Ein Zeiger auf die Treiberfunktion SetStreamSourceFreq , die den Häufigkeitsteiler einer Streamquelle festlegt, die an einen Vertexpuffer gebunden ist.

pfnSetConvolutionKernelMono

Ein Zeiger auf die SetConvolutionKernelMono-Treiberfunktion , die den monochromen Convolution-Kernel festlegt.

pfnComposeRects

Ein Zeiger auf die ComposeRects-Funktion des Treibers, die rechteckige Bereiche zusammensetzt.

pfnBlt

Ein Zeiger auf die Treiberfunktion Blt , die den Inhalt einer Quelloberfläche auf eine Zieloberfläche kopiert.

pfnColorFill

Ein Zeiger auf die ColorFill-Funktion des Treibers, der einen rechteckigen Bereich auf einer Oberfläche mit einer bestimmten A8R8G8B8 Farbe ausfüllt.

pfnDepthFill

Ein Zeiger auf die DepthFill-Funktion des Treibers, die einen Tiefenpuffer mit einem Pixelwert füllt, der im systemeigenen Format angegeben ist.

pfnCreateQuery

Ein Zeiger auf die Treiberfunktion CreateQuery , die treiberseitige Ressourcen für eine Abfrage erstellt, die die Direct3D-Runtime anschließend für die Verarbeitung ausgibt.

pfnDestroyQuery

Ein Zeiger auf die DestroyQuery-Treiberfunktion , die Ressourcen für die Abfrage freigibt, die von der CreateQuery-Funktion erstellt wurde.

pfnIssueQuery

Ein Zeiger auf die IssueQuery-Treiberfunktion , die die abfrage verarbeitet, die von der CreateQuery-Funktion erstellt wurde.

pfnGetQueryData

Ein Zeiger auf die GetQueryData-Treiberfunktion , die Informationen zu einer Abfrage abruft.

pfnSetRenderTarget

Ein Zeiger auf die SetRenderTarget-Funktion des Treibers, die die Renderzieloberfläche im Kontext des Treibers festlegt.

pfnSetDepthStencil

Ein Zeiger auf die SetDepthStencil-Funktion des Treibers, die den Tiefenpuffer im Kontext des Treibers festlegt.

pfnGenerateMipSubLevels

Ein Zeiger auf die Treiberfunktion GenerateMipSubLevels , die die Unterebenen einer MIP-Zuordnungstextur neu generiert.

pfnSetPixelShaderConstI

Ein Zeiger auf die Treiberfunktion SetPixelShaderConstI , die mindestens ein Pixel-Shaderkonstanteregister mit ganzzahligen Werten festlegt.

pfnSetPixelShaderConstB

Ein Zeiger auf die Treiberfunktion SetPixelShaderConstB , die mindestens eine Pixel-Shaderkonstante mit booleschen Werten festlegt.

pfnCreatePixelShader

Ein Zeiger auf die Treiberfunktion CreatePixelShader , die den Pixel-Shadercode in ein hardwarespezifisches Format konvertiert und diesem Code ein Shaderhandle ordnet.

pfnDeletePixelShader

Ein Zeiger auf die DeletePixelShader-Funktion des Treibers, die treiberseitige Ressourcen bereinigt, die Pixel-Shadercode zugeordnet sind.

pfnCreateDecodeDevice

Ein Zeiger auf die CreateDecodeDevice-Funktion des Treibers, die eine Darstellung eines Microsoft DirectX Video Acceleration (VA)-Decodierungsgeräts aus den angegebenen Parametern erstellt.

pfnDestroyDecodeDevice

Ein Zeiger auf die Treiberfunktion DestroyDecodeDevice , die Ressourcen für ein DirectX VA-Decodierungsgerät freigibt.

pfnSetDecodeRenderTarget

Ein Zeiger auf die Treiberfunktion SetDecodeRenderTarget , die das Renderziel für die Decodierung festlegt. SetDecodeRenderTarget kann nur außerhalb eines DecodeBeginFrame-DecodeEndFrame-Blocks / aufgerufen werden.

pfnDecodeBeginFrame

Ein Zeiger auf die DecodeBeginFrame-Funktion des Treibers, der angibt, dass die Decodierung eines Frames beginnen kann.

pfnDecodeEndFrame

Ein Zeiger auf die DecodeEndFrame-Funktion des Treibers, der angibt, dass Framedecodierungsvorgänge abgeschlossen sein müssen.

pfnDecodeExecute

Ein Zeiger auf die DecodeExecute-Funktion des Treibers, die einen DirectX VA-Decodierungsvorgang ausführt. DecodeExecute muss in einem DecodeBeginFrame/DecodeEndFrame-Block aufgerufen werden.

pfnDecodeExtensionExecute

Ein Zeiger auf die DecodeExtensionExecute-Funktion des Treibers , die einen nicht standardmäßigen DirectX VA-Decodierungsvorgang ausführt. DecodeExtensionExecute muss in einem DecodeBeginFrame-DecodeEndFrame-Block / aufgerufen werden.

pfnCreateVideoProcessDevice

Ein Zeiger auf die Treiberfunktion CreateVideoProcessDevice , die eine Darstellung eines DirectX VA-Videoverarbeitungsgeräts aus den angegebenen Parametern erstellt.

pfnDestroyVideoProcessDevice

Ein Zeiger auf die Treiberfunktion DestroyVideoProcessDevice , die Ressourcen für ein DirectX VA-Videoverarbeitungsgerät freigibt.

pfnVideoProcessBeginFrame

Ein Zeiger auf die VideoProcessBeginFrame-Treiberfunktion , die angibt, dass die Videoverarbeitung eines Frames beginnen kann.

pfnVideoProcessEndFrame

Ein Zeiger auf die VideoProcessEndFrame-Treiberfunktion , der angibt, dass Videoverarbeitungsvorgänge abgeschlossen werden müssen.

pfnSetVideoProcessRenderTarget

Ein Zeiger auf die Treiberfunktion SetVideoProcessRenderTarget , die das Renderziel für die Videoverarbeitung festlegt. SetVideoProcessRenderTarget kann nur außerhalb eines VideoProcessBeginFrame/VideoProcessEndFrame-Blocks aufgerufen werden.

pfnVideoProcessBlt

Ein Zeiger auf die VideoProcessBlt-Treiberfunktion , die DirectX VA-Video verarbeitet. VideoProcessBlt muss in einem VideoProcessBeginFrame/VideoProcessEndFrame-Block aufgerufen werden.

pfnCreateExtensionDevice

Ein Zeiger auf die CreateExtensionDevice-Funktion des Treibers , die eine Darstellung eines DirectX VA-Erweiterungsgeräts aus den angegebenen Parametern erstellt.

pfnDestroyExtensionDevice

Ein Zeiger auf die Treiberfunktion DestroyExtensionDevice , die Ressourcen für ein DirectX VA-Erweiterungsgerät freigibt.

pfnExtensionExecute

Ein Zeiger auf die Treiberfunktion ExtensionExecute , die einen Vorgang ausführt, der für das jeweilige DirectX VA-Erweiterungsgerät spezifisch ist.

pfnCreateOverlay

Ein Zeiger auf die CreateOverlay-Funktion des Treibers, die Überlagerungshardware zuordnet und das Overlay sichtbar macht.

pfnUpdateOverlay

Ein Zeiger auf die UpdateOverlay-Funktion des Treibers, die eine angezeigte Überlagerung neu konfiguriert oder verschiebt.

pfnFlipOverlay

Ein Zeiger auf die FlipOverlay-Treiberfunktion , die bewirkt, dass die Überlagerungshardware mit der Anzeige der neuen Zuordnung beginnt.

pfnGetOverlayColorControls

Ein Zeiger auf die GetOverlayColorControls-Treiberfunktion , die Farbsteuerungseinstellungen für eine Überlagerung abruft.

pfnSetOverlayColorControls

Ein Zeiger auf die SetOverlayColorControls-Treiberfunktion , die die Farbsteuerungseinstellungen für eine Überlagerung ändert.

pfnDestroyOverlay

Ein Zeiger auf die DestroyOverlay-Treiberfunktion , die die Überlagerungshardware deaktiviert und das Overlayhandle freigibt.

pfnDestroyDevice

Ein Zeiger auf die DestroyDevice-Treiberfunktion , die Ressourcen für das Anzeigegerät freigibt.

pfnQueryResourceResidency

Ein Zeiger auf die QueryResourceResidency-Treiberfunktion , die die Residenz von Ressourcen bestimmt.

pfnOpenResource

Ein Zeiger auf die OpenResource-Funktion des Treibers, der den Treiber darüber informiert, dass eine freigegebene Ressource geöffnet wird.

pfnGetCaptureAllocationHandle

Ein Zeiger auf die Treiberfunktion GetCaptureAllocationHandle , die die angegebene Erfassungsressource einer Zuordnung zuordnet.

pfnCaptureToSysMem

Ein Zeiger auf die CaptureToSysMem-Treiberfunktion , die einen Aufzeichnungspuffer auf eine Videospeicheroberfläche kopiert.

pfnLockAsync

Ein Zeiger auf die LockAsync-Treiberfunktion , die eine Ressource oder eine Oberfläche innerhalb der Ressource sperrt.

pfnUnlockAsync

Ein Zeiger auf die UnlockAsync-Treiberfunktion , die eine Ressource oder eine Oberfläche innerhalb der Ressource entsperrt, die die LockAsync-Funktion zuvor gesperrt hat.

pfnRename

Ein Zeiger auf die Umbenennungsfunktion des Treibers, die mit einer neuen Zuordnung eine Ressource oder eine Oberfläche innerhalb der Ressource umbenennt.

pfnCreateVideoProcessor

Ein Zeiger auf die Treiberfunktion CreateVideoProcessor , die einen Videoprozessor erstellt.

pfnSetVideoProcessBltState

Ein Zeiger auf die Treiberfunktion SetVideoProcessBltState , die den Status einer Bitblt für einen Videoprozessor festlegt.

pfnGetVideoProcessBltStatePrivate

Ein Zeiger auf die Treiberfunktion GetVideoProcessBltStatePrivate , die die Zustandsdaten einer privaten Bitblt für einen Videoprozessor abruft.

pfnSetVideoProcessStreamState

Ein Zeiger auf die SetVideoProcessStreamState-Treiberfunktion , die den Status eines Datenstroms für einen Videoprozessor festlegt.

pfnGetVideoProcessStreamStatePrivate

Ein Zeiger auf die Treiberfunktion GetVideoProcessStreamStatePrivate , die die privaten Datenstromzustandsdaten für einen Videoprozessor abruft.

pfnVideoProcessBltHD

Ein Zeiger auf die VideoProcessBltHD-Treiberfunktion , die Videoeingabestreams verarbeitet und zu einer Ausgabeoberfläche erstellt.

pfnDestroyVideoProcessor

Ein Zeiger auf die DestroyVideoProcessor-Treiberfunktion , die Ressourcen für einen zuvor erstellten Videoprozessor freigibt.

pfnCreateAuthenticatedChannel

Ein Zeiger auf die Treiberfunktion CreateAuthenticatedChannel , die einen Kanal erstellt, den die Direct3D-Runtime und der Treiber zum Festlegen und Abfragen von Schutzen verwenden können.

pfnAuthenticatedChannelKeyExchange

Ein Zeiger auf die AuthenticatedChannelKeyExchange-Treiberfunktion , die den Sitzungsschlüssel aushandelt.

pfnQueryAuthenticatedChannel

Ein Zeiger auf die Treiberfunktion QueryAuthenticatedChannel , die einen authentifizierten Kanal nach Funktions- und Zustandsinformationen abfragt.

pfnConfigureAuthenticatedChannel

Ein Zeiger auf die Treiberfunktion ConfigureAuthenticatedChannel , die den Zustand in einem authentifizierten Kanal festlegt.

pfnDestroyAuthenticatedChannel

Ein Zeiger auf die Treiberfunktion DestroyAuthenticatedChannel , die Ressourcen für einen authentifizierten Kanal freigibt.

pfnCreateCryptoSession

Ein Zeiger auf die CreateCryptoSession-Treiberfunktion , die eine Verschlüsselungssitzung erstellt.

pfnCryptoSessionKeyExchange

Ein Zeiger auf die CryptoSessionKeyExchange-Treiberfunktion , die während einer Verschlüsselungssitzung einen Schlüsselaustausch durchführt.

pfnDestroyCryptoSession

Ein Zeiger auf die DestroyCryptoSession-Treiberfunktion , die Ressourcen für eine Verschlüsselungssitzung freigibt.

pfnEncryptionBlt

Ein Zeiger auf die EncryptionBlt-Treiberfunktion , die einen verschlüsselten Bitblt-Vorgang ausführt.

pfnGetPitch

Ein Zeiger auf die GetPitch-Treiberfunktion , die den Pitch einer verschlüsselten Oberfläche abruft.

pfnStartSessionKeyRefresh

Ein Zeiger auf die StartSessionKeyRefresh-Funktion des Treibers, die die aktuelle Videositzung auf den geschützten Modus festlegt.

pfnFinishSessionKeyRefresh

Ein Zeiger auf die Treiberfunktion FinishSessionKeyRefresh , die die aktuelle Videositzung auf den ungeschützten Modus festlegt.

pfnGetEncryptionBltKey

Ein Zeiger auf die GetEncryptionBltKey-Treiberfunktion , die den Schlüssel einer verschlüsselten Bitblt-Sitzung abruft.

pfnDecryptionBlt

Ein Zeiger auf die DecryptionBlt-Treiberfunktion , die Daten in eine geschützte Oberfläche schreibt.

pfnResolveSharedResource

Ein Zeiger auf die Treiberfunktion ResolveSharedResource , die eine freigegebene Ressource auflöst.

pfnVolBlt1

Ein Zeiger auf die Treiberfunktion VolBlt1 , die einen Bitblockübertragungsvorgang (Bitblt) des Volumes ausführt.

Unterstützt ab Windows 8.

pfnBufBlt1

Ein Zeiger auf die Treiberfunktion BufBlt1 , die einen Bitblockübertragungsvorgang (Bitblt) ausführt.

Unterstützt ab Windows 8.

pfnTexBlt1

Ein Zeiger auf die TexBlt1-Treiberfunktion , die einen Bitblt-Vorgang (Texture Bit-Block Transfer) ausführt.

Unterstützt ab Windows 8.

pfnDiscard

Ein Zeiger auf die Verwerfen-Funktion des Treibers, die einen Satz von Unterressourcen aus dem Videoanzeigespeicher verwirft (entfernt).

Unterstützt ab Windows 8.

pfnOfferResources

Ein Zeiger auf die OfferResources-Funktion des Treibers, die anfordert , dass der Benutzermodusanzeigetreiber Videospeicherressourcen zur Wiederverwendung bereitstellt.

Unterstützt ab Windows 8.

pfnReclaimResources

Ein Zeiger auf die ReclaimResources-Treiberfunktion , die von der Direct3D-Runtime aufgerufen wird, um Videospeicherressourcen, die zuvor zur Wiederverwendung angeboten wurden, wiederzugewinnen.

Unterstützt ab Windows 8.

pfnCheckDirectFlipSupport

Ein Zeiger auf die CheckDirectFlipSupport-Treiberfunktion , die vom DWM aufgerufen wird, um zu überprüfen, ob der Benutzermodustreiber Direct Flip-Vorgänge unterstützt.

Unterstützt ab Windows 8.

pfnCreateResource2

Ein Zeiger auf die CreateResource2-Treiberfunktion , die eine Ressource erstellt.

Unterstützt ab Windows 8.

pfnCheckMultiPlaneOverlaySupport

Ein Zeiger auf die Treiberfunktion pfnCheckMultiPlaneOverlaySupport (D3D), die von der Direct3D-Runtime aufgerufen wird, um die Details zur Hardwareunterstützung für Mehrplanenüberlagerungen zu überprüfen.

Unterstützt ab Windows 8.1.

pfnPresentMultiPlaneOverlay

Ein Zeiger auf die Treiberfunktion pfnPresentMultiplaneOverlay (D3D), die von der Direct3D-Runtime aufgerufen wird, um den Benutzermodusanzeigetreiber zu benachrichtigen, dass eine Anwendung das Rendern abgeschlossen hat, und fordert an, dass der Treiber die Quelloberfläche entweder durch Kopieren oder Kippen anzeigt, oder dass der Treiber einen Farbfüllvorgang ausführt.

Unterstützt ab Windows 8.1.

pfnReserved1

Ist für das System reserviert. Verwenden Sie nicht in Ihrem Treiber.

Unterstützt ab Windows 8.1.

pfnFlush1

Ein Zeiger auf die Treiberfunktion pfnFlush1 , die von der Direct3D-Runtime aufgerufen wird, um ausstehende Hardwarebefehle, die sich im Hardwarebefehlspuffer befinden, an den Anzeige-Miniporttreiber zu übermitteln.

Unterstützt ab Windows 8.1.

pfnCheckCounterInfo

Ein Zeiger auf die Treiberfunktion pfnCheckCounterInfo , die von der Direct3D-Runtime aufgerufen wird, um globale Informationen im Zusammenhang mit der Bearbeitung von Leistungsindikatoren zu ermitteln.

Unterstützt ab Windows 8.1.

pfnCheckCounter

Ein Zeiger auf die PfnCheckCounter-Treiberfunktion , die von der Direct3D-Runtime aufgerufen wird, um Informationen abzurufen, die einen Leistungsindikator beschreiben.

Unterstützt ab Windows 8.1.

pfnUpdateSubresourceUP

Ein Zeiger auf die Treiberfunktion pfnUpdateSubresourceUP , die von der Direct3D-Runtime aufgerufen wird, um eine Zielunterressourcenregion aus einem Quellsystem-Speicherbereich zu aktualisieren.

Unterstützt ab Windows 8.1.

pfnPresent1

Ein Zeiger auf die Treiberfunktion pfnPresent1(D3D), die den Anzeigetreiber im Benutzermodus benachrichtigt, dass das Rendern einer Anwendung abgeschlossen ist und dass der gesamte Besitz der freigegebenen Ressource freigegeben wird, und der anfordert, dass der Treiber auf der Zieloberfläche angezeigt wird.

Unterstützt ab Windows 8.1.

pfnCheckPresentDurationSupport

Ein Zeiger auf die CheckPresentDurationSupport-Treiberfunktion , die von der Direct3D-Runtime aufgerufen wird, um anzufordern, dass der Benutzermodusanzeigetreiber Hardwaregerätefunktionen für den nahtlosen Wechsel zu einer neuen Monitoraktualisierungsrate erhält.

Unterstützt ab Windows 8.1.

pfnSetMarker

Ein Zeiger auf die Treiberfunktion pfnSetMarker , der den Anzeigetreiber im Benutzermodus benachrichtigt, dass er einen neuen Zeitstempel generieren muss, wenn gpu-Arbeit seit dem letzten Aufruf von pfnSetMarker abgeschlossen wurde.

Unterstützt ab Windows 8.1.

pfnSetMarkerMode

Ein Zeiger auf die Treiberfunktion pfnSetMarkerMode , die den Anzeigetreiber im Benutzermodus benachrichtigt, dass er einen Typ von ETW-Markerereignis (Event Tracing for Windows) unterstützen soll.

Unterstützt ab Windows 8.1.

pfnTrimResidencySet

pfnAcquireResource

pfnReleaseResource

Hinweise

Der folgende Code aus D3dumddi.h zeigt die Funktionsdeklarationen für die Funktionen, auf die die Member von D3DDDI_DEVICEFUNCS verweisen.

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

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Kopfzeile d3dumddi.h (include D3dumddi.h)

Weitere Informationen

CreateDevice

D3DDDIARG_CREATEDEVICE