다음을 통해 공유


DXGKARG_FORMATHISTORYBUFFER 구조체(d3dkmddi.h)

기록 버퍼의 서식을 지정하는 디스플레이 미니포트 드라이버에 대한 정보를 포함합니다.

구문

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

멤버

pHistoryBuffer

GPU에 의해 채워진 형식이 지정되지 않은 DXGK_HISTORY_BUFFER 기록 버퍼에 대한 포인터입니다.

HistoryBufferSize

pHistoryBuffer가 가리키는 버퍼의 크기(바이트)입니다.

pFormattedBuffer

드라이버가 제공된 형식이 지정되지 않은 기록 버퍼에서 파생된 타임스탬프 정보를 저장하는 데 사용하는 페이징되지 않은 시스템 메모리 세그먼트에 대한 포인터입니다.

pFormattedBuffer가 가리키는 버퍼는 정밀도로 지정된 정밀도의 큰 타임스탬프 배열로 관리되어야 합니다. 버퍼에는 원래 기록 버퍼에 이미 있는 헤더 정보가 포함되어서는 안 됩니다.

FormattedBufferSize

pFormattedBuffer가 가리키는 버퍼의 크기(바이트)입니다. 드라이버는 이 버퍼 크기를 초과하는 데이터를 쓰지 않도록 해야 합니다.

NumTimestamps

타임스탬프를 나타내는 수입니다. DxgkDdiFormatHistoryBuffer 함수에 대한 호출이 완료되면 드라이버는 이 값을 pFormattedBuffer가 가리키는 형식이 지정된 버퍼에 기록되는 타임스탬프 수로 설정해야 합니다.

드라이버가 pFormattedBuffer가 가리키는 서식이 지정된 버퍼를 완료할 때까지 형식이 지정된 출력 버퍼에 포함되는 타임스탬프의 수는 알 수 없습니다.

Precision

드라이버가 ETW(Windows용 이벤트 추적) 시설에 기록될 타임스탬프를 정밀도에 대한 정보로 채우는 DXGKARG_HISTORYBUFFERPRECISION 구조체입니다.

DXGKARG_HISTORYBUFFERPRECISION 값입니다. PrecisionBits 멤버는 0일 수 없습니다.

Offset

DxgkDdiFormatHistoryBuffer 함수에 대한 호출에 대한 입력에서 이 멤버의 값은 서식을 시작해야 하는 첫 번째 타임스탬프에 대한 오프셋입니다. 함수 호출이 완료되면 드라이버는 기록 버퍼의 모든 타임스탬프를 성공적으로 포맷한 경우 값을 0으로 설정해야 합니다.

0이 아닌 경우 드라이버는 서식이 지정된 버퍼를 채우지 않고 기록 버퍼의 모든 타임스탬프를 포맷할 수 없습니다. 이 경우 값은 다음 함수 호출에서 계속되어야 하는 오프셋을 나타냅니다.

설명

드라이버는 제공된 기록 버퍼의 헤더에서 타임스탬프를 입력하고 사용 가능한 타임스탬프를 가져와야 합니다. 드라이버가 계산에 필요한 추가 데이터는 프라이빗 데이터에 저장해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8.1,WDDM 1.3 이상
지원되는 최소 서버 Windows Server 2012 R2
머리글 d3dkmddi.h(D3dkmddi.h 포함)

추가 정보

DXGKARG_HISTORYBUFFERPRECISION

DXGK_HISTORY_BUFFER

DxgkDdiFormatHistoryBuffer