ICaptureGraphBuilder2::FindPin
FindPin メソッドは、フィルタの特定のピンを取得するか、特定のピンが指定された条件に適合するかどうかを判別する。
構文
HRESULT FindPin(
IUnknown *pSource,
PIN_DIRECTION pindir,
const GUID *pCategory,
const GUID *pType,
BOOL fUnconnected,
int num,
IPin **ppPin
);
パラメータ
pSource
[in] フィルタのインターフェイスへのポインタまたはピンのインターフェイスへのポインタ。
pindir
[in] ピンの方向 (入力または出力) を指定する PIN_DIRECTION 列挙のメンバ。
pCategory
[in] ピン カテゴリを指定する、ピン プロパティ セットの AMPROPERTY_PIN_CATEGORY 構造体のメンバへのポインタ。すべてのカテゴリに適合させるには NULL を使う。
pType
[in] メディア タイプを指定するメジャー タイプ GUID へのポインタ。すべてのメディア タイプに適合させるには NULL を使う。
fUnconnected
[in] ピンの接続が外れている必要があるかどうかを指定するブール型の値。TRUE の場合、ピンの接続は外れている必要がある。FALSE の場合は、ピンが接続されていても、接続されていなくてもよい。
num
[in] 適合するピンのセットから、取得するピンのゼロから始まるインデックス値。pSource がフィルタへのポインタで、複数のピンが検索条件に適合する場合は、この引数で取得するピンを指定する。pSource がピンへのポインタである場合、この引数は無視される。
ppPin
[out] 適合するピンの IPin インターフェイスを受け取るポインタのアドレス。
戻り値
適合するピンが見つかった場合は S_OK、それ以外の場合は E_FAIL を返す。
注意
pSource がフィルタへのポインタである場合、メソッドは、そのフィルタ上で検索条件に適合する n 番目のピンを検索する。n は num 引数によって指定される。メソッドは、適合するピンを見つけると、ppPin 引数によってピンへのポインタを返す。
pSource がピンへのポインタである場合、メソッドは、そのピンが検索条件に適合するかどうかをテストする。ピンが条件に適合する場合、メソッドは S_OK を返し、ppPin 引数によってピンの IPin インターフェイスへのポインタを返す。それ以外の場合、メソッドは E_FAIL を返す。
いずれの場合も、メソッドが成功すると、ppPin 引数によって返される IPin インターフェイスに未処理の参照カウントが残る。使い終わった場合は、インターフェイスを必ず解放すること。
通常、アプリケーションがこのメソッドを使う必要はない。このメソッドは、ICaptureGraphBuilder2::RenderStream メソッドではフィルタ グラフを構築できないような、きわめて複雑なタスクを処理するために用意されている。このメソッドを使って目的のピンをキャプチャ フィルタから取得し、グラフの残りの部分を手動で作成する。
参照