Freigeben über


ID3D10Asynchronous::GetData-Methode (d3d10.h)

Abrufen von Daten aus der GPU asynchron.

Syntax

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

Parameter

[out] 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. Siehe Hinweise.

[in] DataSize

Typ: UINT

Größe der abzurufenden Daten oder 0. Dieser Wert kann mit ID3D10Asynchronous::GetDataSize abgerufen werden. Muss 0 sein, wenn pDataNULL ist.

[in] GetDataFlags

Typ: UINT

Optionale Flags. Kann 0 oder eine beliebige Kombination der von D3D10_ASYNC_GETDATA_FLAG aufgezählten Flags sein.

Rückgabewert

Typ: HRESULT

Wenn diese Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls sind folgende Rückgabewerte möglich:

  • S_FALSE
  • DXGI_ERROR_DEVICE_REMOVED
  • DXGI_ERROR_INVALID_CALL

Hinweise

GetData ruft die Daten ab, die zwischen Aufrufen von ID3D10Asynchronous::Begin und ID3D10Asynchronous::End gesammelt wurden. Für bestimmte Abfragen ist nur ein Aufruf von ID3D10Asynchronous::End erforderlich. In diesem Fall sind die von GetData zurückgegebenen Daten bis zum letzten Aufruf von ID3D10Asynchronous::End genau (siehe ID3D10Query-Schnittstelle).

Wenn DataSize 0 ist, wird GetData nur verwendet, um status zu überprüfen, bei dem ein Rückgabewert von S_OK angibt, dass Daten für eine Anwendung verfügbar sind, und ein Rückgabewert von S_FALSE gibt an, dass Daten noch nicht verfügbar sind.

Es ist ungültig, diese Funktion für ein Prädikat aufzurufen, das mit dem Flag D3D10_QUERY_MISCFLAG_PREDICATEHINT erstellt wurde.

Wenn die asynchrone Schnittstelle, die diese Funktion aufruft , ID3D10Query Interface ist, gilt die folgende Tabelle.

Abfragetyp Ausgabedatentyp Unterstützt die Begin-Methode
D3D10_QUERY_EVENT BOOL Nein
D3D10_QUERY_OCCLUSION UINT64 YES
D3D10_QUERY_TIMESTAMP UINT64 Nein
D3D10_QUERY_TIMESTAMP_DISJOINT D3D10_QUERY_DATA_TIMESTAMP_DISJOINT YES
D3D10_QUERY_PIPELINE_STATISTICS D3D10_QUERY_DATA_PIPELINE_STATISTICS YES
D3D10_QUERY_OCCLUSION_PREDICATE BOOL YES
D3D10_QUERY_SO_STATISTICS D3D10_QUERY_DATA_SO_STATISTICS YES
D3D10_QUERY_SO_OVERFLOW_PREDICATE BOOL YES
 

Wenn die asynchrone Schnittstelle, die diese API aufruft , ID3D10Counter Interface ist, gilt Folgendes.

Indikatortyp Ausgabedatentyp Einheiten
D3D10_COUNTER_GPU_IDLE FLOAT32 Zeitanteil
D3D10_COUNTER_VERTEX_PROCESSING FLOAT32 Zeitanteil
D3D10_COUNTER_GEOMETRY_PROCESSING FLOAT32 Zeitanteil
D3D10_COUNTER_PIXEL_PROCESSING FLOAT32 Zeitanteil
D3D10_COUNTER_OTHER_GPU_PROCESSING FLOAT32 Zeitanteil
D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION FLOAT32 Bruch des theoretischen Maximums
D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION FLOAT32 Bruch des theoretischen Maximums
D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION FLOAT32 Bruch des theoretischen Maximums
D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION FLOAT32 Bruch des theoretischen Maximums
D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION FLOAT32 Bruch des theoretischen Maximums
D3D10_COUNTER_VS_MEMORY_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_VS_COMPUTATION_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_GS_MEMORY_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_GS_COMPUTATION_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_PS_MEMORY_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_PS_COMPUTATION_LIMITED FLOAT32 Zeitanteil
D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE FLOAT32 fraction
D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE FLOAT32 fraction
 

Der von einem D3D10_COUNTER_GPU_IDLE, D3D10_COUNTER_VERTEX_PROCESSING, D3D10_COUNTER_GEOMETRY_PROCESSING, D3D10_COUNTER_PIXEL_PROCESSING oder D3D10_COUNTER_OTHER_GPU_PROCESSING Zähler zurückgegebene Wert kann sich je nach Anzahl paralleler Indikatoren in einem Video-Karte unterscheiden, und diese Werte können mit der folgenden Gleichung interpretiert werden:

Formel zum Interpretieren der Anzahl paralleler Indikatoren

Die Anzahl der parallelen Indikatoren, die ein Video Karte hat, ist über NumDetectableParallelUnits in D3D10_COUNTER_INFO verfügbar und kann durch Aufrufen von ID3D10Device::CheckCounterInfo abgerufen werden.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d10.h
Bibliothek D3D10.lib

Weitere Informationen

ID3D10Asynchrone Schnittstelle