DXGK_HISTORY_BUFFER_HEADER结构(d3dkmddi.h)

指定如何在 DXGK_HISTORY_BUFFER 历史记录缓冲区中存储数据。

语法

typedef struct _DXGK_HISTORY_BUFFER_HEADER {
  UINT32 RenderCbSequence;
  UINT32 NumTimestamps;
  UINT32 PrivateDataSize;
  UINT32 Reserved;
} DXGK_HISTORY_BUFFER_HEADER;

成员

RenderCbSequence

D3DDDICB_RENDERFLAGS的值。 成员,要在对 pfnRenderCb 函数的调用中使用。

显示微型端口驱动程序应计算此值并将其输入 DXGK_HISTORY_BUFFER_HEADER,然后再调用 pfnRenderCb

NumTimestamps

当 DMA 缓冲区完成其执行时,历史记录缓冲区中的时间戳数。

驱动程序应包括记录的所有时间戳,即使必须在记录到 Windows 事件跟踪(ETW)设施之前格式化缓冲区。

PrivateDataSize

驱动程序存储的可选专用数据的大小(以字节为单位)。 驱动程序可以出于任何目的使用此数据。

如果为零,驱动程序无需在历史记录缓冲区中存储专用数据。

注意 此值应为 8 个字节的倍数,以确保时间戳数据与 64 位边界对齐。
 
如果在 DMA 缓冲区完成执行时不需要格式化历史记录缓冲区,则当 DirectX 图形内核子系统将日志写入 ETW 时,它将使用 PrivateDataSize 作为标头的直接偏移来引用时间戳。

Reserved

保留供系统使用,必须设置为零。

言论

只有历史记录缓冲区的时间戳部分以及时间戳的数量才会记录到 ETW。 标头数据和专用驱动程序数据不会作为时间戳缓冲区的一部分记录到 ETW。 但是,标头的各个部分将单独记录。

要求

要求 价值
最低支持的客户端 Windows 8.1、WDDM 1.3 及更高版本
支持的最低服务器 Windows Server 2012 R2
标头 d3dkmddi.h (包括 D3dkmddi.h)

另请参阅

D3DDDICB_RENDERFLAGS

DXGK_HISTORY_BUFFER

pfnRenderCb