ホーム › Media.DirectShow.Tv › IMSVidGraphSegment
IMSVidGraphSegment
COMメソッド 15
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| pInit | IUnknown** | out | セグメントの初期化オブジェクトのIUnknownポインタを受け取る出力。 |
| pInit | IUnknown* | in | セグメントの初期化に用いるIUnknownポインタ。 |
vtbl 6 HRESULT EnumFilters(IEnumFilters** pNewEnum)
| pNewEnum | IEnumFilters** | out | セグメント内フィルターを列挙するIEnumFiltersポインタを受け取る出力。 |
vtbl 7 HRESULT get_Container(IMSVidGraphSegmentContainer** ppCtl)
| ppCtl | IMSVidGraphSegmentContainer** | out | このセグメントを保持するコンテナのIMSVidGraphSegmentContainerポインタを受け取る出力。 |
vtbl 8 HRESULT put_Container(IMSVidGraphSegmentContainer* pCtl)
| pCtl | IMSVidGraphSegmentContainer* | in | このセグメントを所属させるコンテナのIMSVidGraphSegmentContainerポインタ。 |
vtbl 9 HRESULT get_Type(MSVidSegmentType* pType)
| pType | MSVidSegmentType* | out | セグメントの種別を受け取るMSVidSegmentType列挙値の出力。 |
vtbl 10 HRESULT get_Category(GUID* pGuid)
| pGuid | GUID* | out | セグメントのカテゴリを識別するGUIDを受け取る出力。 |
vtbl 11 HRESULT Build()
vtbl 12 HRESULT PostBuild()
vtbl 13 HRESULT PreRun()
vtbl 14 HRESULT PostRun()
vtbl 15 HRESULT PreStop()
vtbl 16 HRESULT PostStop()
| lEventCode | INT | in | 通知するイベントコード。INTで指定する。 |
| lEventParm1 | INT_PTR | in | イベントの第1パラメーター。INT_PTRで渡す。 |
| lEventParm2 | INT_PTR | in | イベントの第2パラメーター。INT_PTRで渡す。 |
vtbl 18 HRESULT Decompose()
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IMSVidGraphSegment "{238DEC54-ADEB-4005-A349-F772B9AFEBC4}" #usecom global IMSVidGraphSegment IID_IMSVidGraphSegment "{}" #comfunc global IMSVidGraphSegment_get_Init 4 sptr #comfunc global IMSVidGraphSegment_put_Init 5 sptr #comfunc global IMSVidGraphSegment_EnumFilters 6 sptr #comfunc global IMSVidGraphSegment_get_Container 7 sptr #comfunc global IMSVidGraphSegment_put_Container 8 sptr #comfunc global IMSVidGraphSegment_get_Type 9 var #comfunc global IMSVidGraphSegment_get_Category 10 var #comfunc global IMSVidGraphSegment_Build 11 #comfunc global IMSVidGraphSegment_PostBuild 12 #comfunc global IMSVidGraphSegment_PreRun 13 #comfunc global IMSVidGraphSegment_PostRun 14 #comfunc global IMSVidGraphSegment_PreStop 15 #comfunc global IMSVidGraphSegment_PostStop 16 #comfunc global IMSVidGraphSegment_OnEventNotify 17 int,sptr,sptr #comfunc global IMSVidGraphSegment_Decompose 18 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IMSVidGraphSegment "{238DEC54-ADEB-4005-A349-F772B9AFEBC4}" #usecom global IMSVidGraphSegment IID_IMSVidGraphSegment "{}" #comfunc global IMSVidGraphSegment_get_Init 4 sptr #comfunc global IMSVidGraphSegment_put_Init 5 sptr #comfunc global IMSVidGraphSegment_EnumFilters 6 sptr #comfunc global IMSVidGraphSegment_get_Container 7 sptr #comfunc global IMSVidGraphSegment_put_Container 8 sptr #comfunc global IMSVidGraphSegment_get_Type 9 sptr #comfunc global IMSVidGraphSegment_get_Category 10 sptr #comfunc global IMSVidGraphSegment_Build 11 #comfunc global IMSVidGraphSegment_PostBuild 12 #comfunc global IMSVidGraphSegment_PreRun 13 #comfunc global IMSVidGraphSegment_PostRun 14 #comfunc global IMSVidGraphSegment_PreStop 15 #comfunc global IMSVidGraphSegment_PostStop 16 #comfunc global IMSVidGraphSegment_OnEventNotify 17 int,sptr,sptr #comfunc global IMSVidGraphSegment_Decompose 18 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。