|Microsoft DirectShow 9.0|
The IAsyncReader interface performs an asynchronous data request on a filter.
This interface is exposed by output pins that perform asynchronous read operations. The interface is used by the input pin on the downstream filter. Applications do not use this interface. The Async File Source filter exposes this interface on its output pin.
Filter developers: Implement this interface if your output pin delivers data in the form of a byte stream (MEDIATYPE_Stream) and supports the pull model. During the connection process, check whether the downstream pin queries for the IAsyncReader interface. If it does not, your pin should either fail the connection or establish some other transport . (If your pin derives from CBasePin, perform this check in the CBasePin::CheckConnect method.)
For more information about using this interface, see the following topics:
In addition to the methods inherited from IUnknown, the IAsyncReader interface exposes the following methods.
|BeginFlush||Causes all outstanding reads to return.|
|EndFlush||Ends the flushing operation.|
|Length||Retrieves the total length of the stream, and the currently available length.|
|RequestAllocator||Retrieves the actual allocator to be used.|
|Request||Queues a request for data.|
|SyncReadAligned||Performs an aligned synchronized read.|
|SyncRead||Performs a synchronized read.|
|WaitForNext||Blocks until the next sample is completed or the time-out occurs.|
Header: Declared in Strmif.h; include Dshow.h.
Library: Use Strmiids.lib.