DXGK_CONTEXTINFO Struktur (d3dkmddi.h)
Die DXGK_CONTEXTINFO-Struktur beschreibt einen Gerätekontext.
Syntax
typedef struct _DXGK_CONTEXTINFO {
UINT DmaBufferSize;
UINT DmaBufferSegmentSet;
UINT DmaBufferPrivateDataSize;
UINT AllocationListSize;
UINT PatchLocationListSize;
UINT Reserved;
DXGK_CONTEXTINFO_CAPS Caps;
ULONG PagingCompanionNodeId;
} DXGK_CONTEXTINFO;
Member
DmaBufferSize
Die Größe des Puffers von Hardwarebefehlen, der über den direkten Speicherzugriff (DMA) an die Grafikverarbeitungseinheit (GPU) gesendet wird, in Bytes.
Der DMA-Puffer kann wachsen und verkleinern, nachdem der Kontext erstellt wurde. Der DMA-Puffer kann jedoch nie kleiner als die von DmaBufferSize festgelegte Startgröße verkleinern.
DmaBufferSegmentSet
Die Bezeichner der Segmente, in denen der DMA-Puffer für die GPU zugänglich gemacht werden soll.
DmaBufferPrivateDataSize
Die Größe der treiberresidenten privaten Datenstruktur in Bytes, die jedem DMA-Puffer zugeordnet ist. Der Arbeitsspeicher für diese private Datenstruktur wird aus einem nicht ausgestellten Pool zugewiesen. Wenn der Treiber null in DmaBufferPrivateDataSize angibt, wird kein Arbeitsspeicher für die private Datenstruktur zugewiesen.
Die private Datenstruktur, die einem DMA-Puffer zugeordnet ist, wird beim Erstellen des DMA-Puffers mit null initialisiert. Während der Lebensdauer des DMA-Puffers greift der Videospeicher-Manager nie auf die private Datenstruktur zu, die dem DMA-Puffer zugeordnet ist.
AllocationListSize
Die Anfangsanzahl von Elementen in einem Array von Zuordnungen (d.a. ein Array von DXGK_ALLOCATIONLIST Strukturen). Diese Zahl ist die Anfangsanzahl von Zuordnungen, die der Treiber in den pAllocationList-Membern der DXGKARG_PRESENT - und DXGKARG_RENDER-Strukturen in Aufrufen der DxgkDdiPresent - bzw . DxgkDdiRender-Funktionen des Treibers anfordert.
Die Zuordnungsliste kann wachsen und verkleinern, nachdem der Kontext erstellt wurde. Die Zuordnungsliste kann jedoch niemals kleiner als die von AllocationListSize festgelegte Startgröße verkleinern.
PatchLocationListSize
Die Anfangsanzahl von Elementen in einem Array von Patchspeicherorten (d. h. ein Array von D3DDDI_PATCHLOCATIONLIST Strukturen) für das Gerät im Benutzer- und Kernelmodus. Diese Zahl ist die Anfangsanzahl von Patchspeicherorten, die der Treiber anfordert, sich in den pPatchLocationListIn-Membern der DXGKARG_RENDER Strukturen in Aufrufen der DxgkDdiRender-Funktion zu befinden.
Die Patchspeicherortliste kann wachsen und verkleinern, nachdem der Kontext erstellt wurde. Die Patchlocation-Liste kann jedoch nie kleiner als die von PatchLocationListSize festgelegte Startgröße verkleinern.
Reserved
Dieser Member ist reserviert und sollte auf null festgelegt werden.
Dieses Mitglied ist ab Windows 7 verfügbar.
Caps
Beschreibt optionale Features, die vom Kontext unterstützt werden.
Wird ab Windows 10 unterstützt.
PagingCompanionNodeId
Gibt den nullbasierten Engine-Bezeichner der Engine an, die für diesen Kontext paging-Begleiter verwendet werden soll.
Wird ab Windows 10 unterstützt.
Hinweise
Ein Anzeigeminiporttreiber gibt Werte für die Member DmaBufferSize und AllocationListSize an, um Folgendes zu gewährleisten:
- Das Microsoft DirectX-Grafiksubsystem kann nur einen DMA-Puffer (Direct Memory Access) verwenden, um (mithilfe der DxgkDdiPresent-Funktion des Anzeigeminiporttreibers) mindestens eine RECT-Struktur für alle Szenarien anzuzeigen.
- Die Größen von DMA- und Zuordnungslistenpuffern sind groß genug, um mindestens einen Befehl zu enthalten, der nicht auf mehrere Puffer aufgeteilt werden kann.
- Die Größen von DMA- und Zuordnungslistenpuffern sind groß genug, um Setup- und DMA-Aufwand zu vermeiden.
Wenn der Treiber DmaBufferSegmentSet auf 0 festlegt, weist der Videospeicher-Manager den DMA-Puffern zusammenhängenden ausgelagerten Speicher zu, bei dem es sich um kombinierten Schreibspeicher handelt. Daher muss die GPU auf DMA-Puffer zugreifen, indem sie PCI-Zyklen auf Computern verwendet, auf denen AGP-Übertragungen außerhalb der AGP-Blende nicht zulässig sind.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Kopfzeile | d3dkmddi.h (einschließlich D3dkmddi.h) |