DD_GETDRIVERSTATEDATA結構 (ddrawint.h)

DD_GETDRIVERSTATEDATA 結構描述驅動程式的狀態。

語法

typedef struct _DD_GETDRIVERSTATEDATA {
  DWORD   dwFlags;
  union {
    PDD_DIRECTDRAW_GLOBAL lpDD;
    DWORD_PTR             dwhContext;
  };
  LPDWORD lpdwStates;
  DWORD   dwLength;
  HRESULT ddRVal;
} *PDD_GETDRIVERSTATEDATA, DD_GETDRIVERSTATEDATA;

成員

dwFlags

指定要指出所要求資料的旗標集合。 此參數可以設定為下列其中一個旗標:

旗標 意義
D3DDEVINFOID_D3DTEXTUREMANAGER 要求 Direct3D 執行時間在 D3DDEVINFO_TEXTUREMANAGER 結構中執行的紋理管理資訊。
D3DDEVINFOID_TEXTUREMANAGER 要求驅動程式或 Direct3D 執行時間在D3DDEVINFO_TEXTUREMANAGER結構中執行的紋理管理資訊。
D3DDEVINFOID_TEXTURING 在D3DDEVINFO_TEXTURING結構中要求應用程式的紋理活動資訊。
D3DDEVINFOID_VCACHE
僅限 DirectX 8.1 版本
要求D3DDEVINFO_VCACHE結構中的頂點快取資訊。

lpDD

指向描述裝置 的DD_DIRECTDRAW_GLOBAL 結構。

dwhContext

指定要求資訊的內容識別碼。

lpdwStates

指向驅動程式要填入的 Direct3D 驅動程式狀態資料。 例如,如果在 dwFlags 成員中指定D3DDEVINFOID_VCACHE,驅動程式會將 lpdwStates 成員指向包含頂點快取資訊的D3DDEVINFO_VCACHE結構。

dwLength

指定驅動程式要填入的狀態資料長度,以位元組為單位。

ddRVal

指定驅動程式寫入 D3dGetDriverState 回呼傳回值的位置。 D3D_OK的傳回碼表示成功。 如需詳細資訊,請參閱 Direct3D 驅動程式回呼的傳回碼

備註

應用程式可以使用 IDirect3DDevice7::GetInfo 方法,並指定D3DDEVINFOID_D3DTEXTUREMANAGER、D3DDEVINFOID_TEXTUREMANAGER和D3DDEVINFOID_TEXTURING旗標來擷取文字資訊。 如需這個方法和這些旗標相關結構的詳細資訊,請參閱 DirectX SDK 檔。 然後,執行時間會將這些旗標傳遞至驅動程式。

僅限 DirectX 8.1 版本。Direct3D 執行時間會指定 dwFlags 成員中的D3DDEVINFOID_VCACHE旗標,以從 lpDD 成員指定的驅動程式擷取頂點快取資訊。 驅動程式會在D3DDEVINFO_VCACHE結構中指定這項資訊,並在 lpdwStates 成員傳回該資訊。

僅限 DirectX 9.0 和更新版本。 Direct3D 執行時間會使用對驅動程式的 D3dDrawPrimitives2 回呼,使用D3DDP2OP_CREATEQUERY和D3DDP2OP_ISSUEQUERY命令和D3DQUERYTYPE_VCACHE查詢類型,以非同步方式查詢驅動程式是否有頂點快取資訊。 如需詳細資訊,請參閱 D3DDEVINFO_VCACHE

注意 D3DDEVINFOID_VCACHE旗標定義于 d3dhal.h 中;可以在 dwFlags 中設定的其他旗標定義在 d3dtypes.h 中。
 

需求

   
標頭 ddrawint.h (包括 Winddi.h D3dhal.h、D3dtypes.h)

另請參閱

D3DDEVINFO_VCACHE

D3DDP2OP_CREATEQUERY

D3DDP2OP_ISSUEQUERY

D3dDrawPrimitives2

D3dGetDriverState

DD_DIRECTDRAW_GLOBAL