D3DKMTSubmitCommand-Funktion (d3dkmthk.h)
D3DKMTSubmitCommand- wird verwendet, um Befehlspuffer in Kontexten zu übermitteln, die die virtuelle Adressierung der Grafikverarbeitungseinheit (GPU) unterstützen. Diese Kontexte generieren Befehle direkt aus dem Benutzermodus, verwalten ihren eigenen Befehlspufferpool und verwenden nicht die Zuordnungs- oder Patchspeicherortliste.
Syntax
NTSTATUS D3DKMTSubmitCommand(
[in] const D3DKMT_SUBMITCOMMAND *unnamedParam1
);
Parameter
[in] unnamedParam1
Ein Zeiger auf eine D3DKMT_SUBMITCOMMAND Struktur, die den Vorgang beschreibt.
Rückgabewert
Rückgabecode | Beschreibung |
---|---|
STATUS_SUCCESS | Der Gerätekontext wurde erfolgreich erstellt. |
STATUS_INVALID_PARAMETER | Parameter wurden überprüft und ermittelt, dass sie falsch sind. |
Diese Funktion kann auch andere NTSTATUS- Werte zurückgeben.
Bemerkungen
Diese Funktion ersetzt die alte Render--Funktion für solche Kontexte und muss an seiner Stelle verwendet werden. Kontexte, die im Legacypatchmodus ausgeführt werden, müssen weiterhin die alte Render--Funktion verwenden.
Obwohl der Benutzermodustreiber keine Patchspeicherorte generiert, muss weiterhin eine Liste von Primaren generiert werden, in die geschrieben wird. Der Videospeicher-Manager verwendet die Zuordnungsliste, um zu bestimmen, auf welche primären Zuordnungen für das Schreiben durch jeden Befehlspuffer verwiesen wird. Diese Informationen werden verwendet, um das Rendern mit den Primaren mit Flip- Vorgängen zu synchronisieren.
Einige Kernelmodustreiber benötigen Informationen vom Benutzermodustreiber, um einen bestimmten DMA-Puffer (Direct Memory Access) an die GPU zu übermitteln. In Windows Display Driver Model (WDDM) 1.0 wurden diese Informationen vom Benutzermodustreiber über den Befehlspuffer an den Kernelmodustreiber gesendet. Da DMA-Puffer direkt vom Benutzermodustreiber erstellt und ohne Änderung an die GPU übermittelt werden, können sie nicht mehr zum Senden von Informationen an den Kerneltreiber verwendet werden. Um die Übertragung von Informationen zwischen benutzermodus- und Kernelmodustreibern zu ermöglichen, wurde ein expliziter privater Treiberdatenpuffer hinzugefügt, der zusammen mit einer Übermittlung gesendet werden soll.
Anmerkung
Diese privaten Treiberdaten sind unidirektional, und der Kernelmodustreiber kann keine Informationen über diesen Puffer an den Benutzermodustreiber zurückgeben.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10 |
mindestens unterstützte Server- | Windows Server 2016 |
Zielplattform- | Universal |
Header- | d3dkmthk.h (einschließlich D3dkmthk.h) |
Library | Gdi32.lib |
DLL- | Gdi32.dll |