Интерфейс 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 |