Freigeben über


DXGKARG_FORMATHISTORYBUFFER Struktur (d3dkmddi.h)

Enthält Informationen für den Anzeigeminiporttreiber zum Formatieren eines Verlaufspuffers.

Syntax

typedef struct _DXGKARG_FORMATHISTORYBUFFER {
  DXGK_HISTORY_BUFFER            *pHistoryBuffer;
  UINT32                         HistoryBufferSize;
  PVOID                          pFormattedBuffer;
  UINT32                         FormattedBufferSize;
  UINT32                         NumTimestamps;
  DXGKARG_HISTORYBUFFERPRECISION Precision;
  UINT32                         Offset;
} DXGKARG_FORMATHISTORYBUFFER;

Angehörige

pHistoryBuffer

Ein Zeiger auf den unformatierten DXGK_HISTORY_BUFFER Verlaufspuffers, der von der GPU aufgefüllt wurde.

HistoryBufferSize

Die Größe des Puffers in Byte, auf den pHistoryBufferverweist.

pFormattedBuffer

Ein Zeiger auf ein Segment des nicht ausgelagerten Systemspeichers, den der Treiber zum Speichern von Zeitstempelinformationen verwendet, die vom bereitgestellten nicht formatierten Verlaufspuffer abgeleitet werden.

Der Puffer, auf den pFormattedBuffer verweist sollte als großes Array von Zeitstempeln verwaltet werden, die durch Precisionangegeben werden. Der Puffer sollte keine Headerinformationen enthalten, die bereits im ursprünglichen Verlaufspuffer vorhanden sind.

FormattedBufferSize

Die Größe des Puffers in Byte, auf den pFormattedBufferverweist. Der Treiber sollte sicherstellen, dass über diese Puffergröße hinaus keine Daten geschrieben werden.

NumTimestamps

Die Anzahl der Zeitstempel. Nach Abschluss eines Aufrufs der DxgkDdiFormatHistoryBuffer--Funktion sollte der Treiber diesen Wert auf die Anzahl der Zeitstempel festlegen, die in den formatierten Puffer geschrieben werden, auf den pFormattedBufferverweist.

Beachten Sie, dass die Anzahl der Zeitstempel, die sich im formatierten Ausgabepuffer befinden, erst bekannt ist, nachdem der Treiber den formatierten Puffer abgeschlossen hat, auf den pFormattedBufferverweist.

Precision

Eine DXGKARG_HISTORYBUFFERPRECISION Struktur, die der Treiber mit Informationen über die Genauigkeit der Zeitstempel füllt, die bei der Ereignisablaufverfolgung für Windows (ETW)-Einrichtung protokolliert werden.

Der Wert des DXGKARG_HISTORYBUFFERPRECISION.PrecisionBits Member darf nicht null sein.

Offset

Bei Eingaben für einen Aufruf der DxgkDdiFormatHistoryBuffer Funktion ist der Wert dieses Elements der Offset zum ersten Mal Stempel, bei dem die Formatierung gestartet werden soll. Nach Abschluss des Funktionsaufrufs sollte der Treiber den Wert auf Null festlegen, wenn er alle Zeitstempel im Verlaufspuffer erfolgreich formatiert hat.

Wenn kein Wert ungleich Null ist, konnte der Treiber nicht alle Zeitstempel im Verlaufspuffer formatieren, ohne den formatierten Puffer zu füllen. In diesem Fall stellt der Wert den Offset dar, der im nächsten Funktionsaufruf fortgesetzt werden soll.

Bemerkungen

Der Treiber sollte Zeitstempeleinträge und die Anzahl der verwendbaren Zeitstempel aus der Kopfzeile des bereitgestellten Verlaufspuffers abrufen. Alle zusätzlichen Daten, die der Treiber für Berechnungen benötigt, sollten in privaten Daten gespeichert werden.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8.1,WDDM 1.3 und höher
mindestens unterstützte Server- Windows Server 2012 R2
Header- d3dkmddi.h (einschließlich D3dkmddi.h)

Siehe auch

DXGKARG_HISTORYBUFFERPRECISION

DXGK_HISTORY_BUFFER

DxgkDdiFormatHistoryBuffer