次の方法で共有


PFND3DDDI_GETQUERYDATA コールバック関数 (d3dumddi.h)

GetQueryData 関数は、クエリに関する情報を取得します。

構文

PFND3DDDI_GETQUERYDATA Pfnd3dddiGetquerydata;

HRESULT Pfnd3dddiGetquerydata(
  HANDLE hDevice,
  const D3DDDIARG_GETQUERYDATA *unnamedParam2
)
{...}

パラメーター

hDevice

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

unnamedParam2

pData [in, out]

ドライバーから取得されたクエリに関する情報を含む D3DDDIARG_GETQUERYDATA構造体への ポインター。

戻り値

GetQueryData は、次のいずれかの値を返します。

リターン コード 説明
S_OK クエリ操作が完了し、クエリ結果を使用できます。
S_FALSE GetQueryData が正常に返されました。 ただし、クエリ操作は完了していないため、クエリ結果は使用できません。
E_OUTOFMEMORY GetQueryData は、完了するために必要なメモリを割り当てませんでした。

注釈

Microsoft Direct3D ランタイムは、ユーザー モード ディスプレイ ドライバーの IssueQuery 関数を呼び出した後、 いつでも GetQueryData 呼び出すことができます。 ユーザー モードのディスプレイ ドライバーは、現在のフェンス値を、ドライバーのプライベート クエリ構造に格納されている値に対してチェックして、クエリの問題が完了したかどうかを判断する必要があります。

クエリが完了した場合、ドライバーは S_OKを返す必要があります。それ以外の場合、ドライバーはS_FALSEを返す必要があります。

ドライバーが ランタイム処理された複数プロセッサの最適化 をサポートし、0x0000000B以上の DDI バージョンを公開している場合、ランタイムは再入可能な方法で GetQueryData を 呼び出します。 ドライバーは、ドライバーの OpenAdapter 関数の呼び出しで、D3D10DDIARG_OPENADAPTER構造体の DriverVersion メンバーの DDI バージョン値を返します。 ランタイムが GetQueryData を 再入可能な方法で呼び出すと、あるスレッドが GetQueryData 内で実行され、同じディスプレイ デバイスを参照する別のスレッドが別のユーザー モードディスプレイ ドライバー関数内で実行されます。

要件

要件
サポートされている最小のクライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
対象プラットフォーム デスクトップ
Header d3dumddi.h (D3dumddi.h を含む)

こちらもご覧ください

D3DDDIARG_GETQUERYDATA

D3DDDI_DEVICEFUNCS

IssueQuery