Interface ID3D11Query (d3d11.h)
Une interface de requête interroge les informations du GPU.
Héritage
L’interface ID3D11Query hérite d’ID3D11Asynchronous. ID3D11Query a également les types de membres suivants :
Méthodes
L’interface ID3D11Query possède ces méthodes.
ID3D11Query ::GetDesc Obtenir une description de requête. (ID3D11Query.GetDesc) |
Remarques
Une requête peut être créée avec ID3D11Device ::CreateQuery.
Les données de requête sont généralement collectées en émettant une commande ID3D11DeviceContext ::Begin , en émettant des commandes graphiques, en émettant une commande ID3D11DeviceContext ::End , puis en appelant ID3D11DeviceContext ::GetData pour obtenir des données sur ce qui s’est passé entre les appels Begin et End. Les données retournées par GetData seront différentes selon le type de requête.
Toutefois, certaines requêtes ne nécessitent pas d’appels à Begin. Pour obtenir la liste des requêtes possibles , consultez D3D11_QUERY.
Une requête est généralement exécutée comme indiqué dans le code suivant :
D3D11_QUERY_DESC queryDesc;
... // Fill out queryDesc structure
ID3D11Query * pQuery;
pDevice->CreateQuery(&queryDesc, &pQuery);
pDeviceContext->Begin(pQuery);
... // Issue graphics commands
pDeviceContext->End(pQuery);
UINT64 queryData; // This data type is different depending on the query type
while( S_OK != pDeviceContext->GetData(pQuery, &queryData, sizeof(UINT64), 0) )
{
}
Lors de l’utilisation d’une requête qui ne nécessite pas d’appel à Begin, elle nécessite toujours un appel à End. L’appel à End entraîne l’exactitude des données retournées par GetData jusqu’au dernier appel à End.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | d3d11.h |