D3D10DDIARG_CALCPRIVATEDEVICESIZE Struktur (d3d10umddi.h)
Die D3D10DDIARG_CALCPRIVATEDEVICESIZE-Struktur beschreibt die Parameter, die der Benutzermodusanzeigetreiber verwendet, um die Größe eines Speicherblocks zu berechnen, den der Treiber zum Speichern häufig aufgerufener Daten benötigt.
Syntax
typedef struct D3D10DDIARG_CALCPRIVATEDEVICESIZE {
[in] UINT Interface;
[in] UINT Version;
[in] UINT Flags;
} D3D10DDIARG_CALCPRIVATEDEVICESIZE;
Member
[in] Interface
Die Version der Microsoft Direct3D-Schnittstelle. Die hohen 16 Bits speichern die Hauptversionsnummer (z. B. 10, 11 usw.); die niedrigen 16 Bits speichern die Nebenfreigabenummer (z. B. 0, 1, 2 usw.). Die Nebenversionsnummer wird erhöht, wenn eine Änderung an der Schnittstelle veröffentlicht wird.
[in] Version
Eine Zahl, die der Treiber verwenden kann, um zu identifizieren, wann die Direct3D-Runtime erstellt wurde. Die hohen 16 Bits stellen die Buildnummer dar; die niedrigen 16 Bits stellen die Revisionsnummer dar.
Der Treiber ist nur erforderlich, um die hohen 16 Bits zu überwachen. Der Treiber sollte sicherstellen, dass die übergebene Runtimebuildversion größer oder gleich der aktuellen Buildversion des Treibers ist. Der Treiber sollte einen Fehler von seiner CalcPrivateDeviceSize-Funktion zurückgeben, wenn die in der Buildversion übergebene nicht kompatibel ist.
[in] Flags
Ein gültiger bitweiser OR mit Flagwerten, die angeben, wie ein Renderinggerät erstellt wird. Die Direct3D-Runtime unterstützt die folgenden Flags:
D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION (0x1)
Wenn dieses Flag festgelegt ist, sollte der Benutzermodusanzeigetreiber nicht mehrere Threads gleichzeitig ausführen, wenn er Aufrufe seiner Funktionen aus der Direct3D-Runtime verarbeitet. Ein Treiber kann in der Regel mehrere Threads starten und ausführen, um Vorgänge schneller zu verarbeiten, es sei denn, das Flag D3D10DDI_CREATEDEVICE_FLAG_DISABLE_EXTRA_THREAD_CREATION ist festgelegt.
D3D11DDI_CREATEDEVICE_FLAG_SINGLETHREADED (0x10)
Unterstützt in Windows 7 und höheren Versionen.
Dieses Flag informiert den Benutzermodusanzeigetreiber darüber, dass die Anwendung single threaded ist. Die Direct3D-Runtime, Version 11, ermöglicht es mehreren Anwendungsthreads, in den Treiber zu gelangen, wenn der Treiber diesen Betriebsmodus zulässt. Allerdings können nicht alle Anwendungen mehrere Threads ausführen. Wenn dieses Flag festgelegt ist, erwartet der Treiber nicht, dass es von mehreren Threads gleichzeitig eingegeben und ausgeführt wird. Der Treiber kann die Synchronisierung vermeiden, wenn dieses Flag festgelegt ist.
Das Flag, das in der 0xE Maske des Flags-Elements festgelegt ist
Unterstützt in Windows 7 und höheren Versionen.
Dieses Flag stellt die Ebene der 3D-Pipeline dar, die der Treiber für das Anzeigegerät unterstützen soll. Der Treiber verwendet die folgende Konstante und Makros, um einen der Werte aus der D3D11DDI_3DPIPELINELEVEL Enumeration zu extrahieren, die die zu unterstützende 3D-Pipelineebene darstellen. Der Wert im Flags-Element ist wie das Caps-Element 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 |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme. |
Kopfzeile | d3d10umddi.h (einschließlich D3d10umddi.h) |