ホーム › Graphics.Dxgi › IDXGISwapChain1
IDXGISwapChain1
COMメソッド 11
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 18 HRESULT GetDesc1(DXGI_SWAP_CHAIN_DESC1* pDesc)
| pDesc | DXGI_SWAP_CHAIN_DESC1* | out | スワップチェーンの拡張記述情報を受け取るDXGI_SWAP_CHAIN_DESC1構造体である。 |
vtbl 19 HRESULT GetFullscreenDesc(DXGI_SWAP_CHAIN_FULLSCREEN_DESC* pDesc)
| pDesc | DXGI_SWAP_CHAIN_FULLSCREEN_DESC* | out | 全画面表示時の記述情報を受け取るDXGI_SWAP_CHAIN_FULLSCREEN_DESC構造体である。 |
| pHwnd | HWND* | out | スワップチェーンに関連付けられたウィンドウハンドル(HWND)を受け取る出力先である。 |
vtbl 21 HRESULT GetCoreWindow(GUID* refiid, void** ppUnk)
| refiid | GUID* | in | 取得するコアウィンドウインターフェイスのGUIDを指定する。 |
| ppUnk | void** | out | コアウィンドウインターフェイスを受け取る出力先(void**)である。 |
vtbl 22 HRESULT Present1(DWORD SyncInterval, DXGI_PRESENT PresentFlags, DXGI_PRESENT_PARAMETERS* pPresentParameters)
| SyncInterval | DWORD | in | 垂直同期のフレーム待機数を指定する。0で即時、1以上でVSync同期となる。 |
| PresentFlags | DXGI_PRESENT | in | 表示動作を制御するDXGI_PRESENTフラグを指定する。 |
| pPresentParameters | DXGI_PRESENT_PARAMETERS* | in | ダーティ矩形やスクロール情報を含むDXGI_PRESENT_PARAMETERS構造体を指定する。 |
vtbl 23 BOOL IsTemporaryMonoSupported()
vtbl 24 HRESULT GetRestrictToOutput(IDXGIOutput** ppRestrictToOutput)
| ppRestrictToOutput | IDXGIOutput** | out | 表示を制限している出力IDXGIOutputを受け取る出力先である。 |
| pColor | DXGI_RGBA* | in | スワップチェーンの背景色を指定するDXGI_RGBA構造体である。 |
| pColor | DXGI_RGBA* | out | 現在の背景色を受け取るDXGI_RGBA構造体である。 |
vtbl 27 HRESULT SetRotation(DXGI_MODE_ROTATION Rotation)
| Rotation | DXGI_MODE_ROTATION | in | スワップチェーンの回転方向をDXGI_MODE_ROTATIONで指定する。 |
vtbl 28 HRESULT GetRotation(DXGI_MODE_ROTATION* pRotation)
| pRotation | DXGI_MODE_ROTATION* | out | 現在の回転方向DXGI_MODE_ROTATIONを受け取る出力先である。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IDXGISwapChain1 "{790A45F7-0D42-4876-983A-0A55CFE6F4AA}" #usecom global IDXGISwapChain1 IID_IDXGISwapChain1 "{}" #comfunc global IDXGISwapChain1_GetDesc1 18 var #comfunc global IDXGISwapChain1_GetFullscreenDesc 19 var #comfunc global IDXGISwapChain1_GetHwnd 20 sptr #comfunc global IDXGISwapChain1_GetCoreWindow 21 var,sptr #comfunc global IDXGISwapChain1_Present1 22 int,int,var #comfunc global IDXGISwapChain1_IsTemporaryMonoSupported 23 #comfunc global IDXGISwapChain1_GetRestrictToOutput 24 sptr #comfunc global IDXGISwapChain1_SetBackgroundColor 25 var #comfunc global IDXGISwapChain1_GetBackgroundColor 26 var #comfunc global IDXGISwapChain1_SetRotation 27 int #comfunc global IDXGISwapChain1_GetRotation 28 var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IDXGISwapChain1 "{790A45F7-0D42-4876-983A-0A55CFE6F4AA}" #usecom global IDXGISwapChain1 IID_IDXGISwapChain1 "{}" #comfunc global IDXGISwapChain1_GetDesc1 18 sptr #comfunc global IDXGISwapChain1_GetFullscreenDesc 19 sptr #comfunc global IDXGISwapChain1_GetHwnd 20 sptr #comfunc global IDXGISwapChain1_GetCoreWindow 21 sptr,sptr #comfunc global IDXGISwapChain1_Present1 22 int,int,sptr #comfunc global IDXGISwapChain1_IsTemporaryMonoSupported 23 #comfunc global IDXGISwapChain1_GetRestrictToOutput 24 sptr #comfunc global IDXGISwapChain1_SetBackgroundColor 25 sptr #comfunc global IDXGISwapChain1_GetBackgroundColor 26 sptr #comfunc global IDXGISwapChain1_SetRotation 27 int #comfunc global IDXGISwapChain1_GetRotation 28 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。