ID3D11DeviceContext::GetData-Methode (d3d11.h)
Abrufen von Daten aus der Grafikverarbeitungseinheit (GPU) asynchron.
Syntax
HRESULT GetData(
[in] ID3D11Asynchronous *pAsync,
[out, optional] void *pData,
[in] UINT DataSize,
[in] UINT GetDataFlags
);
Parameter
[in] pAsync
Typ: ID3D11Asynchron*
Ein Zeiger auf eine ID3D11Asynchrone Schnittstelle für das Objekt, über das GetData Daten abruft.
[out, optional] pData
Typ: void*
Adresse des Arbeitsspeichers, der die Daten empfängt. Bei NULL wird GetData nur verwendet, um status zu überprüfen. Der Typ der Datenausgabe hängt vom Typ der asynchronen Schnittstelle ab.
[in] DataSize
Typ: UINT
Größe der abzurufenden Daten oder 0. Muss 0 sein, wenn pDataNULL ist.
[in] GetDataFlags
Typ: UINT
Optionale Flags. Kann 0 oder eine beliebige Kombination der von D3D11_ASYNC_GETDATA_FLAG aufgezählten Flags sein.
Rückgabewert
Typ: HRESULT
Diese Methode gibt einen der Direct3D 11-Rückgabecodes zurück. Ein Rückgabewert von S_OK gibt an, dass die Daten bei pData für die aufrufende Anwendung verfügbar sind. Ein Rückgabewert von S_FALSE gibt an, dass die Daten noch nicht verfügbar sind. Wenn die Daten noch nicht verfügbar sind, muss die Anwendung GetData aufrufen, bis die Daten verfügbar sind.
Hinweise
Abfragen in einem verzögerten Kontext sind auf prädiktische Zeichnung beschränkt. Das heißt, Sie können ID3D11DeviceContext::GetData nicht in einem verzögerten Kontext aufrufen, um Daten zu einer Abfrage abzurufen. Sie können GetData nur im unmittelbaren Kontext aufrufen, um Daten zu einer Abfrage abzurufen. Für prädizierte Zeichnung werden die Ergebnisse einer Abfrage vom Typ Prädication von der GPU verwendet und nicht an eine Anwendung zurückgegeben. Weitere Informationen zu Prädication und Prädikatzeichnung finden Sie unter D3D11DeviceContext::SetPredication.
GetData ruft die Daten ab, die die Runtime zwischen Aufrufen von ID3D11DeviceContext::Begin und ID3D11DeviceContext::End gesammelt hat. Für bestimmte Abfragen ist nur ein Aufruf von ID3D11DeviceContext::End erforderlich. In diesem Fall sind die von GetData zurückgegebenen Daten bis zum letzten Aufruf von ID3D11DeviceContext::End genau. Informationen zu den Abfragen, die nur einen Aufruf von ID3D11DeviceContext::End erfordern, und zu dem Datentyp, den GetData für jede Abfrage abruft, finden Sie unter D3D11_QUERY.
Wenn DataSize 0 ist, wird GetData nur verwendet, um status zu überprüfen.
Eine Anwendung sammelt Leistungsindikatorendaten, indem SIE ID3D11DeviceContext::Begin aufruft, einige Grafikbefehle ausgibt, ID3D11DeviceContext::End aufruft und dann ID3D11DeviceContext::GetData aufruft, um Daten über die Vorgänge zwischen den Aufrufen "Begin " und "End " abzurufen. Informationen zu Leistungsindikatortypen finden Sie unter D3D11_COUNTER.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d11.h |
Bibliothek | D3D11.lib |