Clear the flag so we see if IAsyncReader is queried for Clear the flag so we see if IAsyncReader is queried for
This filter (CAsyncReader) supports IBaseFilter and IFileSourceFilter interfaces from the This filter (CAsyncReader) supports IBaseFilter and IFileSourceFilter interfaces from the
This is set every time we‘re asked to return an IAsyncReader This is set every time we're asked to return an IAsyncReader
sync-aligned request. just like a request/waitfornext pair. sync-aligned request. just like a request/waitfornext pair.
the end needs to be aligned, but may have been aligned the end needs to be aligned, but may have been aligned
issue the i/o if not overlapped, and block until i/o complete. issue the i/o if not overlapped, and block until i/o complete.
manage the list of requests. hold m_csLists and ensure manage the list of requests. hold m_csLists and ensure
perform a synchronous read request on this thread. perform a synchronous read request on this thread.
efinition of CAsyncFile object that performs file access. It provides efinition of CAsyncFile object that performs file access. It provides
now we are sure that all outstanding requests are on now we are sure that all outstanding requests are on
manage the list of requests. hold m_csLists and ensure// that the (manual reset) event hevList is s manage the list of requests. hold m_csLists and ensure// that the (manual reset) event hevList is set when things on
requested - may be ok if he aligned the end of file requested - may be ok if he aligned the end of file
Need to hold m_csFile while doing this (done in request object) Need to hold m_csFile while doing this (done in request object)
ready for async activity - call this before calling Request. ready for async activity - call this before calling Request.
issue the i/o if not overlapped, and block until i/o complete. issue the i/o if not overlapped, and block until i/o complete.