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

IAMTuner

COM
IID211a8761-03ac-11d1-8d13-00aa00bd8339継承元IUnknown自前メソッド開始 vtbl3

メソッド 15

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

vtbl 3 HRESULT put_Channel(INT lChannel, INT lVideoSubChannel, INT lAudioSubChannel)
lChannelINTin選局するチャンネル番号を指定する。
lVideoSubChannelINTin映像のサブチャンネル。AMTUNER_SUBCHAN_DEFAULTで既定値を使う。
lAudioSubChannelINTin音声のサブチャンネル。AMTUNER_SUBCHAN_DEFAULTで既定値を使う。
vtbl 4 HRESULT get_Channel(INT* plChannel, INT* plVideoSubChannel, INT* plAudioSubChannel)
plChannelINT*out現在のチャンネル番号を受け取る出力ポインタ。
plVideoSubChannelINT*out現在の映像サブチャンネルを受け取る出力ポインタ。
plAudioSubChannelINT*out現在の音声サブチャンネルを受け取る出力ポインタ。
vtbl 5 HRESULT ChannelMinMax(INT* lChannelMin, INT* lChannelMax)
lChannelMinINT*out選局可能な最小チャンネル番号を受け取る出力ポインタ。
lChannelMaxINT*out選局可能な最大チャンネル番号を受け取る出力ポインタ。
vtbl 6 HRESULT put_CountryCode(INT lCountryCode)
lCountryCodeINTin周波数テーブルを決める国番号(国際電話番号コード)を指定する。
vtbl 7 HRESULT get_CountryCode(INT* plCountryCode)
plCountryCodeINT*out現在の国番号を受け取る出力ポインタ。
vtbl 8 HRESULT put_TuningSpace(INT lTuningSpace)
lTuningSpaceINTin使用するチューニングスペース(放送方式区分)のインデックスを指定する。
vtbl 9 HRESULT get_TuningSpace(INT* plTuningSpace)
plTuningSpaceINT*out現在のチューニングスペースのインデックスを受け取る出力ポインタ。
vtbl 10 HRESULT Logon(HANDLE hCurrentUser)
hCurrentUserHANDLEin現在ログオン中ユーザを表すハンドル。ユーザ固有設定の読み込みに使う。
vtbl 11 HRESULT Logout()
vtbl 12 HRESULT SignalPresent(INT* plSignalStrength)
plSignalStrengthINT*out信号の有無/強度をAMTunerSignalStrength列挙(NoSignal/SignalPresent等)で受け取る出力ポインタ。
vtbl 13 HRESULT put_Mode(AMTunerModeType lMode)
lModeAMTunerModeTypeinチューナの受信モードをAMTunerModeType列挙(TV/FMRadio/AMRadio/DSS等)で指定する。
vtbl 14 HRESULT get_Mode(AMTunerModeType* plMode)
plModeAMTunerModeType*out現在の受信モード(AMTunerModeType)を受け取る出力ポインタ。
vtbl 15 HRESULT GetAvailableModes(INT* plModes)
plModesINT*outサポートされる受信モードのビットマスク(AMTunerModeType論理和)を受け取る出力ポインタ。
vtbl 16 HRESULT RegisterNotificationCallBack(IAMTunerNotification* pNotify, INT lEvents)
pNotifyIAMTunerNotification*inイベント通知を受け取るIAMTunerNotificationコールバックへのポインタ。
lEventsINTin通知を受けるイベント種別のビットマスクを指定する。
vtbl 17 HRESULT UnRegisterNotificationCallBack(IAMTunerNotification* pNotify)
pNotifyIAMTunerNotification*in登録解除する通知コールバックへのポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IAMTuner "{211A8761-03AC-11D1-8D13-00AA00BD8339}"
#usecom global IAMTuner IID_IAMTuner "{}"
#comfunc global IAMTuner_put_Channel                     3 int,int,int
#comfunc global IAMTuner_get_Channel                     4 var,var,var
#comfunc global IAMTuner_ChannelMinMax                   5 var,var
#comfunc global IAMTuner_put_CountryCode                 6 int
#comfunc global IAMTuner_get_CountryCode                 7 var
#comfunc global IAMTuner_put_TuningSpace                 8 int
#comfunc global IAMTuner_get_TuningSpace                 9 var
#comfunc global IAMTuner_Logon                           10 sptr
#comfunc global IAMTuner_Logout                          11
#comfunc global IAMTuner_SignalPresent                   12 var
#comfunc global IAMTuner_put_Mode                        13 int
#comfunc global IAMTuner_get_Mode                        14 var
#comfunc global IAMTuner_GetAvailableModes               15 var
#comfunc global IAMTuner_RegisterNotificationCallBack    16 sptr,int
#comfunc global IAMTuner_UnRegisterNotificationCallBack  17 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。