DXGK_DRIVERCAPS Struktur (d3dkmddi.h)
Die DXGK_DRIVERCAPS Struktur beschreibt die Funktionen eines Anzeigeminiporttreibers, den der Treiber über einen Aufruf seiner DxgkDdiQueryAdapterInfo-Funktion bereitstellt.
Syntax
typedef struct _DXGK_DRIVERCAPS {
[out] PHYSICAL_ADDRESS HighestAcceptableAddress;
[out] UINT MaxAllocationListSlotId;
[out] SIZE_T ApertureSegmentCommitLimit;
[out] UINT MaxPointerWidth;
[out] UINT MaxPointerHeight;
[out] DXGK_POINTERFLAGS PointerCaps;
[out] UINT InterruptMessageNumber;
[out] UINT NumberOfSwizzlingRanges;
[out] UINT MaxOverlays;
union {
[out] DXGK_GAMMARAMPCAPS GammaRampCaps;
[out] DXGK_COLORTRANSFORMCAPS ColorTransformCaps;
};
[out] DXGK_PRESENTATIONCAPS PresentationCaps;
[out] UINT MaxQueuedFlipOnVSync;
[out] DXGK_FLIPCAPS FlipCaps;
[out] DXGK_VIDSCHCAPS SchedulingCaps;
[out] DXGK_VIDMMCAPS MemoryManagementCaps;
[out] DXGK_GPUENGINETOPOLOGY GpuEngineTopology;
[out] DXGK_WDDMVERSION WDDMVersion;
DXGK_VIRTUALADDRESSCAPS_DEPRECATED Reserved;
DXGK_DMABUFFERCAPS_DEPRECATED Reserved1;
[out] D3DKMDT_PREEMPTION_CAPS PreemptionCaps;
[out] BOOLEAN SupportNonVGA;
[out] BOOLEAN SupportSmoothRotation;
[out] BOOLEAN SupportPerEngineTDR;
[out] BOOLEAN SupportDirectFlip;
[out] BOOLEAN SupportMultiPlaneOverlay;
[out] BOOLEAN SupportRuntimePowerManagement;
[out] BOOLEAN SupportSurpriseRemovalInHibernation;
[out] BOOLEAN HybridDiscrete;
[out] UINT MaxOverlayPlanes;
BOOLEAN HybridIntegrated;
D3DGPU_VIRTUAL_ADDRESS InternalGpuVirtualAddressRangeStart;
D3DGPU_VIRTUAL_ADDRESS InternalGpuVirtualAddressRangeEnd;
BOOLEAN SupportSurpriseRemoval;
[out] BOOLEAN SupportMultiPlaneOverlayImmediateFlip;
[out] BOOLEAN CursorScaledWithMultiPlaneOverlayPlane0;
BOOLEAN HybridAcpiChainingRequired;
[out] UINT MaxQueuedMultiPlaneOverlayFlipVSync;
union {
struct {
UINT SupportContextlessPresent : 1;
UINT Detachable : 1;
UINT VirtualGpuOnly : 1;
UINT ComputeOnly : 1;
UINT IndependentVidPnVSyncControl : 1;
UINT NoHybridDiscreteDListDllSupport : 1;
UINT DisplayableSupport : 1;
UINT NoHybridDiscreteDListDllMuxSupport : 1;
UINT CursorDoesNotSupportXorBlendWithMultiPlaneOverlay : 1;
#if ...
UINT Reserved : 23;
#elif
UINT Reserved : 25;
#elif
UINT Reserved : 26;
#elif
UINT Reserved : 27;
#elif
UINT Reserved : 28;
#elif
UINT Reserved : 29;
#else
UINT Reserved : 30;
#endif
};
UINT Value;
} MiscCaps;
UINT MaxHwQueuedFlips;
DXGK_HWQUEUEDFLIP_CAPS HwQueuedFlipCaps;
} DXGK_DRIVERCAPS;
Angehörige
[out] HighestAcceptableAddress
Ein PHYSICAL_ADDRESS Datentyp (der als LARGE_INTEGER definiert ist), der die höchste zulässige physische Adresse des zu verwendenden Systemspeichers (RAM) angibt.
[out] MaxAllocationListSlotId
Die maximale Anzahl von Zuordnungslistenplatz-IDs. Ein Zuordnungslistenplatz stellt dar, wo eine Zuordnung in den DMA-Puffern (Direct Memory Access) geleitet wird.
[out] ApertureSegmentCommitLimit
Die maximale Anzahl von Byte des physischen Speichers, die der Display-Miniporttreiber für die Zuordnung zu einem Blendensegment unterstützt. Der Videospeicher-Manager zuordnen nicht mehr physischen Speicher in ein Blendensegment als die Grenze, die BlendEnsegmentCommitLimit angibt.
[out] MaxPointerWidth
Die maximale Breite des Mauszeigers in Pixel.
[out] MaxPointerHeight
Die maximale Höhe des Mauszeigers in Scanzeilen.
[out] PointerCaps
Eine DXGK_POINTERFLAGS Struktur, die die Mauszeigerfunktionen in Bitfeldkennzeichnungen identifiziert, die der Treiber unterstützen kann.
[out] InterruptMessageNumber
Die Nachrichtennummer, die verwendet wird, wenn nachrichtensignalige Unterbrechungen verwendet werden, und der Treiber ruft die DxgkCbNotifyInterrupt Funktion vom Interrupthandler auf, der einer festen Nachrichtennummer entspricht.
[out] NumberOfSwizzlingRanges
Die Anzahl der Schwarmbereiche, die der Treiber unterstützen kann.
[out] MaxOverlays
Die maximale Anzahl von Überlagerungen, die der Treiber unterstützen kann.
[out] GammaRampCaps
Eine DXGK_GAMMARAMPCAPS Struktur, die die Gammahierarchiefunktionen in Bitfeld-Flags identifiziert, die der Treiber unterstützen kann.
[out] ColorTransformCaps
Flags zum Beschreiben der Gamma- und Farbraumtransformationsfunktionen der Anzeigepipelines. HINWEIS: Dieses Feld ersetzt die GammaRampCaps in der Vor-WDDM 2.2-Version dieser Struktur.
[out] PresentationCaps
Eine DXGK_PRESENTATIONCAPS Struktur, die die Präsentationsfunktionen in Bitfeldkennzeichnungen identifiziert, die der Treiber unterstützen kann.
[out] MaxQueuedFlipOnVSync
Die Anzahl der Flips, die an der Grafikhardware in die Warteschlange gestellt und ausstehend sein können. Jeder Flip wird bei jedem VSync-Interrupt an einem digital-zu-analogen Konverter (DAC) geriegelt, da die Grafikhardware den Flip in die Warteschlange stellt.
[out] FlipCaps
Eine DXGK_FLIPCAPS Struktur, die die Flippingfunktionen in Bitfeldkennzeichnungen identifiziert, die der Treiber unterstützen kann.
[out] SchedulingCaps
Eine DXGK_VIDSCHCAPS Struktur, die die Gpu-Planungsfunktionen (Graphics Processing Unit) in Bitfeld-Flags identifiziert, die der Treiber unterstützen kann.
[out] MemoryManagementCaps
Eine DXGK_VIDMMCAPS Struktur, die die vom Treiber unterstützten Videospeicherverwaltungsfunktionen identifiziert.
[out] GpuEngineTopology
Eine DXGK_GPUENGINETOPOLOGY Struktur, die die GPU-Engine-Topologie beschreibt, die der Treiber unterstützen kann.
[out] WDDMVersion
Ein DXGK_WDDMVERSION Wert, der die Version von WDDM identifiziert. Wird ab Windows 7 unterstützt.
Wenn ein Treiber Windows 7- oder höher-Features (DXGKDDI_INTERFACE_VERSION ≥ DXGKDDI_INTERFACE_VERSION_WIN7) unterstützt, ist dieses Element reserviert und sollte auf Null festgelegt werden.
Für ältere Treiber, die Windows 7- oder höher-Features nicht unterstützen (DXGKDDI_INTERFACE_VERSION < DXGKDDI_INTERFACE_VERSION_WIN7):
- Um den Treiber mit dem Windows 7 WDK (Version 7600) zu kompilieren, legen Sie dieses Element auf DXGKDDI_WDDMv1 fest.
- Um den Treiber mit dem Windows 8 WDK zu kompilieren, legen Sie dieses Element auf DXGKDDI_WDDMv1_2 fest.
Reserved
Reserviert.
Reserved1
Reserviert.
[out] PreemptionCaps
Eine D3DKMDT_PREEMPTION_CAPS Struktur, die die Funktionen für die Vorabbehaltung von GPU-Grafikanforderungen beschreibt, die der Treiber unterstützt.
Wird ab Windows 8 unterstützt.
[out] SupportNonVGA
Wenn TRUE-, unterstützt der Treiber das Zurücksetzen des Anzeigegeräts und das Freigeben des Besitzes des aktuellen Post-Geräts (Self-On Self-Test) mithilfe des DxgkDdiStopDeviceAndReleasePostDisplayOwnership-Funktion.
Wird ab Windows 8 unterstützt.
[out] SupportSmoothRotation
Wenn TRUE-, unterstützt der Treiber die Aktualisierung der Pfaddrehung auf dem Adapter mithilfe der DxgkDdiUpdateActiveVidPnPresentPath--Funktion, ohne dass ein neuer VidPN erstellt und festgelegt werden muss.
Wird ab Windows 8 unterstützt.
[out] SupportPerEngineTDR
Wenn TRUE-, unterstützt der Treiber das Zurücksetzen einzelner GPU-Engines.
Wenn dieses Element festgelegt ist, muss der Anzeigeminiporttreiber die DxgkDdiQueryDependentEngineGroup-, DxgkDdiQueryEngineStatus-und DxgkDdiResetEngine--Funktionen implementieren.
Wird ab Windows 8 unterstützt.
[out] SupportDirectFlip
Wenn TRUE, unterstützt der Treiber die Erstellung und Öffnung von gemeinsam verwalteten primären Zuordnungen. Ein Wert von TRUE gibt auch Folgendes an:
- Der Miniporttreiber für die Anzeige garantiert, dass der Treiber, wenn der DxgkDdiSetVidPnSourceAddress-Funktion aufgerufen wird, nicht zulassen, dass der Videospeicher in eine inkompatible Zuordnung gedreht wird.
- Der Benutzermodustreiber überprüft Direct Flip-Ressourcen, bevor der Desktop Windows Manager (DWM) diese verwendet.
Nur der DWM kann Den Videospeicher in Direct Flip-Ressourcen kippen. Die DWM überprüft diese Ressourcen mithilfe des Benutzermodus CheckDirectFlipSupport-Funktion.
Wird ab Windows 8 unterstützt.
[out] SupportMultiPlaneOverlay
Wenn TRUE-, unterstützt der Display-Miniporttreiber Mehrplanüberlagerungen, und der Treiber sollte auch einen Wert für das MaxOverlayPlanes Member festlegen. Wenn FALSE, ruft das DirectX-Grafik-Kernelsubsystem keine Mehrplanüberlagerungsfunktionen auf.
Wird ab Windows 8.1 unterstützt.
[out] SupportRuntimePowerManagement
Wenn TRUE, unterstützt der Miniporttreiber die Laufzeitleistungsverwaltung.
Wenn dieses Element festgelegt ist, muss der Miniporttreiber die DxgkDdiSetPowerComponentFState und DxgkDdiPowerRuntimeControlRequest--Funktionen implementieren.
Wird ab Windows 8 unterstützt.
[out] SupportSurpriseRemovalInHibernation
Wenn TRUE-, unterstützt der Miniporttreiber das Bereinigen von Softwareressourcen, nachdem ein externes Anzeigegerät im Ruhezustand vom System getrennt wurde.
Wenn dieses Element festgelegt ist, muss der Display-Miniporttreiber die DxgkDdiNotifySurpriseRemoval--Funktion implementieren, wobei der parameter RemovalType auf DxgkRemovalHibernationfestgelegt ist.
Weitere Informationen finden Sie unter Verwenden von adapterübergreifenden Ressourcen in einem Hybridsystem.
Wird ab Windows 8 unterstützt.
[out] HybridDiscrete
Wenn TRUE, ist der Display-Miniporttreiber eine diskrete GPU in einem Hybridsystem.
Wenn dieses Element festgelegt ist, sollte der Anzeige-Miniporttreiber:
- Unterstützung von WDDM 1.3
- Unterstützen von adapterübergreifenden Ressourcen
- keine Anzeigeausgaben haben
Weitere Informationen finden Sie unter Verwenden von adapterübergreifenden Ressourcen in einem Hybridsystem.
Wird ab Windows 8.1 unterstützt.
[out] MaxOverlayPlanes
Wenn SupportRuntimePowerManagementTRUEist, sollte der Miniporttreiber MaxOverlayPlanes auf die maximale Anzahl von Überlagerungsebenen festlegen, die gleichzeitig auf einer einzelnen Ausgabe angezeigt werden können, einschließlich der primären Oberfläche, die unterstützt werden kann. Wenn sich die Anzahl der verfügbaren Flugzeuge ändert, wenn sich der Betriebsmodus ändert, sollte der Fahrer eine Zahl verwenden, die das szenario im besten Fall widerspiegelt.
Wird ab Windows 8.1 unterstützt.
HybridIntegrated
Gibt an, ob die aktuelle GPU hybrid ist.
InternalGpuVirtualAddressRangeStart
Der interne virtuelle GPU-Adressbereich wird gestartet.
InternalGpuVirtualAddressRangeEnd
Ende des internen virtuellen GPU-Adressbereichs.
SupportSurpriseRemoval
Wenn TRUE, unterstützt der Display-Miniporttreiber überraschungsentfernung.
[out] SupportMultiPlaneOverlayImmediateFlip
Wenn TRUE, unterstützt der Display-Miniporttreiber sofortige Flips zu einer Mehrplanüberlagerungsebene, solange der einzige Wert geändert wird die physische Adresse, die angezeigt werden soll.
[out] CursorScaledWithMultiPlaneOverlayPlane0
Wenn TRUE, wendet die Anzeigehardware immer den gleichen Skalierungsfaktor auf den Hardwarecursor an, wie auf Ebene 0 angewendet wird, wenn pro Ebene multiplane Overlay Stretch angewendet wird.
HybridAcpiChainingRequired
Gibt an, dass für diesen hybriden diskreten Treiber eine Verkettung von ACPI-Ereignissen erforderlich ist, die auf dem integrierten Adapter ausgelöst werden.
[out] MaxQueuedMultiPlaneOverlayFlipVSync
Gibt die maximale Anzahl von Updates für eine einzelne Ebene innerhalb eines einzelnen Vsync-Zeitraums an, wobei das letzte Update das vorherige Update außer Kraft setzt. Wenn ein Treiber Hardware flip queueunterstützt, ignoriert das Betriebssystem diesen Wert.
MiscCaps
Verschiedene Funktionen.
MiscCaps.SupportContextlessPresent
Unterstützt NULL-Kontext in DDI-Aufrufen. Wenn dieser Wert festgelegt ist, übergibt das Betriebssystem DEN NULL-Kontext in vorhandenen verwandten DDIs. Wird ab WDDM 2.4 unterstützt.
MiscCaps.Detachable
Trennbar, d. h. hot-pluggable. Treiber legen dieses Bit während der Adapterinitialisierung fest, wenn der Adapter hot-pluggable ist. Wird ab WDDM 2.4 unterstützt.
MiscCaps.VirtualGpuOnly
Der Adapter sollte nicht von Direct3D-Anwendungen auf dem Host verwendet werden. Wird ab WDDM 2.5 unterstützt.
MiscCaps.ComputeOnly
Unterstützt Compute-Only Geräte, indem die Rendergerätefunktionen von WDDM gerendert werden. Unterstützt ab Windows 10, Version 1901 (WDDM 2.6)
MiscCaps.IndependentVidPnVSyncControl
Treiber, die diese Funktion festlegen, sollten die angegebene VidPnSourceId in DdiControlInterrupt3 lesen und VSync für die erwähnte VidPnSourceId steuern. Unterstützt ab Windows 10, Version 2004 (WDDM 2.7).
MiscCaps.NoHybridDiscreteDListDllSupport
Gibt an, ob ein Treiber eine d-List unterstützt. Unterstützt ab Windows 10, Version 2004 (WDDM 2.8).
MiscCaps.DisplayableSupport
Gibt an, ob ein Treiber das anzeigefähige Feature unterstützt. Wird ab Windows 11 (WDDM 3.0) unterstützt.
MiscCaps.NoHybridDiscreteDListDllMuxSupport
MiscCaps.CursorDoesNotSupportXorBlendWithMultiPlaneOverlay
MiscCaps.Reserved
Reserviert.
MiscCaps.Value
Eine alternative Möglichkeit, auf die MiscCaps Bits zuzugreifen.
MaxHwQueuedFlips
Die maximale Anzahl von Hardware-Flip-Warteschlangen, die der Treiber unterstützt. Wenn das Betriebssystem hardware flip queue-Unterstützung zulässt, kann der Treiber MaxHwQueuedFlips- auf einen Wert festlegen, der größer als 1 ist. Hinzugefügt in Windows Server 2022 (WDDM 2.9); wird ab Windows 11 (WDDM 3.0) unterstützt.
HwQueuedFlipCaps
Ein DXGK_HWQUEUEDFLIP_CAPS Wert, der hardwarebasierte Flip-Warteschlangenfunktionen beschreibt. Hinzugefügt in Windows Server 2022 (WDDM 2.9); wird ab Windows 11 (WDDM 3.0) unterstützt.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows Vista |
Header- | d3dkmddi.h (einschließlich D3dkmddi.h) |
Siehe auch
DxgkDdiUpdateActiveVidPnPresentPath-
DxgkDdiStopDeviceAndReleasePostDisplayOwnership
DxgkDdiSetPowerComponentFState
DxgkDdiPowerRuntimeControlRequest