次の方法で共有


PFND3D10DDI_QUERYGETDATA コールバック関数 (d3d10umddi.h)

QueryGetData 関数は、クエリ操作の状態をポーリングします。

構文

PFND3D10DDI_QUERYGETDATA Pfnd3d10ddiQuerygetdata;

void Pfnd3d10ddiQuerygetdata(
  D3D10DDI_HDEVICE unnamedParam1,
  D3D10DDI_HQUERY unnamedParam2,
  VOID *unnamedParam3,
  UINT DataSize,
  UINT unnamedParam5
)
{...}

パラメーター

unnamedParam1

hDevice [in]: ディスプレイ デバイスへのハンドル (グラフィックス コンテキスト)。

unnamedParam2

hQuery [in]: ポーリングするクエリ オブジェクトへのハンドル。

unnamedParam3

pData [out]: クエリ操作からデータを受信するメモリ領域へのポインター。 ユーザー モード ディスプレイ ドライバーは、pData NULL に設定し、DataSize パラメーターを 0 に設定できます。 pData が NULL の場合、QueryGetData はクエリ操作の状態 (クエリ操作が完了したかどうかなど) を示すことができます。

DataSize

[out]pData パラメーターが指すクエリ データのサイズ (バイト単位)。 ユーザー モードのディスプレイ ドライバーは、dataSize を 0 に設定し、pData NULL に設定できます。 DataSize が 0 の場合、QueryGetData はクエリ操作の状態を示すことができます (リターン コードなど)。

unnamedParam5

フラグ [in]: D3D10_DDI_GET_DATA_FLAG フラグ。

戻り値

何一つ

備考

ドライバーは、pfnSetErrorCb コールバック関数を使用してエラー コードを設定できます。

Microsoft Direct3D ランタイムは、ユーザー モード ディスプレイ ドライバーの QueryEnd 関数を呼び出してクエリ操作を "発行済み" 状態に移行した後、クエリ操作 QueryGetData を呼び出して、クエリ操作がまだ "発行済み" 状態 (DXGI_DDI_ERR_WASSTILLDRAWING) であるか、または "シグナル状態" 状態 (S_OK) に遷移したかを判断できます。 クエリ操作が "シグナル状態" の場合、QueryGetData は、pData パラメーターでクエリ データを返すことができます。それ以外の場合、pData は変更されません。 ドライバーは、pfnSetErrorCb を呼び出して、クエリ操作の状態を示すことができます。

ランタイムは、SetPredication 関数の呼び出しによってD3D10_QUERY_MISCFLAG_PREDICATEHINTで作成された述語を使用して、QueryGetData を呼び出すことはできません。

クエリ操作が部分コマンド バッファーにまだ存在する作業を処理する場合、既定では、ドライバーは終了し、部分コマンド バッファーを送信する必要があります。 ただし、ランタイムが Flags パラメーターにD3D10_DDI_GET_DATA_DO_NOT_FLUSH フラグを指定した場合は、ドライバーを終了してバッファーを送信しないでください。 ランタイムが Flags パラメーターで D3D10_DDI_GET_DATA_DO_NOT_FLUSH フラグを渡し、クエリ操作が部分的なコマンド バッファーにまだ存在する作業を処理する場合、ドライバーは pfnSetErrorCb呼び出して、DXGI_DDI_ERR_WASSTILLDRAWINGエラー コードのみを設定できます。

ランタイムが QueryGetData 呼び出してクエリの完了を確認する場合、ドライバーは pfnSetErrorCb呼び出しでDXGI_DDI_ERR_WASSTILLDRAWINGを渡して、クエリがまだ完了していないことを示すことができます。 ドライバーは、pfnSetErrorCb への呼び出しでD3DDDIERR_DEVICEREMOVED渡すこともできます。 Direct3D ランタイムは、他のエラーが重大であると判断します。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
ターゲット プラットフォーム デスクトップ
ヘッダー d3d10umddi.h (D3d10umddi.h を含む)

関連項目

CheckCounter

D3D10DDI_DEVICEFUNCS

QueryEnd

SetPredication

pfnSetErrorCb