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 begin a flush operation.
HRESULT BeginFlush(void);
Return Values
Returns an HRESULTvalue.
Remarks
This member function implements the IPin::BeginFlushmethod. When this method is called, the pin is entering flush state. You must override this method in your derived class, but you should call this base class first in your implementation, because it sets m_bFlushingso that no more IMemInputPin::Receivecalls will succeed.
The overriding member function should then carry out the following steps.
Discard any queued data.
Free any pin blocked by the Receivemethod.
Pass the IPin::BeginFlushmethod to any downstream pins.
IPin::BeginFlushis not logically part of the media stream and 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::BeginFlushmember function, which uses the CBaseOutputPin::DeliverBeginFlushmember function to perform the last step.