structure D3D11DDIARG_CREATEDEFERREDCONTEXT (d3d10umddi.h)

La structure D3D11DDIARG_CREATEDEFERREDCONTEXT décrit le contexte différé à créer.

Syntaxe

typedef struct D3D11DDIARG_CREATEDEFERREDCONTEXT {
  union {
#if ...
    [in/out] D3D11DDI_DEVICEFUNCS             *p11ContextFuncs;
#else
    [in/out] struct D3D11DDI_DEVICEFUNCS      *p11ContextFuncs;
#endif
#if ...
    [in/out] D3D11_1DDI_DEVICEFUNCS           *p11_1ContextFuncs;
#else
    [in/out] struct D3D11_1DDI_DEVICEFUNCS    *p11_1ContextFuncs;
#endif
#if ...
    [in/out] D3DWDDM1_3DDI_DEVICEFUNCS        *pWDDM1_3ContextFuncs;
#else
    [in/out] struct D3DWDDM1_3DDI_DEVICEFUNCS *pWDDM1_3ContextFuncs;
#endif
#if ...
    [in/out] D3DWDDM2_0DDI_DEVICEFUNCS        *pWDDM2_0ContextFuncs;
#else
    [in/out] struct D3DWDDM2_0DDI_DEVICEFUNCS *pWDDM2_0ContextFuncs;
#endif
#if ...
             D3DWDDM2_1DDI_DEVICEFUNCS        *pWDDM2_1ContextFuncs;
#else
             struct D3DWDDM2_1DDI_DEVICEFUNCS *pWDDM2_1ContextFuncs;
#endif
#if ...
             D3DWDDM2_2DDI_DEVICEFUNCS        *pWDDM2_2ContextFuncs;
#else
             struct D3DWDDM2_2DDI_DEVICEFUNCS *pWDDM2_2ContextFuncs;
#endif
#if ...
             D3DWDDM2_6DDI_DEVICEFUNCS        *pWDDM2_6ContextFuncs;
#else
             struct D3DWDDM2_6DDI_DEVICEFUNCS *pWDDM2_6ContextFuncs;
#endif
  };
  [in]     D3D10DDI_HDEVICE      hDrvContext;
  [in]     D3D10DDI_HRTCORELAYER hRTCoreLayer;
  union {
    [in]     const D3D11DDI_CORELAYER_DEVICECALLBACKS      *p11UMCallbacks;
             const D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_0UMCallbacks;
             const D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_2UMCallbacks;
             const D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS *pWDDM2_6UMCallbacks;
  };
  [in]     UINT                  Flags;
} D3D11DDIARG_CREATEDEFERREDCONTEXT;

Membres

[in/out] p11ContextFuncs

Pointeur vers une structure D3D11DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit avec une table de ses fonctions pour le contexte différé. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

Pour obtenir la liste des fonctions qui ne sont pas exploitées pour les contextes différés, consultez Exclusion des fonctions DDI pour les contextes différés.

[in/out] p11_1ContextFuncs

Pointeur vers une structure D3D11_1DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit avec une table de ses fonctions pour le contexte différé. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

Pris en charge à partir de Windows 8.

[in/out] pWDDM1_3ContextFuncs

Pointeur vers une structure D3DWDDM1_3DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit avec une table de ses fonctions pour le contexte différé. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

Pris en charge à partir de Windows 8.1.

[in/out] pWDDM2_0ContextFuncs

Pointeur vers une structure D3DWDDM2_0DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit sa table de fonctions d’appareil pour WDDM 2.0. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

pWDDM2_1ContextFuncs

Pointeur vers une structure D3DWDDM2_1DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit sa table de fonctions d’appareil pour WDDM 2.1. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

pWDDM2_2ContextFuncs

Pointeur vers une structure D3DWDDM2_2DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit sa table de fonctions d’appareil pour WDDM 2.2. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

pWDDM2_6ContextFuncs

Pointeur vers une structure D3DWDDM2_6DDI_DEVICEFUNCS que le pilote d’affichage en mode utilisateur remplit sa table de fonctions d’appareil pour WDDM 2.6. Le runtime Direct3D utilise ces fonctions pour communiquer avec le pilote d’affichage en mode utilisateur.

[in] hDrvContext

Handle dans le contexte du pilote pour le stockage de handle privé du pilote.

[in] hRTCoreLayer

Handle que le pilote doit utiliser lorsqu’il rappelle le runtime Direct3D pour accéder à la fonctionnalité principale de Direct3D 11 (autrement dit, lorsque le pilote appelle des fonctions que le membre p11UMCallbacks spécifie).

[in] p11UMCallbacks

Pointeur vers une structure de D3D11DDI_CORELAYER_DEVICECALLBACKS qui contient la table de fonction antérieure à WDDM 2.0 des fonctions de rappel du runtime Direct3D 11 que le pilote peut utiliser pour accéder aux principales fonctionnalités d’exécution en mode utilisateur.

pWDDM2_0UMCallbacks

Pointeur vers une structure de D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS qui contient la table de fonctions WDDM 2.0 des fonctions de rappel d’appareil de la couche de base Direct3D 11 que le pilote peut utiliser pour accéder aux principales fonctionnalités d’exécution en mode utilisateur.

pWDDM2_2UMCallbacks

Pointeur vers une structure D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS qui contient la table de fonctions WDDM 2.2 des fonctions de rappel d’appareil de la couche principale Direct3D 11 que le pilote peut utiliser pour accéder aux principales fonctionnalités d’exécution en mode utilisateur.

pWDDM2_6UMCallbacks

Pointeur vers une structure de D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS qui contient la table de fonctions WDDM 2.6 des fonctions de rappel d’appareil de couche de base Direct3D 11 que le pilote peut utiliser pour accéder aux principales fonctionnalités d’exécution en mode utilisateur.

[in] Flags

OR au niveau du bit valide de valeurs d’indicateur D3D10DDI_CREATEDEVICE_FLAG_XXX qui identifient comment créer un appareil de rendu. Le runtime Direct3D prend en charge les indicateurs suivants :

Indicateur Signification
D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION (0x1) Lorsqu’il est défini, le pilote d’affichage en mode utilisateur ne doit pas exécuter plusieurs threads simultanément lorsqu’il traite les appels à ses fonctions à partir du runtime Direct3D. Un pilote peut généralement démarrer et exécuter plusieurs threads pour traiter les opérations plus rapidement, sauf si D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION est défini.
D3D11DDI_CREATEDEVICE_FLAG_SINGLETHREADED (0x10) Cet indicateur informe le pilote d’affichage en mode utilisateur que l’application est à thread unique. Le runtime Direct3D version 11 permet à plusieurs threads d’application d’entrer dans le pilote si le pilote autorise ce mode de fonctionnement. Toutefois, toutes les applications ne peuvent pas exécuter plusieurs threads. Si cet indicateur est défini, le pilote ne s’attend pas à ce que plusieurs threads l’entrent et s’exécutent simultanément. Le pilote peut éviter la synchronisation si cet indicateur est présent.
Indicateur défini dans le masque 0xE du membre Flags Cet indicateur représente le niveau de pipeline 3D que le pilote doit prendre en charge pour le périphérique d’affichage. Le pilote utilise la constante et les macros suivantes pour extraire l’une des valeurs de l’énumération D3D11DDI_3DPIPELINELEVEL qui représente le niveau de pipeline 3D à prendre en charge.

La valeur dans le membre Flags est mise en forme comme le membre Majuscules de la structure D3D11DDI_3DPIPELINESUPPORT_CAPS .

#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT (0x1)
#define D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK (0x7 << D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT)
#define D3D11DDI_EXTRACT_3DPIPELINELEVEL_FROM_FLAGS( Flags ) \
    ((D3D11DDI_3DPIPELINELEVEL)(((Flags) & D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_MASK) >> \
    D3D11DDI_CREATEDEVICE_FLAG_3DPIPELINESUPPORT_SHIFT))

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7
En-tête d3d10umddi.h (include D3d10umddi.h)

Voir aussi

D3D11DDI_3DPIPELINELEVEL

D3D11DDI_3DPIPELINESUPPORT_CAPS

D3D11DDI_CORELAYER_DEVICECALLBACKS

D3D11DDI_DEVICEFUNCS

D3D11_1DDI_DEVICEFUNCS