Поделиться через


Интерфейс ID3D10Query (d3d10.h)

Интерфейс запроса запрашивает сведения из GPU.

Наследование

Интерфейс ID3D10Query наследуется от ID3D10Asynchronous. ID3D10Query также имеет следующие типы элементов:

Методы

Интерфейс ID3D10Query содержит следующие методы.

 
ID3D10Query::GetDesc

Получение описания запроса. (ID3D10Query.GetDesc)

Комментарии

Запрос можно создать с помощью ID3D10Device::CreateQuery.

Этот интерфейс наследует функциональные возможности id3D10Asynchronous Interface.

Данные запроса обычно собираются путем выполнения команды 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
Header d3d10.h

См. также раздел

Основные интерфейсы

ID3D10Asynchronous