PFND3DDDI_SETMARKERMODE回调函数 (d3dumddi.h)

通知用户模式显示驱动程序,它应支持 Windows 事件跟踪(ETW)标记事件的类型。 (可选)由 Windows 显示驱动程序模型 (WDDM) 1.3 及更高版本驱动程序在 Microsoft Direct3D 级别 9 硬件上运行。 (请参阅 Direct3D 渲染性能改进中的要求。对于更高级的硬件,驱动程序应实现 SetMarkerMode 函数。

语法

PFND3DDDI_SETMARKERMODE Pfnd3dddiSetmarkermode;

HRESULT Pfnd3dddiSetmarkermode(
  HANDLE hDevice,
  D3DDDI_MARKERTYPE Type,
  UINT Flags
)
{...}

参数

hDevice

显示设备的句柄(图形上下文)。

Type

D3DDDI_MARKERTYPE 枚举中的一个值,该值指示驱动程序应支持的标记事件的类型。

Flags

UINT 值,该值指示驱动程序是否应在命令缓冲区中提供自定义信息。 如果设置为 D3DDDI_SETMARKERMODE_CUSTOMDRIVEREVENTS,驱动程序应使用自定义事件信息批注和检测命令缓冲区。 否则,驱动程序不应批注命令缓冲区。

批注可以采用 English-US 区域设置中的文本字符串的形式,也可以以索引值的形式呈现到字符串表中的位置。 对于后一个选项,驱动程序还必须实现描述索引值指示的字符串的函数。

返回值

如果函数未成功完成,则返回 S_OK 或相应的错误结果。

言论

在用户模式驱动程序中设置配置文件类型标记事件(由 D3DDDIMT_PROFILE 类型指示)时,请遵循以下准则:

  1. 使用轻量级检测,该检测不会与图形命令边界产生强关联。
  2. 驱动程序必须能够采样图形管道末尾的 GPU 时间戳。
  3. 不要使用对图形管道造成高性能负担的采样命令,例如等待空闲命令。 为了能够检测配置文件类型的标记事件,驱动程序不必刷新管道或缓存。

要求

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

另请参阅

D3DDDI_MARKERTYPE

SetMarkerMode