Microsoft DirectX 8.0

IPinInfo インターフェイス

このインターフェイスは、ピンに関する情報の取得およびピンの接続を行う Automation 互換のメソッドを提供する。フィルタ グラフ マネージャがこのインターフェイスを公開する。

Microsoft® Visual Basic® アプリケーションでは、このインターフェイスを使用して、ピンに関する情報 (メディア タイプ、ピンの方向など) を取得できる。また、必要に応じて中間フィルタを使用してピンを接続することもできる。

C/C++ アプリケーションでは、このインターフェイスではなく、IGraphBuilder インターフェイスおよび IPin インターフェイスを使用すること。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterface サポートされているインターフェイスへのポインタを取得する。
AddRef 参照カウントをインクリメントする。
Release 参照カウントをデクリメントする。
IDispatch メソッド説明
GetTypeInfoCount このディスプインターフェイスに利用可能なタイプ情報があるかどうか判断する。
GetTypeInfo GetTypeInfoCount が成功した場合は、このディスプインターフェイスのタイプ情報を取得する。
GetIDsOfNames (引数を含む) プロパティおよびメソッドのテキスト名を対応する DISPID に変換する。
Invoke DISPID およびその他の必要なパラメータが指定された場合は、このディスプインターフェイスのメソッドを呼び出すか、またはプロパティにアクセスする。
IPinInfo メソッド説明
get_Pin IPin インターフェイスをサポートするピン オブジェクトを取得する。
get_ConnectedTo このピンが接続している対応するピンに対応する IPinInfo オブジェクトを取得する。
get_ConnectionMediaType この接続のメディア タイプを取得する。
get_FilterInfo このピンが属するフィルタに対応する IFilterInfo オブジェクトを取得する。
get_Name このピンの名前を取得する。
get_Direction ピンの方向を取得する。
get_PinID ピン識別子を取得する。
get_MediaTypes このピンがサポートする優先メディア タイプへのアクセスを提供する IAMCollection インターフェイスを取得する。
Connect 指定されたピンに接続する。
ConnectDirect 指定されたピンに直接接続する。
ConnectWithType 指定されたメディア タイプだけを使用して、指定されたピンに直接接続する。
Disconnect このピンを接続先のピンから切断する。
Render ピンのメディア タイプをレンダリングできるフィルタ グラフを作成する。

IPinInfo::Connect

IPinInfo インターフェイス

必要に応じてほかの変換フィルタを使用し、指定されたピンに接続する。

構文

HRESULT Connect(
    IUnknown *pPin
    );

パラメータ

pPin
[in] 接続先のピンへのポインタ。

戻り値

HRESULT 値を返す。

注意

pPin パラメータは、IPin でも IPinInfo オブジェクトでもよい。このメソッドは、このピンと指定されたピンとの接続を有効にするために必要な変換フィルタを、グラフ ビルダを使用して判断する。たとえば、ピンがソース フィルタの出力ピンであり、要求された接続先がビデオ レンダラ入力ピンである場合は、有効なフィルタ グラフにするために、適切なメディア タイプを持つデコンプレッサ フィルタを挿入する。このメソッドは、本来、IGraphBuilder::Connect メソッドに対応する Automation ラッパーである。

IPinInfo::ConnectDirect

IPinInfo インターフェイス

中間フィルタを使用せずに、所定のピンに直接接続する。

構文

HRESULT ConnectDirect(
  IUnknown *pPin
  );

パラメータ

pPin
[in] 直接接続する接続先のピンへのポインタ。

戻り値

HRESULT 値を返す。

注意

接続するピンの間で共通のメディア タイプを決められない場合、このメソッドはエラーを返す。このメソッドは、本来、IFilterGraph::ConnectDirect メソッドに対応する Automation ラッパーである。

IPinInfo::ConnectWithType

IPinInfo インターフェイス

指定されたメディア タイプを使用して、指定されたピンに直接接続する。

構文

HRESULT ConnectWithType(
  IUnknown *pPin,
  IDispatch *pMediaType
  );

パラメータ

pPin
[in] 接続先のピンへのポインタ。pPin は、IPin インターフェイスおよび IPinInfo インターフェイスのどちらかをサポートするオブジェクトでなければならない。
pMediaType
[in] ピンの接続に使用するメディア タイプへのポインタ。pMediaType は、IMediaTypeInfo インターフェイスをサポートする必要がある。

戻り値

HRESULT 値を返す。

注意

このメソッドを使用すると、接続のメディア タイプを接続時にピン側で決めるのではなく、呼び出し元で決定することができる。

IPinInfo::Disconnect

IPinInfo インターフェイス

このピンを接続先のピンから切断する。

構文

HRESULT Disconnect(void);

戻り値

HRESULT 値を返す。

注意

このメソッドは、両方のピンの IPin::Disconnect を呼び出す。

IPinInfo::get_ConnectedTo

IPinInfo インターフェイス

接続先のピンに対応する IPinInfo インターフェイスを取得する。

構文

HRESULT get_ConnectedTo(
  IDispatch **ppUnk
  );

パラメータ

ppUnk
[out, retval] ピンに対応する IPinInfo インターフェイスへのポインタのアドレス。

戻り値

HRESULT 値を返す。

注意

このメソッドは、本来、IPin::ConnectedTo メソッドに対応する Automation ラッパーである。

IPinInfo::get_ConnectionMediaType

IPinInfo インターフェイス

コネクション情報が格納された IMediaTypeInfo オブジェクトを取得する。

構文

HRESULT get_ConnectionMediaType(
  IDispatch **ppUnk
  );

パラメータ

ppUnk
[out, retval] 返された IMediaTypeInfo インターフェイスへのポインタのアドレス。

戻り値

HRESULT 値を返す。

注意

このメソッドは、本来、IPin::ConnectionMediaType メソッドに対応する Automation ラッパーである。

IPinInfo::get_Direction

IPinInfo インターフェイス

ピンの方向を取得する。

構文

HRESULT get_Direction(
  LONG *ppDirection
  );

パラメータ

ppDirection
[out, retval] ピンの方向へのポインタのアドレス。ピンの方向は、PINDIR_INPUT と PINDIR_OUTPUT のどちらかである。

戻り値

HRESULT 値を返す。

IPinInfo::get_FilterInfo

IPinInfo インターフェイス

このピンが属するフィルタに対応する IFilterInfo インターフェイスを取得する。

構文

HRESULT get_FilterInfo(
  IDispatch **ppUnk
  );

パラメータ

ppUnk
[out, retval] 取得された IFilterInfo インターフェイスへのポインタのアドレス。

戻り値

HRESULT 値を返す。

IPinInfo::get_MediaTypes

IPinInfo インターフェイス

このピンがサポートする優先メディア タイプへのアクセスを提供する IAMCollection インターフェイスを取得する。

構文

HRESULT get_MediaTypes(
  IDispatch **ppUnk
  );

パラメータ

ppUnk
[out, retval] IMediaTypeInfo オブジェクトとして優先されるメディア タイプが格納された IAMCollection インターフェイスへのポインタのアドレス。

戻り値

HRESULT 値を返す。

注意

このメソッドは、本来、IPin::EnumMediaTypes メソッドに対応する Automation ラッパーである。

IPinInfo::get_Name

IPinInfo インターフェイス

このピンの名前を取得する。

構文

HRESULT get_Name(
  BSTR **ppUnk
  );

パラメータ

ppUnk
[out, retval] ピンの名前へのポインタのアドレス。

戻り値

HRESULT 値を返す。

IPinInfo::get_Pin

IPinInfo インターフェイス

IPin インターフェイスをサポートするピン オブジェクトを取得する。

構文

HRESULT get_Pin(
  IUnknown **ppUnk
  );

パラメータ

ppUnk
[out, retval] IPin をサポートする IUnknown オブジェクトへのポインタのアドレス。

戻り値

HRESULT 値を返す。

注意

IPinInfo インターフェイスは、ラッパー COM オブジェクトで実装される。したがって、このオブジェクトの IPin を照会する QueryInterface は失敗する。IPinInfo::get_Pin メソッドが返すピン オブジェクトで、IPin インターフェイスがサポートされる。

IPinInfo::get_PinID

IPinInfo インターフェイス

ピンの識別子を取得する。

構文

HRESULT get_PinID(
  BSTR *strPinID
  );

パラメータ

strPinID
[out, retval] ピンの識別子文字列へのポインタ。

戻り値

HRESULT 値を返す。

注意

strPinID に返された文字列は、IFilterInfo::FindPin に渡すことができる。この識別子は、ピンの名前と等しいことが多いが、異なる場合もある。2 次記憶に書き込み、後からフィルタの別のインスタンスに含まれる同じピンの識別に使用することができる。

IPinInfo::Render

IPinInfo インターフェイス

このピンの出力をレンダリングするために、必要に応じて変換フィルタおよびレンダリング フィルタを使用して、フィルタどうしを接続する。

構文

HRESULT Render(void);

戻り値

HRESULT 値を返す。

注意

このメソッドは、本来、IGraphBuilder::Render メソッドに対応する Automation ラッパーである。また、このメソッドは出力ピンでのみ有効である。