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
驱动程序填充的 DXGKARG_HISTORYBUFFERPRECISION 结构,其中包含要记录到 Windows 事件跟踪(ETW)设施的时间戳精度的信息。
DXGKARG_HISTORYBUFFERPRECISION的值。PrecisionBits 成员不能为零。
Offset
在对 DxgkDdiFormatHistoryBuffer 函数的调用的输入时,此成员的值是格式化应启动的第一个时间戳的偏移量。 完成函数调用后,如果驱动程序成功格式化了历史记录缓冲区中的所有时间戳,则驱动程序应将该值设置为零。
如果为非零,则驱动程序无法在不填充格式化缓冲区的情况下设置历史记录缓冲区中的所有时间戳的格式。 在这种情况下,该值表示应在下一个函数调用中继续的偏移量。
言论
驱动程序应从提供的历史记录缓冲区的标头获取时间戳条目和可用时间戳的数目。 驱动程序需要计算的任何其他数据都应存储在专用数据中。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 8.1、WDDM 1.3 及更高版本 |
支持的最低服务器 | Windows Server 2012 R2 |
标头 | d3dkmddi.h (包括 D3dkmddi.h) |