www.pudn.com > filterasfmuxer_2008_01_23.rar > CXRenderedPin.h


// 
// CXRenderedPin.h 
// 
/** 
 ** Copyright (C) 2005 EnjoyView Inc., all rights reserved. 
 **           Your View, Our Passion. Just Enjoy It! 
 ** 
 **            http://spaces.msn.com/members/jemylu 
 ** 
 **/ 
 
/*************************************************************************/ 
 
#ifndef __H_CXRenderedPin__ 
#define __H_CXRenderedPin__ 
 
class CXRenderedPin : public CRenderedInputPin 
{ 
	friend class CFilterASFMuxer; 
 
public: 
	CXRenderedPin(CFilterASFMuxer *pFilter, HRESULT *phr,  
		LPCWSTR pPinName, TCHAR *pObjectName); 
	virtual ~CXRenderedPin(); 
	 
	// Do something with this media sample 
    STDMETHODIMP Receive(IMediaSample *pSample); 
    STDMETHODIMP EndOfStream(void); 
	STDMETHODIMP BeginFlush(void); 
    STDMETHODIMP EndFlush(void); 
	STDMETHODIMP ReceiveCanBlock(void); 
	// Notify of Run() from filter 
	virtual HRESULT Run(REFERENCE_TIME tStart);	 
 
	BOOL IsEOSReceived(void); 
	HRESULT AfterCompleteHandling(void); 
	virtual HRESULT ReceiveXSample(IMediaSample * pSample); 
 
    CMediaType& CurrentMediaType(void) { return m_mt; }; 
 
protected: 
	CFilterASFMuxer *	mFilter; 
	CCritSec			mSyncRecv;	 
}; 
 
#endif // __H_CXRenderedPin__