Win32 API 日本語リファレンス
ホームGraphics.Dxgi › IDXGIDevice

IDXGIDevice

COM
IID54ec77fa-1377-44e6-8c32-88fd5f44c84c継承元IDXGIObject自前メソッド開始 vtbl7

メソッド 5

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 7 HRESULT GetAdapter(IDXGIAdapter** pAdapter)
pAdapterIDXGIAdapter**outこのデバイスを作成したアダプタIDXGIAdapterを受け取る出力先である。
vtbl 8 HRESULT CreateSurface(DXGI_SURFACE_DESC* pDesc, DWORD NumSurfaces, DXGI_USAGE Usage, DXGI_SHARED_RESOURCE* pSharedResource, IDXGISurface** ppSurface)
pDescDXGI_SURFACE_DESC*in作成するサーフェスの記述DXGI_SURFACE_DESCを指定する。
NumSurfacesDWORDin作成するサーフェスの数を指定する。
UsageDXGI_USAGEinサーフェスの使用方法を示すDXGI_USAGEフラグを指定する。
pSharedResourceDXGI_SHARED_RESOURCE*inoptional共有リソースの情報DXGI_SHARED_RESOURCEを指定する。NULL可。
ppSurfaceIDXGISurface**out作成されたIDXGISurface(配列)を受け取る出力先である。
vtbl 9 HRESULT QueryResourceResidency(IUnknown** ppResources, DXGI_RESIDENCY* pResidencyStatus, DWORD NumResources)
ppResourcesIUnknown**in常駐状態を問い合わせるリソース(IUnknown)の配列を指定する。
pResidencyStatusDXGI_RESIDENCY*out各リソースの常駐状態DXGI_RESIDENCYを受け取る配列である。
NumResourcesDWORDin問い合わせるリソースの数を指定する。
vtbl 10 HRESULT SetGPUThreadPriority(INT Priority)
PriorityINTinGPUスレッドの優先度を指定する。-7〜+7の範囲のINT値である。
vtbl 11 HRESULT GetGPUThreadPriority(INT* pPriority)
pPriorityINT*out現在のGPUスレッド優先度を受け取るINT出力先である。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDXGIDevice "{54EC77FA-1377-44E6-8C32-88FD5F44C84C}"
#usecom global IDXGIDevice IID_IDXGIDevice "{}"
#comfunc global IDXGIDevice_GetAdapter              7 sptr
#comfunc global IDXGIDevice_CreateSurface           8 var,int,int,var,sptr
#comfunc global IDXGIDevice_QueryResourceResidency  9 sptr,var,int
#comfunc global IDXGIDevice_SetGPUThreadPriority    10 int
#comfunc global IDXGIDevice_GetGPUThreadPriority    11 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。