D3DDDI_DEVICEFUNCS structure (d3dumddi.h)
La structure D3DDDI_DEVICEFUNCS contient des fonctions que le pilote d’affichage en mode utilisateur peut implémenter pour afficher des primitives graphiques et traiter les modifications d’état.
Syntaxe
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;
Membres
pfnSetRenderState
Pointeur vers la fonction SetRenderState du pilote qui met à jour l’état de rendu.
pfnUpdateWInfo
Pointeur vers la fonction UpdateWInfo du pilote qui met à jour la plage w pour la mise en mémoire tampon w.
pfnValidateDevice
Pointeur vers la fonction ValidateDevice du pilote qui retourne le nombre de passes dans lesquelles le matériel peut effectuer les opérations de fusion spécifiées dans l’état actuel.
pfnSetTextureStageState
Pointeur vers la fonction SetTextureStageState du pilote qui met à jour l’état d’une texture à une étape particulière d’un groupe de plusieurs textures.
pfnSetTexture
Pointeur vers la fonction SetTexture du pilote qui définit une texture sur une étape particulière dans un groupe de plusieurs textures.
pfnSetPixelShader
Pointeur vers la fonction SetPixelShader du pilote qui définit le nuanceur de pixels actuel.
pfnSetPixelShaderConst
Pointeur vers la fonction SetPixelShaderConst du pilote qui définit un ou plusieurs registres de constantes de nuanceur de pixels avec des valeurs float.
pfnSetStreamSourceUm
Pointeur vers la fonction SetStreamSourceUM du pilote qui lie une source de flux de vertex à une mémoire tampon de mémoire utilisateur.
pfnSetIndices
Pointeur vers la fonction SetIndices du pilote qui définit la mémoire tampon d’index actuelle.
pfnSetIndicesUm
Pointeur vers la fonction SetIndicesUM du pilote qui lie une mémoire tampon d’index à une mémoire tampon utilisateur.
pfnDrawPrimitive
Pointeur vers la fonction DrawPrimitive du pilote qui dessine des primitives non indexées dans lesquelles le runtime Microsoft Direct3D n’a pas transformé les données de vertex.
pfnDrawIndexedPrimitive
Pointeur vers la fonction DrawIndexedPrimitive du pilote qui dessine les primitives indexées dans lesquelles le runtime Direct3D n’a pas transformé les données de vertex.
pfnDrawRectPatch
Pointeur vers la fonction drawRectPatch du pilote qui dessine un correctif rectangulaire nouveau ou mis en cache ou met à jour la spécification d’un correctif précédemment défini.
pfnDrawTriPatch
Pointeur vers la fonction DrawTriPatch du pilote qui dessine un correctif triangulaire nouveau ou mis en cache ou met à jour la spécification d’un correctif précédemment défini.
pfnDrawPrimitive2
Pointeur vers la fonction DrawPrimitive2 du pilote qui dessine des primitives non indexées dans lesquelles le runtime Direct3D a transformé les données de vertex.
pfnDrawIndexedPrimitive2
Pointeur vers la fonction DrawIndexedPrimitive2 du pilote qui dessine les primitives indexées dans lesquelles le runtime Direct3D a transformé les données de vertex.
pfnVolBlt
Pointeur vers la fonction VolBlt du pilote qui effectue un transfert de bloc de bits (bitblt) d’une texture de volume source vers une texture de volume de destination.
pfnBufBlt
Pointeur vers la fonction BufBlt du pilote qui effectue un bitblt à partir d’un vertex source ou d’une mémoire tampon d’index vers un vertex de destination ou une mémoire tampon d’index.
pfnTexBlt
Pointeur vers la fonction TexBlt du pilote qui effectue un bitblt d’une texture source vers une texture de destination.
pfnStateSet
Pointeur vers la fonction StateSet du pilote qui effectue une opération de définition d’état.
pfnSetPriority
Pointeur vers la fonction SetPriority du pilote qui définit la priorité d’éviction de la mémoire pour une texture managée.
pfnClear
Pointeur vers la fonction Clear du pilote qui effectue l’effacement assisté par le matériel sur la cible de rendu, la mémoire tampon de profondeur ou la mémoire tampon de gabarit.
pfnUpdatePalette
Pointeur vers la fonction UpdatePalette du pilote qui met à jour une palette de textures.
pfnSetPalette
Pointeur vers la fonction SetPalette du pilote qui définit la palette d’une texture.
pfnSetVertexShaderConst
Pointeur vers la fonction SetVertexShaderConst du pilote qui définit un ou plusieurs registres de constante de nuanceur de vertex avec des valeurs float.
pfnMultiplyTransform
Pointeur vers la fonction de pilote MultiplyTransform qui multiplie une transformation actuelle.
pfnSetTransform
Pointeur vers la fonction SetTransform du pilote qui configure une transformation.
pfnSetViewport
Pointeur vers la fonction SetViewport du pilote qui informe les pilotes prenant en charge la bande de protection du rectangle de découpage d’affichage.
pfnSetZRange
Pointeur vers la fonction SetZRange du pilote qui informe le pilote de la plage de valeurs z.
pfnSetMaterial
Pointeur vers la fonction SetMaterial du pilote qui définit les propriétés de matériau que les périphériques sur le système utilisent pour créer l’effet requis pendant le rendu.
pfnSetLight
Pointeur vers la fonction SetLight du pilote qui définit les propriétés d’une source de lumière.
pfnCreateLight
Pointeur vers la fonction CreateLight du pilote qui crée une source de lumière.
pfnDestroyLight
Pointeur vers la fonction DestroyLight du pilote qui désactive une source de lumière.
pfnSetClipPlane
Pointeur vers la fonction SetClipPlane du pilote qui définit un plan de découpage.
pfnGetInfo
Pointeur vers la fonction GetInfo du pilote qui récupère des informations sur l’appareil.
pfnLock
Pointeur vers la fonction de verrouillage du pilote qui verrouille une ressource ou une surface au sein de la ressource.
pfnUnlock
Pointeur vers la fonction de déverrouillage du pilote qui déverrouille une ressource ou une surface dans la ressource précédemment verrouillée par la fonction Lock .
pfnCreateResource
Pointeur vers la fonction CreateResource du pilote qui crée une ressource.
pfnDestroyResource
Pointeur vers la fonction DestroyResource du pilote qui libère la ressource créée par la fonction CreateResource .
pfnSetDisplayMode
Pointeur vers la fonction SetDisplayMode du pilote qui définit une surface d’affichage.
pfnPresent
Pointeur vers la fonction Present du pilote qui demande que la surface source soit affichée en copiant ou en retournant.
pfnFlush
Pointeur vers la fonction de vidage du pilote d’affichage en mode utilisateur qui envoie les commandes matérielles en attente qui se trouvent dans la mémoire tampon de commandes matérielles au pilote miniport d’affichage.
pfnCreateVertexShaderFunc
Pointeur vers la fonction CreateVertexShaderFunc du pilote qui convertit le code du nuanceur de vertex dans un format spécifique au matériel et associe ce code au handle de nuanceur donné.
pfnDeleteVertexShaderFunc
Pointeur vers la fonction DeleteVertexShaderFunc du pilote qui nettoie les ressources côté pilote associées au code du nuanceur de vertex.
pfnSetVertexShaderFunc
Pointeur vers la fonction SetVertexShaderFunc du pilote qui définit le code du nuanceur de vertex afin que toutes les opérations de dessin suivantes utilisent ce code.
pfnCreateVertexShaderDecl
Pointeur vers la fonction CreateVertexShaderDecl du pilote qui convertit la déclaration du nuanceur de vertex dans un format spécifique au matériel et associe cette déclaration au handle de nuanceur donné.
pfnDeleteVertexShaderDecl
Pointeur vers la fonction deleteVertexShaderDecl du pilote qui nettoie les ressources côté pilote associées à la déclaration du nuanceur de vertex.
pfnSetVertexShaderDecl
Pointeur vers la fonction SetVertexShaderDecl du pilote qui définit la déclaration du nuanceur de vertex afin que toutes les opérations de dessin suivantes utilisent cette déclaration.
pfnSetVertexShaderConstI
Pointeur vers la fonction SetVertexShaderConstI du pilote qui définit une ou plusieurs constantes de nuanceur de vertex avec des valeurs entières.
pfnSetVertexShaderConstB
Pointeur vers la fonction SetVertexShaderConstB du pilote qui définit une ou plusieurs constantes de nuanceur de vertex avec des valeurs booléennes.
pfnSetScissorRect
Pointeur vers la fonction SetScissorRect du pilote qui marque une partie d’une cible de rendu à laquelle le rendu est limité.
pfnSetStreamSource
Pointeur vers la fonction SetStreamSource du pilote qui lie une partie d’une source de flux de vertex à une mémoire tampon de vertex.
pfnSetStreamSourceFreq
Pointeur vers la fonction SetStreamSourceFreq du pilote qui définit le diviseur de fréquence d’une source de flux liée à une mémoire tampon de vertex.
pfnSetConvolutionKernelMono
Pointeur vers la fonction SetConvolutionKernelMono du pilote qui définit le noyau de convolution monochrome.
pfnComposeRects
Pointeur vers la fonction de pilote ComposeRects qui compose des zones rectangulaires.
pfnBlt
Pointeur vers la fonction Blt du pilote qui copie le contenu d’une surface source vers une surface de destination.
pfnColorFill
Pointeur vers la fonction ColorFill du pilote qui remplit une zone rectangulaire sur une surface avec une couleur de A8R8G8B8 particulière.
pfnDepthFill
Pointeur vers la fonction DepthFill du pilote qui remplit une mémoire tampon de profondeur avec une valeur de pixel spécifiée au format natif.
pfnCreateQuery
Pointeur vers la fonction CreateQuery du pilote qui crée des ressources côté pilote pour une requête que le runtime Direct3D émet ensuite pour le traitement.
pfnDestroyQuery
Pointeur vers la fonction DestroyQuery du pilote qui libère des ressources pour la requête créée par la fonction CreateQuery .
pfnIssueQuery
Pointeur vers la fonction IssueQuery du pilote qui traite la requête créée par la fonction CreateQuery .
pfnGetQueryData
Pointeur vers la fonction GetQueryData du pilote qui récupère des informations sur une requête.
pfnSetRenderTarget
Pointeur vers la fonction SetRenderTarget du pilote qui définit la surface cible de rendu dans le contexte du pilote.
pfnSetDepthStencil
Pointeur vers la fonction SetDepthStencil du pilote qui définit la mémoire tampon de profondeur dans le contexte du pilote.
pfnGenerateMipSubLevels
Pointeur vers la fonction GenerateMipSubLevels du pilote qui régénère les sous-niveaux d’une texture de carte MIP.
pfnSetPixelShaderConstI
Pointeur vers la fonction SetPixelShaderConstI du pilote qui définit une ou plusieurs constantes de nuanceur de pixels avec des valeurs entières.
pfnSetPixelShaderConstB
Pointeur vers la fonction SetPixelShaderConstB du pilote qui définit un ou plusieurs registres de constante de nuanceur de pixels avec des valeurs booléennes.
pfnCreatePixelShader
Pointeur vers la fonction CreatePixelShader du pilote qui convertit le code du nuanceur de pixels dans un format spécifique au matériel et associe ce code à un handle de nuanceur.
pfnDeletePixelShader
Pointeur vers la fonction deletePixelShader du pilote qui nettoie les ressources côté pilote associées au code du nuanceur de pixels.
pfnCreateDecodeDevice
Pointeur vers la fonction CreateDecodeDevice du pilote qui crée une représentation d’un appareil microsoft DirectX Video Acceleration (VA) à partir des paramètres fournis.
pfnDestroyDecodeDevice
Pointeur vers la fonction DestroyDecodeDevice du pilote qui libère des ressources pour un périphérique de décodage DIRECTX VA.
pfnSetDecodeRenderTarget
Pointeur vers la fonction setDecodeRenderTarget du pilote qui définit la cible de rendu pour le décodage. SetDecodeRenderTarget peut être appelé uniquement en dehors d’un bloc DecodeBeginFrame/DecodeEndFrame .
pfnDecodeBeginFrame
Pointeur vers la fonction DecodeBeginFrame du pilote qui indique que le décodage d’une image peut commencer.
pfnDecodeEndFrame
Pointeur vers la fonction DecodeEndFrame du pilote qui indique que les opérations de décodage de trame doivent être effectuées.
pfnDecodeExecute
Pointeur vers la fonction DecodeExecute du pilote qui effectue une opération de décodage DirectX VA. DecodeExecute doit être appelé à l’intérieur d’un bloc DecodeBeginFrame/DecodeEndFrame .
pfnDecodeExtensionExecute
Pointeur vers la fonction DecodeExtensionExecute du pilote qui effectue une opération de décodage va DirectX non standard. DecodeExtensionExecute doit être appelé à l’intérieur d’un bloc DecodeBeginFrame/DecodeEndFrame .
pfnCreateVideoProcessDevice
Pointeur vers la fonction CreateVideoProcessDevice du pilote qui crée une représentation d’un périphérique de traitement vidéo Va DirectX à partir des paramètres fournis.
pfnDestroyVideoProcessDevice
Pointeur vers la fonction DestroyVideoProcessDevice du pilote qui libère des ressources pour un périphérique de traitement vidéo DirectX VA.
pfnVideoProcessBeginFrame
Pointeur vers la fonction VideoProcessBeginFrame du pilote qui indique que le traitement vidéo d’une image peut commencer.
pfnVideoProcessEndFrame
Pointeur vers la fonction VideoProcessEndFrame du pilote qui indique que les opérations de traitement vidéo doivent être terminées.
pfnSetVideoProcessRenderTarget
Pointeur vers la fonction SetVideoProcessRenderTarget du pilote qui définit la cible de rendu pour le traitement vidéo. SetVideoProcessRenderTarget peut être appelé uniquement en dehors d’un bloc VideoProcessBeginFrame/VideoProcessEndFrame .
pfnVideoProcessBlt
Pointeur vers la fonction VideoProcessBlt du pilote qui traite la vidéo DirectX VA. VideoProcessBlt doit être appelé à l’intérieur d’un bloc VideoProcessBeginFrame/VideoProcessEndFrame .
pfnCreateExtensionDevice
Pointeur vers la fonction CreateExtensionDevice du pilote qui crée une représentation d’un périphérique d’extension DirectX VA à partir des paramètres fournis.
pfnDestroyExtensionDevice
Pointeur vers la fonction DestroyExtensionDevice du pilote qui libère des ressources pour un périphérique d’extension DirectX VA.
pfnExtensionExecute
Pointeur vers la fonction ExtensionExecute du pilote qui effectue une opération spécifique à l’appareil d’extension DirectX VA donné.
pfnCreateOverlay
Pointeur vers la fonction CreateOverlay du pilote qui alloue le matériel de superposition et rend la superposition visible.
pfnUpdateOverlay
Pointeur vers la fonction UpdateOverlay du pilote qui reconfigure ou déplace une superposition affichée.
pfnFlipOverlay
Pointeur vers la fonction FlipOverlay du pilote qui provoque l’affichage de la nouvelle allocation par le matériel de superposition.
pfnGetOverlayColorControls
Pointeur vers la fonction GetOverlayColorControls du pilote qui récupère les paramètres de contrôle des couleurs pour une superposition.
pfnSetOverlayColorControls
Pointeur vers la fonction SetOverlayColorControls du pilote qui modifie les paramètres de contrôle des couleurs pour une superposition.
pfnDestroyOverlay
Pointeur vers la fonction de pilote DestroyOverlay qui désactive le matériel de superposition et libère la poignée de superposition.
pfnDestroyDevice
Pointeur vers la fonction DestroyDevice du pilote qui libère des ressources pour le périphérique d’affichage.
pfnQueryResourceResidency
Pointeur vers la fonction QueryResourceResidency du pilote qui détermine la résidence des ressources.
pfnOpenResource
Pointeur vers la fonction OpenResource du pilote qui informe le pilote qu’une ressource partagée est ouverte.
pfnGetCaptureAllocationHandle
Pointeur vers la fonction GetCaptureAllocationHandle du pilote qui mappe la ressource de capture donnée à une allocation.
pfnCaptureToSysMem
Pointeur vers la fonction CaptureToSysMem du pilote qui copie une mémoire tampon de capture sur une surface de mémoire vidéo.
pfnLockAsync
Pointeur vers la fonction LockAsync du pilote qui verrouille une ressource ou une surface dans la ressource.
pfnUnlockAsync
Pointeur vers la fonction UnlockAsync du pilote qui déverrouille une ressource ou une surface au sein de la ressource précédemment verrouillée par la fonction LockAsync .
pfnRename
Pointeur vers la fonction de renommage du pilote qui renomme, avec une nouvelle allocation, une ressource ou une surface dans la ressource.
pfnCreateVideoProcessor
Pointeur vers la fonction CreateVideoProcessor du pilote qui crée un processeur vidéo.
pfnSetVideoProcessBltState
Pointeur vers la fonction SetVideoProcessBltState du pilote qui définit l’état d’un bitblt pour un processeur vidéo.
pfnGetVideoProcessBltStatePrivate
Pointeur vers la fonction GetVideoProcessBltStatePrivate du pilote qui récupère les données d’état d’un bitblt privé pour un processeur vidéo.
pfnSetVideoProcessStreamState
Pointeur vers la fonction SetVideoProcessStreamState du pilote qui définit l’état d’un flux pour un processeur vidéo.
pfnGetVideoProcessStreamStatePrivate
Pointeur vers la fonction GetVideoProcessStreamStatePrivate du pilote qui récupère les données d’état du flux privé pour un processeur vidéo.
pfnVideoProcessBltHD
Pointeur vers la fonction VideoProcessBltHD du pilote qui traite les flux d’entrée vidéo et compose vers une surface de sortie.
pfnDestroyVideoProcessor
Pointeur vers la fonction de pilote DestroyVideoProcessor qui libère des ressources pour un processeur vidéo créé précédemment.
pfnCreateAuthenticatedChannel
Pointeur vers la fonction CreateAuthenticatedChannel du pilote qui crée un canal que le runtime Direct3D et le pilote peuvent utiliser pour définir et interroger des protections.
pfnAuthenticatedChannelKeyExchange
Pointeur vers la fonction de pilote AuthenticatedChannelKeyExchange qui négocie la clé de session.
pfnQueryAuthenticatedChannel
Pointeur vers la fonction QueryAuthenticatedChannel du pilote qui interroge un canal authentifié pour obtenir des informations sur la fonctionnalité et l’état.
pfnConfigureAuthenticatedChannel
Pointeur vers la fonction ConfigureAuthenticatedChannel du pilote qui définit l’état dans un canal authentifié.
pfnDestroyAuthenticatedChannel
Pointeur vers la fonction DestroyAuthenticatedChannel du pilote qui libère des ressources pour un canal authentifié.
pfnCreateCryptoSession
Pointeur vers la fonction CreateCryptoSession du pilote qui crée une session de chiffrement.
pfnCryptoSessionKeyExchange
Pointeur vers la fonction de pilote CryptoSessionKeyExchange qui effectue un échange de clés pendant une session de chiffrement.
pfnDestroyCryptoSession
Pointeur vers la fonction DestroyCryptoSession du pilote qui libère des ressources pour une session de chiffrement.
pfnEncryptionBlt
Pointeur vers la fonction EncryptionBlt du pilote qui effectue une opération bitblt chiffrée.
pfnGetPitch
Pointeur vers la fonction GetPitch du pilote qui récupère le pitch d’une surface chiffrée.
pfnStartSessionKeyRefresh
Pointeur vers la fonction StartSessionKeyRefresh du pilote qui définit la session vidéo active en mode protégé.
pfnFinishSessionKeyRefresh
Pointeur vers la fonction FinishSessionKeyRefresh du pilote qui définit la session vidéo active en mode non protégé.
pfnGetEncryptionBltKey
Pointeur vers la fonction GetEncryptionBltKey du pilote qui récupère la clé d’une session bitblt chiffrée.
pfnDecryptionBlt
Pointeur vers la fonction DecryptionBlt du pilote qui écrit des données dans une surface protégée.
pfnResolveSharedResource
Pointeur vers la fonction ResolveSharedResource du pilote qui résout une ressource partagée.
pfnVolBlt1
Pointeur vers la fonction VolBlt1 du pilote qui effectue une opération de transfert de bloc de bits (bitblt) de volume.
Pris en charge à partir de Windows 8.
pfnBufBlt1
Pointeur vers la fonction BufBlt1 du pilote qui effectue une opération de transfert de bloc de bits (bitblt).
Pris en charge à partir de Windows 8.
pfnTexBlt1
Pointeur vers la fonction TexBlt1 du pilote qui effectue une opération de transfert de bloc de bits de texture (bitblt).
Pris en charge à partir de Windows 8.
pfnDiscard
Pointeur vers la fonction Discard du pilote qui ignore (supprime) un ensemble de sous-ressources de la mémoire d’affichage vidéo.
Pris en charge à partir de Windows 8.
pfnOfferResources
Pointeur vers la fonction OfferResources du pilote qui demande que le pilote d’affichage en mode utilisateur offre des ressources de mémoire vidéo à réutiliser.
Pris en charge à partir de Windows 8.
pfnReclaimResources
Pointeur vers la fonction ReclaimResources du pilote appelée par le runtime Direct3D pour récupérer les ressources de mémoire vidéo qu’il proposait précédemment pour la réutilisation.
Pris en charge à partir de Windows 8.
pfnCheckDirectFlipSupport
Pointeur vers la fonction CheckDirectFlipSupport du pilote appelée par le DWM pour vérifier que le pilote en mode utilisateur prend en charge les opérations de basculement direct.
Pris en charge à partir de Windows 8.
pfnCreateResource2
Pointeur vers la fonction CreateResource2 du pilote qui crée une ressource.
Pris en charge à partir de Windows 8.
pfnCheckMultiPlaneOverlaySupport
Pointeur vers la fonction pfnCheckMultiPlaneOverlaySupport (D3D) du pilote appelée par le runtime Direct3D pour case activée les détails de la prise en charge matérielle des superpositions multiplanes.
Pris en charge à partir de Windows 8.1.
pfnPresentMultiPlaneOverlay
Pointeur vers la fonction pfnPresentMultiplaneOverlay (D3D) du pilote appelé par le runtime Direct3D pour informer le pilote d’affichage en mode utilisateur qu’une application a terminé le rendu et demande que le pilote affiche la surface source en copiant ou en retournant ou en effectuant une opération de remplissage de couleur.
Pris en charge à partir de Windows 8.1.
pfnReserved1
Réservé pour le système. N’utilisez pas dans votre pilote.
Pris en charge à partir de Windows 8.1.
pfnFlush1
Pointeur vers la fonction pfnFlush1 du pilote appelée par le runtime Direct3D pour envoyer les commandes matérielles en suspens qui se trouvent dans la mémoire tampon de commande matérielle au pilote de miniport d’affichage.
Pris en charge à partir de Windows 8.1.
pfnCheckCounterInfo
Pointeur vers la fonction pfnCheckCounterInfo du pilote appelée par le runtime Direct3D pour déterminer les informations globales liées à la manipulation des compteurs.
Pris en charge à partir de Windows 8.1.
pfnCheckCounter
Pointeur vers la fonction pfnCheckCounter du pilote appelée par le runtime Direct3D pour récupérer les informations qui décrivent un compteur.
Pris en charge à partir de Windows 8.1.
pfnUpdateSubresourceUP
Pointeur vers la fonction pfnUpdateSubresourceUP du pilote appelée par le runtime Direct3D pour mettre à jour une sous-région de sous-ressource de destination à partir d’une région de mémoire système source.
Pris en charge à partir de Windows 8.1.
pfnPresent1
Pointeur vers la fonction pfnPresent1(D3D) du pilote qui avertit le pilote d’affichage en mode utilisateur qu’une application a terminé le rendu, que toute la propriété de la ressource partagée est libérée, et qui demande que le pilote s’affiche sur l’aire de destination.
Pris en charge à partir de Windows 8.1.
pfnCheckPresentDurationSupport
Pointeur vers la fonction CheckPresentDurationSupport du pilote appelée par le runtime Direct3D pour demander au pilote d’affichage en mode utilisateur d’obtenir des fonctionnalités matérielles pour basculer en toute transparence vers un nouveau taux d’actualisation du moniteur.
Pris en charge à partir de Windows 8.1.
pfnSetMarker
Pointeur vers la fonction pfnSetMarker du pilote qui avertit le pilote d’affichage en mode utilisateur qu’il doit générer un nouvel horodatage si un travail GPU est terminé depuis le dernier appel à pfnSetMarker.
Pris en charge à partir de Windows 8.1.
pfnSetMarkerMode
Pointeur vers la fonction pfnSetMarkerMode du pilote qui avertit le pilote d’affichage en mode utilisateur qu’il doit prendre en charge un type d’événement de marqueur de suivi d’événements pour Windows (ETW).
Pris en charge à partir de Windows 8.1.
pfnTrimResidencySet
pfnAcquireResource
pfnReleaseResource
Remarques
Le code suivant, à partir de D3dumddi.h, montre les déclarations de fonction pour les fonctions vers laquelle les membres de D3DDDI_DEVICEFUNCS pointent.
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
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows Vista et les versions ultérieures des systèmes d’exploitation Windows. |
En-tête | d3dumddi.h (inclure D3dumddi.h) |