PFND3DDDI_QUERYADAPTERINFOCB コールバック関数 (d3dumddi.h)
pfnQueryAdapterInfoCb 関数は、グラフィックス アダプター情報を取得します。
構文
PFND3DDDI_QUERYADAPTERINFOCB Pfnd3dddiQueryadapterinfocb;
HRESULT Pfnd3dddiQueryadapterinfocb(
HANDLE hAdapter,
const D3DDDICB_QUERYADAPTERINFO *unnamedParam2
)
{...}
パラメーター
hAdapter
グラフィックス アダプター オブジェクトへのハンドル。
unnamedParam2
pData [in, out]
グラフィックス ハードウェアに関する情報を受け取る D3DDDICB_QUERYADAPTERINFO 構造体へのポインター。
戻り値
pfnQueryAdapterInfoCb は、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
S_OK | 情報が正常に取得されました。 |
E_INVALIDARG | パラメーターが検証され、正しくないと判断されました。 |
この関数は、他の HRESULT 値も返す場合があります。
注釈
Microsoft Direct3D ランタイムがユーザー モード ディスプレイ ドライバーの CreateDevice または CreateDevice(D3D10) 関数を呼び出してグラフィックス コンテキストを作成する前に、ユーザー モードディスプレイ ドライバーは pfnQueryAdapterInfoCb を呼び出してグラフィックス ハードウェアに関する情報を取得する必要があります。 この順序は、マルチモニター システムでは特に重要です。
pfnQueryAdapterInfoCb 呼び出しでは、ユーザー モードディスプレイ ドライバーは、ディスプレイ ミニポート ドライバーが構成データを入力するバッファーを送信します。 この構成データを受信すると、ランタイムがユーザー モードディスプレイ ドライバーの GetCaps および GetCaps (D3D10_2) 関数を呼び出すときに、ユーザー モード ディスプレイ ドライバーはその機能を正確に報告できます。 ランタイムは、その後、D3DDDI_DEVICEFUNCS、D3D10DDI_DEVICEFUNCS、またはD3D11DDI_DEVICEFUNCS構造体で指定されている他のユーザー モードディスプレイ ドライバー関数を呼び出すと、ユーザー モード ディスプレイ ドライバーは、ハードウェアで処理できるコマンド ストリームを生成できます。
例
次のコード例は、グラフィックス アダプター情報を取得する方法を示しています。
HRESULT hr;
// Query for GART segment support
D3DDDICB_QUERYADAPTERINFO ddiQueryAdapterInfo;
memset(&R200AdapterInfo, 0, sizeof(R200AdapterInfo));
ddiQueryAdapterInfo.pPrivateDriverData = &R200AdapterInfo;
ddiQueryAdapterInfo.PrivateDriverDataSize = sizeof(R200AdapterInfo);
hr = m_Callbacks.pfnQueryAdapterInfoCb(m_hAdapter, &ddiQueryAdapterInfo);
if (FAILED(hr)) {
return FALSE;
}
m_ulGartSupported = R200AdapterInfo.ulGartSupported;
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
対象プラットフォーム | デスクトップ |
Header | d3dumddi.h (D3dumddi.h を含む) |