ID3D10Query インターフェイス
クエリ インターフェイスは GPU から情報をクエリします。
IUnknown
ID3D10Asynchronous
ID3D10Query
このインターフェイスには以下のメソッドがあります。
メソッド | 説明 |
---|---|
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 graphis 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 を呼び出すと、End の最終呼び出しまでの正確なデータが GetData から返されます。