Freigeben über


D3D11DDIARG_CREATEDEFERREDCONTEXT Struktur (d3d10umddi.h)

Die D3D11DDIARG_CREATEDEFERREDCONTEXT-Struktur beschreibt den zu erstellenden verzögerten Kontext.

Syntax

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;

Angehörige

[in/out] p11ContextFuncs

Ein Zeiger auf eine D3D11DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus mit einer Tabelle seiner Funktionen für den verzögerten Kontext ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

Eine Liste der Funktionen, die nicht für verzögerte Kontexte genutzt werden, finden Sie unter Ausschließen von DDI-Funktionen für verzögerte Kontexte.

[in/out] p11_1ContextFuncs

Ein Zeiger auf eine D3D11_1DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus mit einer Tabelle seiner Funktionen für den verzögerten Kontext ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

Wird ab Windows 8 unterstützt.

[in/out] pWDDM1_3ContextFuncs

Ein Zeiger auf eine D3DWDDM1_3DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus mit einer Tabelle seiner Funktionen für den verzögerten Kontext ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

Wird ab Windows 8.1 unterstützt.

[in/out] pWDDM2_0ContextFuncs

Zeiger auf eine D3DWDDM2_0DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus seine Gerätefunktionstabelle für WDDM 2.0 ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

pWDDM2_1ContextFuncs

Zeiger auf eine D3DWDDM2_1DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus seine Gerätefunktionstabelle für WDDM 2.1 ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

pWDDM2_2ContextFuncs

Zeiger auf eine D3DWDDM2_2DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus seine Gerätefunktionstabelle für WDDM 2.2 ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

pWDDM2_6ContextFuncs

Zeiger auf eine D3DWDDM2_6DDI_DEVICEFUNCS Struktur, die der Anzeigetreiber im Benutzermodus seine Gerätefunktionstabelle für WDDM 2.6 ausfüllt. Die Direct3D-Laufzeit verwendet diese Funktionen, um mit dem Anzeigetreiber für den Benutzermodus zu kommunizieren.

[in] hDrvContext

Ein Handle für den Treiberkontext für den speicher des privaten Treibers.

[in] hRTCoreLayer

Ein Handle, das der Treiber verwenden soll, wenn er zurück in die Direct3D-Laufzeit aufruft, um auf die Hauptfunktionalität von Direct3D 11 zuzugreifen (d. h., wenn der Treiber Funktionen aufruft, die der p11UMCallbacks Member angibt).

[in] p11UMCallbacks

Ein Zeiger auf eine D3D11DDI_CORELAYER_DEVICECALLBACKS-Struktur, die die Pre-WDDM 2.0-Funktionstabelle von Direct3D 11-Laufzeitrückruffunktionen enthält, die der Treiber für den Zugriff auf die hauptbenutzermodus-Laufzeitfunktionen verwenden kann.

pWDDM2_0UMCallbacks

Zeigen Sie auf eine D3DWDDM2_0DDI_CORELAYER_DEVICECALLBACKS-Struktur, die die WDDM 2.0-Funktionstabelle der Direct3D 11-Kernebenen-Geräterückruffunktionen enthält, die der Treiber für den Zugriff auf die Kernfunktionen des Benutzermodus verwenden kann.

pWDDM2_2UMCallbacks

Zeigen Sie auf eine D3DWDDM2_2DDI_CORELAYER_DEVICECALLBACKS-Struktur, die die WDDM 2.2-Funktionstabelle der Direct3D 11-Kernebenen-Geräterückruffunktionen enthält, die der Treiber für den Zugriff auf die Hauptfunktion des Benutzermodus verwenden kann.

pWDDM2_6UMCallbacks

Zeigen Sie auf eine D3DWDDM2_6DDI_CORELAYER_DEVICECALLBACKS-Struktur, die die WDDM 2.6-Funktionstabelle der Direct3D 11-Kernebenen-Geräterückruffunktionen enthält, die der Treiber für den Zugriff auf die Hauptfunktion des Benutzermodus verwenden kann.

[in] Flags

Ein gültiger bitweiser OR D3D10DDI_CREATEDEVICE_FLAG_XXX- Flagwerte, mit denen angegeben wird, wie ein Renderinggerät erstellt wird. Die Direct3D-Laufzeit unterstützt die folgenden Flags:

Flagge Bedeutung
D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION (0x1) Bei Festlegung sollte der Anzeigetreiber für den Benutzermodus nicht mehrere Threads gleichzeitig ausführen, wenn er Aufrufe an seine Funktionen aus der Direct3D-Laufzeit verarbeitet. Ein Treiber kann in der Regel mehrere Threads starten und ausführen, um Vorgänge schneller zu verarbeiten, es sei denn, D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION festgelegt ist.
D3D11DDI_CREATEDEVICE_FLAG_SINGLETHREADED (0x10) Dieses Flag informiert den Anzeigetreiber für den Benutzermodus, dass die Anwendung single threaded ist. Die Direct3D Version 11-Laufzeit ermöglicht es mehreren Anwendungsthreads, den Treiber einzugeben, wenn der Treiber diesen Betriebsmodus zulässt. Nicht alle Anwendungen können jedoch mehrere Threads ausführen. Wenn dieses Flag festgelegt ist, erwartet der Treiber nicht, dass mehrere Threads sie eingeben und gleichzeitig ausgeführt werden. Der Treiber kann die Synchronisierung vermeiden, wenn dieses Flag vorhanden ist.
Das Flag, das im 0xE Mask des Flags-Mitglieds festgelegt ist Dieses Flag stellt die Ebene der 3D-Pipeline dar, die der Treiber für das Anzeigegerät unterstützen soll. Der Treiber verwendet die folgenden Konstanten und Makros, um einen der Werte aus der D3D11DDI_3DPIPELINELEVEL Enumeration zu extrahieren, die die 3D-Pipelineebene darstellt, die unterstützt werden soll.

Der Wert im Flags Member ist wie das Caps Member der D3D11DDI_3DPIPELINESUPPORT_CAPS Struktur formatiert.

#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))

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 7
Header- d3d10umddi.h (include D3d10umddi.h)

Siehe auch

D3D11DDI_3DPIPELINELEVEL

D3D11DDI_3DPIPELINESUPPORT_CAPS

D3D11DDI_CORELAYER_DEVICECALLBACKS

D3D11DDI_DEVICEFUNCS

D3D11_1DDI_DEVICEFUNCS