PFND3D10DDI_CHECKCOUNTER回调函数 (d3d10umddi.h)

CheckCounter 函数检索描述计数器的信息。

语法

PFND3D10DDI_CHECKCOUNTER Pfnd3d10ddiCheckcounter;

void Pfnd3d10ddiCheckcounter(
            D3D10DDI_HDEVICE unnamedParam1,
            D3D10DDI_QUERY unnamedParam2,
            D3D10DDI_COUNTER_TYPE *unnamedParam3,
            UINT *unnamedParam4,
            LPSTR unnamedParam5,
  [in, out] UINT *pNameLength,
            LPSTR unnamedParam7,
  [in, out] UINT *pUnitsLength,
            LPSTR unnamedParam9,
  [in, out] UINT *pDescriptionLength
)
{...}

参数

unnamedParam1

hDevice [in]

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

unnamedParam2

查询 [in]

一个 D3D10DDI_QUERY类型化值,该值标识检索信息的计数器标识符。

unnamedParam3

pCounterType [out]

指向一个变量的指针,该变量从D3D10DDI_COUNTER_TYPE枚举中接收以下值之一,用于标识计数器输出的数据类型。

价值 意义
D3D10DDI_COUNTER_TYPE_FLOAT32 单精度浮点数
D3D10DDI_COUNTER_TYPE_UINT16 16 位值
D3D10DDI_COUNTER_TYPE_UINT32 32 位值
D3D10DDI_COUNTER_TYPE_UINT64 64 位值

unnamedParam4

pDescription [out]

驱动程序返回 NULL 终止字符串的指针,该字符串包含计数器标识符度量值的说明。

unnamedParam5

pActiveCounters [out]

指向一个变量的指针,该变量接收同时为创建 查询 标识的计数器标识符而分配的活动计数器数。

[in, out] pNameLength

指向一个变量的指针,该变量接收 pName 参数指定的 NULL 终止字符串的大小(以字节为单位)。

unnamedParam7

pName [out]

驱动程序返回以 NULL 结尾的字符串的指针,该字符串包含计数器标识符的名称。

[in, out] pUnitsLength

指向一个变量的指针,该变量接收 pUnits 参数指定的以 NULL 结尾的字符串的大小(以字节为单位)。

unnamedParam9

pUnits [out]

驱动程序返回以 NULL 结尾的字符串的指针,该字符串包含计数器标识符度量单位的名称。

[in, out] pDescriptionLength

指向一个变量的指针,该变量接收 pDescription 参数指定的以 NULL 结尾的字符串的大小(以字节为单位)。

返回值

没有

言论

驱动程序可以使用 pfnSetErrorCb 回调函数来设置错误代码。

驱动程序的 CheckCounter 函数可以调用 pfnSetErrorCb 回调函数来设置ERR_UNSUPPORTED错误代码(如果 CheckCounter指定设备不支持的已知计数器的 Query 参数)。

驱动程序必须验证依赖于设备的计数器标识符,以确保标识符在范围内。 驱动程序还必须确保存在足够的空间,以便将每个计数器字符串复制到 Microsoft Direct3D 运行时提供的每个缓冲区中。 驱动程序可以调用 pfnSetErrorCb 回调函数,以便在任何提供的缓冲区没有足够的空间的情况下设置E_INVALIDARG错误代码。

驱动程序的 CheckCounter 函数无法调用 pfnSetErrorCb 回调函数来设置D3DDDIERR_DEVICEREMOVED错误代码,因为 CheckCounter 是函数的功能检查类型。 驱动程序必须确保设备创建后有足够的信息来响应对 CheckCounter的调用,即使在存在D3DDDIERR_DEVICEREMOVED的情况下也是如此。

要求

要求 价值
最低支持的客户端 在 Windows Vista 和更高版本的 Windows作系统中可用。
目标平台 桌面
标头 d3d10umddi.h (包括 D3d10umddi.h)

另请参阅

D3D10DDI_DEVICEFUNCS

D3D10DDI_QUERY

pfnSetErrorCb