ホーム › System.WinRT.Graphics.Direct2D › IGraphicsEffectD2D1Interop
IGraphicsEffectD2D1Interop
COMメソッド 6
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT GetEffectId(GUID* id)
| id | GUID* | out | このグラフィックスエフェクトに対応する Direct2D エフェクトの GUID を受け取るポインタである。 |
vtbl 4 HRESULT GetNamedPropertyMapping(LPWSTR name, DWORD* index, GRAPHICS_EFFECT_PROPERTY_MAPPING* mapping)
| name | LPWSTR | in | 解決するプロパティ名を指す NULL 終端ワイド文字列を指定する。 |
| index | DWORD* | out | 指定した名前に対応するプロパティのインデックスを受け取るポインタである。 |
| mapping | GRAPHICS_EFFECT_PROPERTY_MAPPING* | out | プロパティ値をどのように Direct2D プロパティへ写像するかを示すマッピング種別を受け取るポインタである。 |
| count | DWORD* | out | このエフェクトが公開するプロパティの数を受け取るポインタである。 |
| index | DWORD | in | 取得するプロパティのインデックスを指定する。 |
| value | IPropertyValue* | out | 指定したインデックスのプロパティ値を受け取る IPropertyValue インターフェイスへのポインタである。 |
| index | DWORD | in | 取得するソースのインデックスを指定する。 |
| source | IGraphicsEffectSource* | out | 指定したインデックスの入力ソースを表す IGraphicsEffectSource インターフェイスへのポインタである。 |
| count | DWORD* | 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 方式にも切替可。#define global IID_IGraphicsEffectD2D1Interop "{2FC57384-A068-44D7-A331-30982FCF7177}" #usecom global IGraphicsEffectD2D1Interop IID_IGraphicsEffectD2D1Interop "{}" #comfunc global IGraphicsEffectD2D1Interop_GetEffectId 3 sptr #comfunc global IGraphicsEffectD2D1Interop_GetNamedPropertyMapping 4 wstr,sptr,sptr #comfunc global IGraphicsEffectD2D1Interop_GetPropertyCount 5 sptr #comfunc global IGraphicsEffectD2D1Interop_GetProperty 6 int,sptr #comfunc global IGraphicsEffectD2D1Interop_GetSource 7 int,sptr #comfunc global IGraphicsEffectD2D1Interop_GetSourceCount 8 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。