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 函数的调用中使用的成员。

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

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