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

IDXGIDecodeSwapChain

COM
IID2633066b-4514-4c7a-8fd8-12ea98059d18継承元IUnknown自前メソッド開始 vtbl3

メソッド 9

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

vtbl 3 HRESULT PresentBuffer(DWORD BufferToPresent, DWORD SyncInterval, DXGI_PRESENT Flags)
BufferToPresentDWORDin表示するバッファのインデックスを指定する。
SyncIntervalDWORDin垂直同期のフレーム待機数を指定する。0で即時表示となる。
FlagsDXGI_PRESENTin表示動作を制御するDXGI_PRESENTフラグを指定する。
vtbl 4 HRESULT SetSourceRect(RECT* pRect)
pRectRECT*inデコード画像から表示に用いるソース矩形RECTを指定する。
vtbl 5 HRESULT SetTargetRect(RECT* pRect)
pRectRECT*in表示先内で描画するターゲット矩形RECTを指定する。
vtbl 6 HRESULT SetDestSize(DWORD Width, DWORD Height)
WidthDWORDin表示先サーフェスの幅をピクセルで指定する。
HeightDWORDin表示先サーフェスの高さをピクセルで指定する。
vtbl 7 HRESULT GetSourceRect(RECT* pRect)
pRectRECT*out現在のソース矩形を受け取るRECT出力先である。
vtbl 8 HRESULT GetTargetRect(RECT* pRect)
pRectRECT*out現在のターゲット矩形を受け取るRECT出力先である。
vtbl 9 HRESULT GetDestSize(DWORD* pWidth, DWORD* pHeight)
pWidthDWORD*out現在の表示先サーフェスの幅を受け取るDWORD出力先である。
pHeightDWORD*out現在の表示先サーフェスの高さを受け取るDWORD出力先である。
vtbl 10 HRESULT SetColorSpace(DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS ColorSpace)
ColorSpaceDXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGSinデコードサーフェスのYCbCr色空間をDXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGSで指定する。
vtbl 11 DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS GetColorSpace()

HSP用 COM定義

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

出力引数:
#define global IID_IDXGIDecodeSwapChain "{2633066B-4514-4C7A-8FD8-12EA98059D18}"
#usecom global IDXGIDecodeSwapChain IID_IDXGIDecodeSwapChain "{}"
#comfunc global IDXGIDecodeSwapChain_PresentBuffer  3 int,int,int
#comfunc global IDXGIDecodeSwapChain_SetSourceRect  4 var
#comfunc global IDXGIDecodeSwapChain_SetTargetRect  5 var
#comfunc global IDXGIDecodeSwapChain_SetDestSize    6 int,int
#comfunc global IDXGIDecodeSwapChain_GetSourceRect  7 var
#comfunc global IDXGIDecodeSwapChain_GetTargetRect  8 var
#comfunc global IDXGIDecodeSwapChain_GetDestSize    9 var,var
#comfunc global IDXGIDecodeSwapChain_SetColorSpace  10 int
#comfunc global IDXGIDecodeSwapChain_GetColorSpace  11
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。