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_3DPIPELINESUPPORT_CAPS