Compartir a través de


Método ID3D11DeviceContext::GetData (d3d11.h)

Obtenga datos de la unidad de procesamiento de gráficos (GPU) de forma asincrónica.

Sintaxis

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

Parámetros

[in] pAsync

Tipo: ID3D11Asynchronous*

Puntero a una interfaz ID3D11Asynchronous para el objeto sobre el que GetData recupera datos.

[out, optional] pData

Tipo: void*

Dirección de la memoria que recibirá los datos. Si es NULL, GetData solo se usará para comprobar el estado. El tipo de salida de datos depende del tipo de interfaz asincrónica.

[in] DataSize

Tipo: UINT

Tamaño de los datos que se van a recuperar o 0. Debe ser 0 cuando pData es NULL.

[in] GetDataFlags

Tipo: UINT

Marcas opcionales. Puede ser 0 o cualquier combinación de las marcas enumeradas por D3D11_ASYNC_GETDATA_FLAG.

Valor devuelto

Tipo: HRESULT

Este método devuelve uno de los códigos de retorno de Direct3D 11. Un valor devuelto de S_OK indica que los datos de pData están disponibles para que la aplicación que realiza la llamada tenga acceso. Un valor devuelto de S_FALSE indica que los datos aún no están disponibles. Si los datos aún no están disponibles, la aplicación debe llamar a GetData hasta que los datos estén disponibles.

Comentarios

Las consultas en un contexto diferido se limitan al dibujo predelimitado. Es decir, no puede llamar a ID3D11DeviceContext::GetData en un contexto diferido para obtener datos sobre una consulta; Solo puede llamar a GetData en el contexto inmediato para obtener datos sobre una consulta. Para el dibujo predeterminado, los resultados de una consulta de tipo de predicado se usan en la GPU y no se devuelven a una aplicación. Para obtener más información sobre la predicación y el dibujo predestado, vea D3D11DeviceContext::SetPredication.

GetData recupera los datos recopilados por el tiempo de ejecución entre llamadas a ID3D11DeviceContext::Begin e ID3D11DeviceContext::End. Algunas consultas solo requieren una llamada a ID3D11DeviceContext::End en cuyo caso los datos devueltos por GetData son precisos hasta la última llamada a ID3D11DeviceContext::End. Para obtener información sobre las consultas que solo requieren una llamada a ID3D11DeviceContext::End y sobre el tipo de datos que GetData recupera para cada consulta, vea D3D11_QUERY.

Si DataSize es 0, GetData solo se usa para comprobar el estado.

Una aplicación recopila datos de contador llamando a ID3D11DeviceContext::Begin, emitiendo algunos comandos gráficos, llamando a ID3D11DeviceContext::End y, a continuación, llamando a ID3D11DeviceContext::GetData para obtener datos sobre lo que ocurrió entre las llamadas Begin y End . Para obtener información sobre los tipos de contadores de rendimiento, consulte D3D11_COUNTER.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado d3d11.h
Library D3D11.lib

Consulte también

ID3D11DeviceContext