IPin::ReceiveConnection

ReceiveConnection メソッドは、他のピンからの接続を許可する。

アプリケーションからこのメソッドを呼び出さないこと。このメソッドは、他のフィルタがピン接続処理中に呼び出す。

構文

  HRESULT ReceiveConnection(
  IPin *pConnector,
  const AM_MEDIA_TYPE *pmt
);

パラメータ

pConnector

[in] 接続しているピンの IPin インターフェイスへのポインタ。

pmt

[in] 接続のメディア タイプを指定する AM_MEDIA_TYPE 構造体へのポインタ。

戻り値

HRESULT 値を返す。可能な値は次のとおりである。

説明
S_OK 成功。
E_POINTER NULL ポインタ引数。
VFW_E_ALREADY_CONNECTED ピンは既に接続されている。
VFW_E_NOT_STOPPED フィルタがアクティブな間は接続できない。
VFW_E_TYPE_NOT_ACCEPTED 指定したメディア タイプは受け入れられない。

注意

出力ピンが接続すると、その出力ピンは入力ピンに対してこのメソッドを呼び出す。入力ピンは、指定されたメディア タイプが受け入れ可能かどうかを検証する必要がある。所有するフィルタに固有のその他の接続要件もチェックする必要がある場合がある。接続に適していれば、入力ピンは S_OK を返し、次の処理も実行する必要がある。

  • IPin::ConnectionMediaType メソッド内でメディア タイプを格納し、同じタイプを返す。
  • IPin::ConnectedTo メソッド内で出力ピンの IPin インターフェイス (pConnector) を格納し、このポインタを返す。

接続に適していなければ、ピンはエラー コードを返す必要がある。

CBasePin クラスは、メディア タイプおよび IPin ポインタの格納を含むこのメソッドの基本的なフレームワークを実装する。

参照