ID3D11DeviceContext ::GetData, méthode (d3d11.h)

Obtenez des données à partir de l’unité de traitement graphique (GPU) de manière asynchrone.

Syntaxe

HRESULT GetData(
  [in]            ID3D11Asynchronous *pAsync,
  [out, optional] void               *pData,
  [in]            UINT               DataSize,
  [in]            UINT               GetDataFlags
);

Paramètres

[in] pAsync

Type : ID3D11Asynchronous*

Pointeur vers une interface ID3D11Asynchronous pour l’objet sur lequel GetData récupère des données.

[out, optional] pData

Type : void*

Adresse de mémoire qui recevra les données. Si la valeur est NULL, GetData sera utilisé uniquement pour case activée status. Le type de sortie de données dépend du type d’interface asynchrone.

[in] DataSize

Type : UINT

Taille des données à récupérer ou 0. Doit être 0 lorsque pData a la valeur NULL.

[in] GetDataFlags

Type : UINT

Indicateurs facultatifs. Il peut s’agir de 0 ou d’une combinaison des indicateurs énumérés par D3D11_ASYNC_GETDATA_FLAG.

Valeur retournée

Type : HRESULT

Cette méthode retourne l’un des codes de retour Direct3D 11. Une valeur de retour de S_OK indique que les données de pData sont accessibles à l’application appelante. Une valeur de retour de S_FALSE indique que les données ne sont pas encore disponibles. Si les données ne sont pas encore disponibles, l’application doit appeler GetData jusqu’à ce que les données soient disponibles.

Remarques

Les requêtes dans un contexte différé sont limitées au dessin prédicé. Autrement dit, vous ne pouvez pas appeler ID3D11DeviceContext ::GetData sur un contexte différé pour obtenir des données sur une requête ; vous pouvez uniquement appeler GetData dans le contexte immédiat pour obtenir des données sur une requête. Pour le dessin prédicé, les résultats d’une requête de type prédication sont utilisés par le GPU et ne sont pas retournés à une application. Pour plus d’informations sur la prédication et le dessin prédicé, consultez D3D11DeviceContext ::SetPredication.

GetData récupère les données que le runtime a collectées entre les appels à ID3D11DeviceContext ::Begin et ID3D11DeviceContext ::End. Certaines requêtes nécessitent uniquement un appel à ID3D11DeviceContext ::End , auquel cas les données retournées par GetData sont exactes jusqu’au dernier appel à ID3D11DeviceContext ::End. Pour plus d’informations sur les requêtes qui nécessitent uniquement un appel à ID3D11DeviceContext ::End et sur le type de données que GetData récupère pour chaque requête, consultez D3D11_QUERY.

Si DataSize a la valeur 0, GetData est utilisé uniquement pour case activée status.

Une application collecte les données de compteur en appelant ID3D11DeviceContext ::Begin, en émettant des commandes graphiques, en appelant ID3D11DeviceContext ::End, puis en appelant ID3D11DeviceContext ::GetData pour obtenir des données sur ce qui s’est passé entre les appels Begin et End . Pour plus d’informations sur les types de compteurs de performances, consultez D3D11_COUNTER.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête d3d11.h
Bibliothèque D3D11.lib

Voir aussi

ID3D11DeviceContext