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

ITuner

COM
IID28c52640-018a-11d3-9d8e-00c04f72d980継承元IUnknown自前メソッド開始 vtbl3

メソッド 10

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

vtbl 3 HRESULT get_TuningSpace(ITuningSpace** TuningSpace)
TuningSpaceITuningSpace**out現在設定されているチューニング空間ITuningSpaceを返す受け取りポインタ。
vtbl 4 HRESULT put_TuningSpace(ITuningSpace* TuningSpace)
TuningSpaceITuningSpace*in設定するチューニング空間ITuningSpaceへのポインタ。チューナーの動作範囲を定義する。
vtbl 5 HRESULT EnumTuningSpaces(IEnumTuningSpaces** ppEnum)
ppEnumIEnumTuningSpaces**out利用可能なチューニング空間を列挙するIEnumTuningSpacesを返す出力ポインタ。
vtbl 6 HRESULT get_TuneRequest(ITuneRequest** TuneRequest)
TuneRequestITuneRequest**out現在のチューン要求ITuneRequestを返す受け取りポインタ。未設定時はNULLを返し得る。
vtbl 7 HRESULT put_TuneRequest(ITuneRequest* TuneRequest)
TuneRequestITuneRequest*in設定するチューン要求ITuneRequestへのポインタ。チューニング対象を指定し選局を行う。
vtbl 8 HRESULT Validate(ITuneRequest* TuneRequest)
TuneRequestITuneRequest*in検証対象のチューン要求ITuneRequestへのポインタ。選局可能かを確認するが選局はしない。
vtbl 9 HRESULT get_PreferredComponentTypes(IComponentTypes** ComponentTypes)
ComponentTypesIComponentTypes**out優先するコンポーネント種別の一覧IComponentTypesを返す受け取りポインタ。
vtbl 10 HRESULT put_PreferredComponentTypes(IComponentTypes* ComponentTypes)
ComponentTypesIComponentTypes*in設定する優先コンポーネント種別一覧IComponentTypesへのポインタ。
vtbl 11 HRESULT get_SignalStrength(INT* Strength)
StrengthINT*out受信信号強度を返すINTの受け取りポインタ。-1で不明、-2で信号なし、0以上は強度値を表す。
vtbl 12 HRESULT TriggerSignalEvents(INT Interval)
IntervalINTin信号関連イベントを発火させる間隔をミリ秒で指定する。0で無効化する。

HSP用 COM定義

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

出力引数:
#define global IID_ITuner "{28C52640-018A-11D3-9D8E-00C04F72D980}"
#usecom global ITuner IID_ITuner "{}"
#comfunc global ITuner_get_TuningSpace              3 sptr
#comfunc global ITuner_put_TuningSpace              4 sptr
#comfunc global ITuner_EnumTuningSpaces             5 sptr
#comfunc global ITuner_get_TuneRequest              6 sptr
#comfunc global ITuner_put_TuneRequest              7 sptr
#comfunc global ITuner_Validate                     8 sptr
#comfunc global ITuner_get_PreferredComponentTypes  9 sptr
#comfunc global ITuner_put_PreferredComponentTypes  10 sptr
#comfunc global ITuner_get_SignalStrength           11 var
#comfunc global ITuner_TriggerSignalEvents          12 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。