D3DDDICB_QUERYRESIDENCY 構造体 (d3dumddi.h)

D3DDDICB_QUERYRESIDENCY構造体は、リソースまたは割り当ての一覧の所在地の状態を表します。

構文

typedef struct _D3DDDICB_QUERYRESIDENCY {
  [in]  HANDLE                 hResource;
  [in]  UINT                   NumAllocations;
  [in]  const D3DKMT_HANDLE    *HandleList;
  [out] D3DDDI_RESIDENCYSTATUS *pResidencyStatus;
} D3DDDICB_QUERYRESIDENCY;

メンバー

[in] hResource

所在地が照会されるリソースへのハンドル。 ユーザー モードのディスプレイ ドライバーが HandleList メンバーの配列を使用して常駐を照会する場合、 hResourceNULL に設定します。

hResourceNULL 以外の場合、リソースに属するすべての割り当てが照会され、結果は pResidencyStatus が指す配列の最初の要素で返されます。 リソースの常駐状態は、リソースに属するすべての割り当ての最低の常駐状態と等しくなります。

[in] NumAllocations

HandleList 配列内の割り当ての数。 ユーザー モードのディスプレイ ドライバーが hResource メンバーのハンドルを NULL 以外に設定する場合は、 NumAllocations を 0 に設定する必要があります。

[in] HandleList

割り当てに対するカーネル モード ハンドルを表すD3DKMT_HANDLEデータ型の配列。 Microsoft Direct3D ランタイムの pfnAllocateCb 関数は、これらのハンドルを返します。 したがって、ユーザー モードのディスプレイ ドライバーは、これらのハンドルを使用して常駐を照会します。

ユーザー モードのディスプレイ ドライバーが hResource メンバーのハンドルを NULL 以外に設定する場合は、 HandleListNULL に設定する必要があります。

[out] pResidencyStatus

D3DDDI_RESIDENCYSTATUS値の配列へのポインター。 hResource メンバーが NULL 以外の場合、配列には 1 つの要素が含まれており、リソースの常駐状態を示す次のいずれかの値を受け取ります。 hResourceNULL の場合、配列内の要素の数は NumAllocations メンバーによって指定され、各要素は次のいずれかの値を受け取り、HandleList で指定された配列内の対応する割り当ての常駐状態を示します。

Value 意味
D3DDDI_RESIDENCYSTATUS_RESIDENTINGPUMEMORY (1) リソースまたは割り当ての一覧は、GPU メモリに存在します。これは、最も高い所在地の状態です。
D3DDDI_RESIDENCYSTATUS_RESIDENTINSHAREDMEMORY (2) リソースまたは割り当ての一覧は、共有メモリに存在します。
D3DDDI_RESIDENCYSTATUS_NOTRESIDENT (3) 割り当てのリソースまたはリストは、所在地の状態が最も低い非居住者です。

要件

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

こちらもご覧ください

pfnQueryResidencyCb