ID3D10Query 接口 (d3d10.h)

查询接口从 GPU 查询信息。

继承

ID3D10Query 接口继承自 ID3D10AsynchronousID3D10Query 还具有以下类型的成员:

方法

ID3D10Query 接口具有以下方法。

 
ID3D10Query::GetDesc

获取查询说明。 (ID3D10Query.GetDesc)

注解

可以使用 ID3D10Device::CreateQuery 创建查询。

此接口继承 ID3D10Asynchronous 接口的功能。

查询数据通常通过以下方式收集:发出 ID3D10Asynchronous::Begin 命令,发出一些图形命令,发出 ID3D10Asynchronous::End 命令,然后调用 ID3D10Asynchronous::GetData 以获取有关 Begin 和 End 调用之间所发生情况的数据。 GetData 返回的数据因查询类型而异。

但是,有些查询不需要调用 Begin。 有关可能查询的列表,请参阅 D3D10_QUERY

通常按以下代码所示执行查询:

D3D10_QUERY_DESC queryDesc;

... // Fill out queryDesc structure

ID3D10Query * pQuery;
pDevice->CreateQuery(&queryDesc, &pQuery);

pQuery->Begin();

... // Issue graphics commands, do whatever

pQuery->End();

UINT64 queryData; // This data type is different depending on the query type

while( S_OK != pQuery->GetData(&queryData, sizeof(UINT64), 0) )
{
}

使用不需要调用 Begin 的查询时,仍需要调用 End。 调用 End 会导致 GetData 返回的数据在最后一次调用 End 之前保持准确。

要求

要求
目标平台 Windows
标头 d3d10.h

另请参阅

核心接口

ID3D10Asynchronous