Freigeben über


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-

DXGK_VIDSCHCAPS

DxgkDdiStopDeviceAndReleasePostDisplayOwnership

CheckDirectFlipSupport-

DXGK_POINTERFLAGS

D3DKMDT_PREEMPTION_CAPS

DXGK_GAMMARAMPCAPS

DxgkDdiQueryAdapterInfo

DXGK_PRESENTATIONCAPS

DXGK_VIDMMCAPS

DXGK_GPUENGINETOPOLOGY

DxgkDdiQueryEngineStatus-

DxgkDdiSetPowerComponentFState

DxgkDdiSetVidPnSourceAddress

DxgkDdiResetEngine

DxgkDdiPowerRuntimeControlRequest

DxgkCbNotifyInterrupt

DxgkDdiNotifySurpriseRemoval-

DxgkDdiQueryDependentEngineGroup-

DXGK_FLIPCAPS

DXGKARG_QUERYADAPTERINFO