Microsoft Windows CE 3.0  

CBaseInputPin::EndFlush

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

Informs the pin to end a flush operation and notifies the pin that it can start accepting data again.

HRESULT EndFlush(void);

Return Values

Returns an HRESULTvalue.

Remarks

This member function implements the IPin::EndFlushmethod. When this method is called, the pin is beginning to end a flush operation. Your derived class must override this member function, but should call this member function at the end of your implementation to clear m_bFlushingso that IMemInputPin::Receivecalls will succeed.

Before calling this base class implementation, your overriding member function should perform the following steps.

Ensure that your filter will not push any additional data. (To do this, synchronize with a thread, stop it pushing, and discard any queued data.)

Pass the EndFlushmethod downstream by calling the method on the downstream filter's input pin.

IPin::EndFlushis not logically part of the media stream. It can be optimized in the sense that if a pin has passed no data downstream before this method is called, there is no need to pass this notification on.

An example of an overriding implementation of this member function can be found in the CTransformInputPin::EndFlushmember function, which uses the CBaseOutputPin::DeliverEndFlushmember function to perform the last step.