Win32 API 日本語リファレンス
ホームSystem.WinRT.Graphics.Direct2D › IGraphicsEffectD2D1Interop

IGraphicsEffectD2D1Interop

COM
IID2fc57384-a068-44d7-a331-30982fcf7177継承元IUnknown自前メソッド開始 vtbl3

メソッド 6

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

vtbl 3 HRESULT GetEffectId(GUID* id)
idGUID*outこのグラフィックスエフェクトに対応する Direct2D エフェクトの GUID を受け取るポインタである。
vtbl 4 HRESULT GetNamedPropertyMapping(LPWSTR name, DWORD* index, GRAPHICS_EFFECT_PROPERTY_MAPPING* mapping)
nameLPWSTRin解決するプロパティ名を指す NULL 終端ワイド文字列を指定する。
indexDWORD*out指定した名前に対応するプロパティのインデックスを受け取るポインタである。
mappingGRAPHICS_EFFECT_PROPERTY_MAPPING*outプロパティ値をどのように Direct2D プロパティへ写像するかを示すマッピング種別を受け取るポインタである。
vtbl 5 HRESULT GetPropertyCount(DWORD* count)
countDWORD*outこのエフェクトが公開するプロパティの数を受け取るポインタである。
vtbl 6 HRESULT GetProperty(DWORD index, IPropertyValue* value)
indexDWORDin取得するプロパティのインデックスを指定する。
valueIPropertyValue*out指定したインデックスのプロパティ値を受け取る IPropertyValue インターフェイスへのポインタである。
vtbl 7 HRESULT GetSource(DWORD index, IGraphicsEffectSource* source)
indexDWORDin取得するソースのインデックスを指定する。
sourceIGraphicsEffectSource*out指定したインデックスの入力ソースを表す IGraphicsEffectSource インターフェイスへのポインタである。
vtbl 8 HRESULT GetSourceCount(DWORD* count)
countDWORD*outこのエフェクトが持つ入力ソースの数を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IGraphicsEffectD2D1Interop "{2FC57384-A068-44D7-A331-30982FCF7177}"
#usecom global IGraphicsEffectD2D1Interop IID_IGraphicsEffectD2D1Interop "{}"
#comfunc global IGraphicsEffectD2D1Interop_GetEffectId              3 var
#comfunc global IGraphicsEffectD2D1Interop_GetNamedPropertyMapping  4 wstr,var,var
#comfunc global IGraphicsEffectD2D1Interop_GetPropertyCount         5 var
#comfunc global IGraphicsEffectD2D1Interop_GetProperty              6 int,var
#comfunc global IGraphicsEffectD2D1Interop_GetSource                7 int,var
#comfunc global IGraphicsEffectD2D1Interop_GetSourceCount           8 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。