Microsoft DirectX 8.0

IPinFlowControl インターフェイス

アクティブな出力ピンからデータ フローをブロックする。このインターフェイスは動的再接続可能な出力ピンによって公開される。このインターフェイスを使ってフィルタ グラフなしで動的再接続を開始する。詳細については、「動的グラフ作成」を参照すること。

フィルタ開発者へ : 動的な再接続をサポートするパーサー フィルタとキャプチャ フィルタでは、その出力ピン上でこのインターフェイスをサポートしなければならない。通常、その他のタイプのフィルタでは、このインターフェイスを実装する必要はない。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterfaceサポートされているインターフェイスへのポインタを取得する。
AddRef参照カウントをインクリメントする。
Release参照カウントをデクリメントする。
IPinFlowControl メソッド説明
Blockピンからのデータ フローをブロック、あるいはブロック解除する。

IPinFlowControl::Block

IPinFlowControl インターフェイス

ピンからのデータフローをブロック、あるいはブロック解除する。

構文

HRESULT Block(
    DWORD dwBlockFlags,
    HANDLE hEvent,
);

パラメータ

dwBlockFlags
[in] ピンをブロックするかブロック解除するかを示すフラグ。以下の値でなければならない :
  • ゼロ : ピンからのデータ フローをブロック解除する。
  • AM_PIN_FLOW_CONTROL_BLOCK: ピンからのデータ フローをブロックする。
hEvent
[in] イベント オブジェクトのハンドルまたは NULL。このパラメータが NULL でない場合、メソッドは非同期になり、即座に戻る。操作が完了すると、イベントが通知済になる。このパラメータが NULL の場合、メソッドは同期になり、ピンがブロックされるまで完了しない。dwBlockFlags がゼロなら、このパラメータは NULL でなければならない。

戻り値

HRESULT 値を返す。以下のいずれかの値。

S_FALSEピンは既にブロック解除されている。
S_OK成功。
VFW_E_PIN_ALREADY_BLOCKEDピンは他のスレッドによって既にブロックされている。
VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREADピンは呼び出しているスレッドによって既にブロックされている。

注意

このメソッドは同期も非同期も可能である :