Bagikan melalui


ID3D10Asynchronous::Metode GetData (d3d10.h)

Dapatkan data dari GPU secara asinkron.

Sintaks

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

Parameter

[out] pData

Jenis: batal*

Alamat memori yang akan menerima data. Jika NULL, GetData hanya akan digunakan untuk memeriksa status. Jenis output data tergantung pada jenis antarmuka asinkron. Lihat Keterangan.

[in] DataSize

Jenis: UINT

Ukuran data yang akan diambil atau 0. Nilai ini dapat diperoleh dengan ID3D10Asynchronous::GetDataSize. Harus 0 ketika pData adalah NULL.

[in] GetDataFlags

Jenis: UINT

Bendera opsional. Dapat berupa 0 atau kombinasi bendera apa pun yang dijumlahkan oleh D3D10_ASYNC_GETDATA_FLAG.

Nilai kembali

Jenis: HRESULT

Jika fungsi ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, nilai yang mungkin dikembalikan adalah sebagai berikut:

  • S_FALSE
  • DXGI_ERROR_DEVICE_REMOVED
  • DXGI_ERROR_INVALID_CALL

Keterangan

GetData mengambil data yang dikumpulkan antara panggilan ke ID3D10Asynchronous::Begin dan ID3D10Asynchronous::End. Kueri tertentu hanya memerlukan panggilan ke ID3D10Asynchronous::End dalam hal ini data yang dikembalikan oleh GetData akurat hingga panggilan terakhir ke ID3D10Asynchronous::End (Lihat Id3D10Query Interface).

Jika DataSize adalah 0, GetData hanya digunakan untuk memeriksa status di mana nilai pengembalian S_OK menunjukkan bahwa data tersedia untuk diberikan ke aplikasi, dan nilai pengembalian S_FALSE menunjukkan data belum tersedia.

Tidak valid untuk memanggil fungsi ini pada predikat yang dibuat dengan bendera D3D10_QUERY_MISCFLAG_PREDICATEHINT.

Jika antarmuka asinkron yang memanggil fungsi ini adalah ID3D10Query Interface, maka tabel berikut berlaku.

Jenis Kueri Tipe Data Output Mendukung Metode Mulai
D3D10_QUERY_EVENT BOOL TIDAK
D3D10_QUERY_OCCLUSION UINT64 YA
D3D10_QUERY_TIMESTAMP UINT64 TIDAK
D3D10_QUERY_TIMESTAMP_DISJOINT D3D10_QUERY_DATA_TIMESTAMP_DISJOINT YA
D3D10_QUERY_PIPELINE_STATISTICS D3D10_QUERY_DATA_PIPELINE_STATISTICS YA
D3D10_QUERY_OCCLUSION_PREDICATE BOOL YA
D3D10_QUERY_SO_STATISTICS D3D10_QUERY_DATA_SO_STATISTICS YA
D3D10_QUERY_SO_OVERFLOW_PREDICATE BOOL YA
 

Jika antarmuka asinkron yang memanggil API ini adalah ID3D10Counter Interface, maka hal berikut berlaku.

Jenis Penghitung Tipe Data Output Unit-unit
D3D10_COUNTER_GPU_IDLE FLOAT32 pecahan waktu
D3D10_COUNTER_VERTEX_PROCESSING FLOAT32 pecahan waktu
D3D10_COUNTER_GEOMETRY_PROCESSING FLOAT32 pecahan waktu
D3D10_COUNTER_PIXEL_PROCESSING FLOAT32 pecahan waktu
D3D10_COUNTER_OTHER_GPU_PROCESSING FLOAT32 pecahan waktu
D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION FLOAT32 pecahan maksimum teoritis
D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION FLOAT32 pecahan maksimum teoritis
D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION FLOAT32 pecahan maksimum teoritis
D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION FLOAT32 pecahan maksimum teoritis
D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION FLOAT32 pecahan maksimum teoritis
D3D10_COUNTER_VS_MEMORY_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_VS_COMPUTATION_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_GS_MEMORY_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_GS_COMPUTATION_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_PS_MEMORY_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_PS_COMPUTATION_LIMITED FLOAT32 pecahan waktu
D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE FLOAT32 pecahan
D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE FLOAT32 pecahan
 

Nilai yang dikembalikan oleh penghitung D3D10_COUNTER_GPU_IDLE, D3D10_COUNTER_VERTEX_PROCESSING, D3D10_COUNTER_GEOMETRY_PROCESSING, D3D10_COUNTER_PIXEL_PROCESSING, atau D3D10_COUNTER_OTHER_GPU_PROCESSING mungkin berbeda tergantung pada jumlah penghitung paralel yang ada di kartu video, dan nilai-nilai tersebut dapat ditafsirkan dengan persamaan berikut:

Persamaan untuk menginterpretasikan jumlah penghitung paralel

Jumlah penghitung paralel yang dimiliki kartu video tersedia dari NumDetectableParallelUnits di D3D10_COUNTER_INFO, dan dapat diambil dengan memanggil ID3D10Device::CheckCounterInfo.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d10.h
Pustaka D3D10.lib

Lihat juga

Antarmuka ID3D10Asynchronous