Win32 API 日本語リファレンス
ホームMedia.DirectShow.Tv › IDvbLinkageDescriptor

IDvbLinkageDescriptor

COM
IID1cdf8b31-994a-46fc-acfd-6a6be8934dd5継承元IUnknown自前メソッド開始 vtbl3

メソッド 8

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

vtbl 3 HRESULT GetTag(BYTE* pbVal)
pbValBYTE*outこの記述子のタグ値を受け取る出力ポインタ。
vtbl 4 HRESULT GetLength(BYTE* pbVal)
pbValBYTE*outこの記述子のデータ長(バイト数)を受け取る出力ポインタ。
vtbl 5 HRESULT GetTSId(WORD* pwVal)
pwValWORD*outリンク先のトランスポートストリームID(transport_stream_id)を受け取る出力ポインタ。
vtbl 6 HRESULT GetONId(WORD* pwVal)
pwValWORD*outリンク先の元ネットワークID(original_network_id)を受け取る出力ポインタ。
vtbl 7 HRESULT GetServiceId(WORD* pwVal)
pwValWORD*outリンク先のサービスID(service_id)を受け取る出力ポインタ。
vtbl 8 HRESULT GetLinkageType(BYTE* pbVal)
pbValBYTE*outリンク種別(linkage_type)を示す値を受け取る出力ポインタ。
vtbl 9 HRESULT GetPrivateDataLength(BYTE* pbVal)
pbValBYTE*out私用データのバイト長を受け取る出力ポインタ。
vtbl 10 HRESULT GetPrivateData(BYTE* pbLen, BYTE* pbData)
pbLenBYTE*inout私用データのバイト長を入出力するポインタ。
pbDataBYTE*out私用データ本体を書き込むバッファを受け取る出力ポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IDvbLinkageDescriptor "{1CDF8B31-994A-46FC-ACFD-6A6BE8934DD5}"
#usecom global IDvbLinkageDescriptor IID_IDvbLinkageDescriptor "{}"
#comfunc global IDvbLinkageDescriptor_GetTag                3 var
#comfunc global IDvbLinkageDescriptor_GetLength             4 var
#comfunc global IDvbLinkageDescriptor_GetTSId               5 var
#comfunc global IDvbLinkageDescriptor_GetONId               6 var
#comfunc global IDvbLinkageDescriptor_GetServiceId          7 var
#comfunc global IDvbLinkageDescriptor_GetLinkageType        8 var
#comfunc global IDvbLinkageDescriptor_GetPrivateDataLength  9 var
#comfunc global IDvbLinkageDescriptor_GetPrivateData        10 var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。