Freigeben über


DXGKDDI_PRESENTDISPLAYONLY Rückruffunktion (d3dkmddi.h)

Zeigt das Bildschirmbild dem Anzeigegerät eines Kernelmodustreibers (KMDOD) an.

Syntax

DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;

NTSTATUS DxgkddiPresentdisplayonly(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}

Parameter

hAdapter

Ein Handle für den Gerätekontext für die Grafikkarte. Die DxgkDdiAddDevice-Funktion von KMDOD hat dieses Handle zuvor im MiniportDeviceContext-Parameter zurückgegeben.

pPresentDisplayOnly

Ein Zeiger auf eine DXGKARG_PRESENT_DISPLAYONLY Struktur, die Informationen zum aktuellen Vorgang enthält.

Rückgabewert

Gibt einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS Der aktuelle Vorgang wurde erfolgreich abgeschlossen.
STATUS_PENDING Der vorliegende Vorgang wurde zum Abschluss an die Software- oder Hardwarewarteschlange gesendet.
In diesem Fall sollte der KMDOD einen Interrupt- und verzögerten Prozeduraufruf (DPC) verwenden, um den Fortschritt des aktuellen Vorgangs zu melden. Andernfalls verwendet das Betriebssystem den Timeouterkennungs- und -wiederherstellungsprozess (Timeout Detection and Recovery, TDR), der einen Fehler meldet und die KMDOD erfordert, sich selbst neu zu initialisieren und die GPU zurückzusetzen.
Beachten Sie, dass dieser status Code nicht für den synchronen Modus zurückgegeben werden sollte, wie unter Hinweise beschrieben.

 

Der Treiber kann auch alle anderen Fehler status Code zurückgeben, der in Ntstatus.h definiert ist, um Probleme anzugeben, die mit dem aktuellen Vorgang aufgetreten sind.

Hinweise

Die KMDOD muss alle Bildschirm-zu-Bildschirm-Verschiebungen abschließen, bevor modifiziert Rechtecke kopiert werden. Darüber hinaus muss die KMDOD jeden Verschiebungs-/Kopiervorgang abschließen, bevor ein weiterer Verschiebungs-/Kopiervorgang gestartet wird.

Das Betriebssystem unterstützt zwei Modi von KMDOD-Vorgängen: synchron und asynchron. Abhängig von der Hardware- und Treiberimplementierung kann der KMDOD jederzeit einen Modus verwenden oder zwischen diesen wechseln.

Das Betriebssystem garantiert, dass diese Funktion dem Synchronisierungsmodus auf Nullebene folgt, wie unter Threading und Synchronization Zero Level definiert.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8
Unterstützte Mindestversion (Server) Windows Server 2012
Zielplattform Desktop
Kopfzeile d3dkmddi.h
IRQL PASSIVE_LEVEL

Weitere Informationen

DXGKARGCB_NOTIFY_INTERRUPT_DATA

DXGKARG_PRESENT_DISPLAYONLY

DxgkCbNotifyDpc

DxgkCbNotifyInterrupt

DxgkCbPresentDisplayOnlyProgress

DxgkCbQueueDpc

DxgkDdiAddDevice