IAsyncReader インターフェイス
IAsyncReader インターフェイスは、非同期読み取り処理を行う出力ピンによって公開される。インターフェイスは、ダウンストリーム フィルタの入力ピンが使う。アプリケーションがこのインターフェイスを使うことはない。
ファイル ソース (非同期) フィルタは、このインターフェイスをその出力ピンで公開する。
**フィルタ開発者 :**出力ピンがバイト ストリームの形式 (MEDIATYPE_Stream) でデータを送信し、プル モデルをサポートしている場合は、このインターフェイスを実装すること。接続プロセス中に、ダウンストリーム ピンが IAsyncReader インターフェイスを問い合わせるかどうかをチェックする。問い合わせない場合は、ピンは接続できないか、別の転送を確立する (ピンが CBasePin から派生している場合は、このチェックは CBasePin::CheckConnect メソッドで行うこと)。
このインターフェイスの使い方の詳細については、以下のトピックを参照すること。
IAsyncReader インターフェイスは、IUnknown から継承するメソッド以外に以下のメソッドも公開する。
メソッド | 説明 |
BeginFlush | すべての未処理の読み取りが返される。 |
EndFlush | フラッシング操作を完了する。 |
Length | ストリームのトータルの長さと現在利用可能な長さを取得する。 |
RequestAllocator | 実際に使われるアロケータを取得する。 |
Request | データ要求をキューに入れる。 |
SyncReadAligned | 位置合わせされた同期読み取りを実行する。 |
SyncRead | 同期読み取りを実行する。 |
WaitForNext | 次のサンプルが完了するか、またはタイムアウトが発生するまでブロックする。 |