PFND3DWDDM1_3DDI_SETMARKER回调函数 (d3d10umddi.h)
通知用户模式显示驱动程序,如果自上次调用 SetMarker 以来已完成任何 GPU 工作,则必须生成新的时间戳。
语法
PFND3DWDDM1_3DDI_SETMARKER Pfnd3dwddm13DdiSetmarker;
void Pfnd3dwddm13DdiSetmarker(
D3D10DDI_HDEVICE hDevice
)
{...}
参数
hDevice
显示设备的句柄 (图形上下文) 。
返回值
无
备注
驱动程序可以使用 pfnSetErrorCb 回调函数来设置错误代码。
如果 SetMarkerMode 函数的 Type 参数中的标记事件类型未D3DWDDM1_3DDI_MARKER_TYPE_NONE,则用户模式显示驱动程序必须在每次调用 SetMarker 时执行此过程:
递增 D3DDDICB_LOGUMDMARKER 结构的 APISequenceNumber 成员的值。
确定与单线程设备驱动程序接口关联的上下文, (DDI) 呈现提交的调用与上次对 SetMarker 的调用一起工作。 对于每个此类上下文:
- 如果上下文的命令缓冲区为空,则不执行任何操作。
- 否则:
- 确保上下文的历史记录缓冲区中有更多的内存可用。 如有必要,请刷新缓冲区。
- 将另一个条目添加到上下文的 API 序列号缓冲区,该缓冲区包含当前 APISequenceNumber 值的低 32 位。
- 采样并写出适用于当前标记事件类型的时间戳。
更新下次调用 SetMarker 时将使用的跟踪数据。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8.1 (WDDM 1.3) |
最低受支持的服务器 | Windows Server 2012 R2 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |