Microsoft DirectX 8.0

IFilterInfo インターフェイス

IFilterInfo インターフェイスは、フィルタに関する情報を管理し、フィルタと、フィルタに属するピンを表す IPinInfo インターフェイスへのアクセスを提供する。基本的には、Automation を通じてアクセス可能な IBaseFilter インターフェイスと同じものである。このインターフェイスは、Microsoft® Visual Basic® アプリケーションから IBaseFilter メソッドにアクセスするとき、IBaseFilter インターフェイス自体にある Automation のオーバーヘッドを避けるために作成された。

このインターフェイスは、フィルタ グラフ マネージャで実装され、Microsoft Visual Basic などの Automation クライアント アプリケーションから使用される。

アプリケーションでは、このインターフェイスを使用して、フィルタに関する情報を取得し、フィルタの個々のピン オブジェクト、またはフィルタに属するすべてのピン オブジェクトの集合を取得する。フィルタ グラフにフィルタを追加し、ピンどうしを接続するときには、このインターフェイスを使用できる。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterface サポートされているインターフェイスへのポインタを取得する。
AddRef 参照カウントをインクリメントする。
Release 参照カウントをデクリメントする。
IDispatch メソッド説明
GetTypeInfoCount このディスプインターフェイスに利用可能なタイプ情報があるかどうか判断する。
GetTypeInfo GetTypeInfoCount が成功した場合は、このディスプインターフェイスのタイプ情報を取得する。
GetIDsOfNames (引数を含む) プロパティおよびメソッドのテキスト名を対応する DISPID に変換する。
Invoke DISPID およびその他の必要なパラメータが指定された場合は、このディスプインターフェイスのメソッドを呼び出すか、またはプロパティにアクセスする。
IFilterInfo メソッド説明
FindPin ピンを探し、IPinInfo インターフェイスを返す。
get_Name フィルタ名を取得する。
get_VendorInfo 指定されたフィルタに関するオプション情報が格納されたベンダー提供の文字列を取得する。
get_Filter フィルタに対応する IBaseFilter インターフェイスを取得する。
get_Pins IAMCollection インターフェイスを取得する。このインターフェイスは、このフィルタに対応する IPinInfo インターフェイスへのアクセスを提供する。
get_IsFileSource フィルタがファイル ソース フィルタかどうかを判断する。
get_Filename ソース フィルタに関連付けられたファイル名を取得する。
put_Filename メディア ソースが格納されたファイルの名前を設定する。

IFilterInfo::FindPin

IFilterInfo インターフェイス

指定された識別子のピンを探し、IPinInfo インターフェイスを返す。

構文

HRESULT FindPin(
    BSTR strPinID,
    IDispatch **ppUnk
);

パラメータ

strPinID
[in] ピン識別子の文字列。
ppUnk
[out] IPinInfo インターフェイスへのポインタのアドレス。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは IBaseFilter::FindPin メソッドに対応するものである。このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::get_Filename

IFilterInfo インターフェイス

ソース フィルタに関連付けられたファイル名を取得する。

構文

HRESULT get_Filename(
    BSTR *pstrFilename
);

パラメータ

pstrFilename
[out, retval] ソース メディアが格納されたファイルの名前へのポインタ。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::get_Filter

IFilterInfo インターフェイス

フィルタの IBaseFilter インターフェイスを取得する。

構文

HRESULT get_Filter(
    IUnknown **ppUnk
);

パラメータ

ppUnk
[out, retval] IFilterInfo が表すフィルタの IBaseFilter インターフェイスへのポインタのアドレス。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

IFilterInfo を実装するオブジェクトは、ラッパーであり、フィルタのような COM オブジェクトではない。したがって、IBaseFilter を照会するために IFilterInfo::QueryInterface を呼び出すと失敗する。アプリケーションからフィルタ オブジェクト自体を取得するには、IFilterInfo::get_Filter メソッドを使用する。このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::get_IsFileSource

IFilterInfo インターフェイス

フィルタがファイル ソース フィルタかどうかを判断する。

構文

HRESULT get_IsFileSource(
    LONG *pbIsSource
);

パラメータ

pbIsSource
[out, retval] フィルタがファイル ソース フィルタかどうかを示す返された値へのポインタ。ファイル ソース フィルタの場合は、OATRUE を返す。それ以外の場合は、OAFALSE を返す。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::get_Name

IFilterInfo インターフェイス

フィルタ名を取得する。

構文

HRESULT get_Name(
    BSTR *strName
);

パラメータ

strName
[out, retval] フィルタ名へのポインタ。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::get_Pins

IFilterInfo インターフェイス

IAMCollection インターフェイスを取得する。このインターフェイスは、このフィルタに属するピンに対応する IPinInfo インターフェイスへのアクセスを提供する。

構文

HRESULT get_Pins(
    IDispatch **ppUnk
);

パラメータ

ppUnk
[out, retval] IAMCollection インターフェイスへのポインタのアドレス。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションでの使用は想定されていない。Visual Basic アプリケーションでは、このメソッドが返す IAMCollection オブジェクトに含まれる IPinInfo インターフェイスを、For Each ...Next という構文を使用して列挙できる。

IFilterInfo::get_VendorInfo

IFilterInfo インターフェイス

指定されたフィルタに関するオプション情報が格納されたベンダー提供の文字列を取得する。

構文

HRESULT get_VendorInfo(
    BSTR *strVendorInfo
);

パラメータ

strVendorInfo
[out, retval] ベンダー提供の情報が格納された文字列へのポインタ。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。

IFilterInfo::put_Filename

IFilterInfo インターフェイス

メディア ソースが格納されたファイルの名前を設定する。

構文

HRESULT put_Filename(
    BSTR strFilename
);

パラメータ

strFilename
[in] ソース フィルタが読み取るファイルの名前。

戻り値

インターフェイスの実装に応じた HRESULT 値を返す。通常の戻り値は次のいずれかである。
E_FAIL失敗。
E_INVALIDARG無効な引数。
E_NOTIMPLメソッドがサポートされていない。
E_POINTERNull ポインタ引数。
S_OK成功。

注意

このメソッドは、Automation クライアントによる使用のために公開される。パフォーマンスの制限のため、C または C++ アプリケーションによる使用は想定されていない。