My Project
Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
CDynamicOutputPin Class Reference
Inheritance diagram for CDynamicOutputPin:
CBaseOutputPin CBasePin CUnknown CBaseObject

Public Member Functions

 CDynamicOutputPin (TCHAR *pObjectName, CBaseFilter *pFilter, CCritSec *pLock, HRESULT *phr, LPCWSTR pName)
 
DECLARE_IUNKNOWN STDMETHODIMP NonDelegatingQueryInterface (REFIID riid, void **ppv)
 
STDMETHODIMP Disconnect (void)
 
STDMETHODIMP Block (DWORD dwBlockFlags, HANDLE hEvent)
 
void SetConfigInfo (IGraphConfig *pGraphConfig, HANDLE hStopEvent)
 
HRESULT DeliverBeginFlush (void)
 
HRESULT DeliverEndFlush (void)
 
HRESULT Inactive (void)
 
HRESULT Active (void)
 
virtual HRESULT CompleteConnect (IPin *pReceivePin)
 
virtual HRESULT StartUsingOutputPin (void)
 
virtual void StopUsingOutputPin (void)
 
virtual bool StreamingThreadUsingOutputPin (void)
 
HRESULT ChangeOutputFormat (const AM_MEDIA_TYPE *pmt, REFERENCE_TIME tSegmentStart, REFERENCE_TIME tSegmentStop, double dSegmentRate)
 
HRESULT ChangeMediaType (const CMediaType *pmt)
 
HRESULT DynamicReconnect (const CMediaType *pmt)
 
- Public Member Functions inherited from CBaseOutputPin
 CBaseOutputPin (TCHAR *pObjectName, CBaseFilter *pFilter, CCritSec *pLock, HRESULT *phr, LPCWSTR pName)
 
virtual HRESULT DecideAllocator (IMemInputPin *pPin, IMemAllocator **pAlloc)
 
virtual HRESULT DecideBufferSize (IMemAllocator *pAlloc, ALLOCATOR_PROPERTIES *ppropInputRequest) PURE
 
virtual HRESULT GetDeliveryBuffer (IMediaSample **ppSample, REFERENCE_TIME *pStartTime, REFERENCE_TIME *pEndTime, DWORD dwFlags)
 
virtual HRESULT Deliver (IMediaSample *)
 
virtual HRESULT InitAllocator (IMemAllocator **ppAlloc)
 
HRESULT CheckConnect (IPin *pPin)
 
HRESULT BreakConnect ()
 
STDMETHODIMP EndOfStream (void)
 
virtual HRESULT DeliverEndOfStream (void)
 
STDMETHODIMP BeginFlush (void)
 
STDMETHODIMP EndFlush (void)
 
virtual HRESULT DeliverNewSegment (REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate)
 
- Public Member Functions inherited from CBasePin
 CBasePin (TCHAR *pObjectName, CBaseFilter *pFilter, CCritSec *pLock, HRESULT *phr, LPCWSTR pName, PIN_DIRECTION dir)
 
DECLARE_IUNKNOWN STDMETHODIMP NonDelegatingQueryInterface (REFIID riid, void **ppv)
 
 STDMETHODIMP_ (ULONG) NonDelegatingRelease()
 
 STDMETHODIMP_ (ULONG) NonDelegatingAddRef()
 
STDMETHODIMP Connect (IPin *pReceivePin, const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP ReceiveConnection (IPin *pConnector, const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP Disconnect ()
 
STDMETHODIMP ConnectedTo (IPin **pPin)
 
STDMETHODIMP ConnectionMediaType (AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP QueryPinInfo (PIN_INFO *pInfo)
 
STDMETHODIMP QueryDirection (PIN_DIRECTION *pPinDir)
 
STDMETHODIMP QueryId (LPWSTR *Id)
 
STDMETHODIMP QueryAccept (const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP EnumMediaTypes (IEnumMediaTypes **ppEnum)
 
STDMETHODIMP QueryInternalConnections (IPin **apPin, ULONG *nPin)
 
STDMETHODIMP EndOfStream (void)
 
STDMETHODIMP NewSegment (REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate)
 
STDMETHODIMP Notify (IBaseFilter *pSender, Quality q)
 
STDMETHODIMP SetSink (IQualityControl *piqc)
 
BOOL IsConnected (void)
 
IPin * GetConnected ()
 
BOOL IsStopped ()
 
virtual LONG GetMediaTypeVersion ()
 
void IncrementTypeVersion ()
 
virtual HRESULT Run (REFERENCE_TIME tStart)
 
virtual HRESULT CheckMediaType (const CMediaType *) PURE
 
virtual HRESULT SetMediaType (const CMediaType *)
 
virtual HRESULT GetMediaType (int iPosition, CMediaType *pMediaType)
 
REFERENCE_TIME CurrentStopTime ()
 
REFERENCE_TIME CurrentStartTime ()
 
double CurrentRate ()
 
LPWSTR Name ()
 
void SetReconnectWhenActive (bool bCanReconnect)
 
bool CanReconnectWhenActive ()
 
- Public Member Functions inherited from CUnknown
 CUnknown (const TCHAR *pName, LPUNKNOWN pUnk)
 
 CUnknown (TCHAR *pName, LPUNKNOWN pUnk, HRESULT *phr)
 
LPUNKNOWN GetOwner () const
 
STDMETHODIMP NonDelegatingQueryInterface (REFIID, void **)
 
 STDMETHODIMP_ (ULONG) NonDelegatingAddRef()
 
 STDMETHODIMP_ (ULONG) NonDelegatingRelease()
 
- Public Member Functions inherited from CBaseObject
 CBaseObject (const TCHAR *pName)
 

Protected Types

enum  BLOCK_STATE { NOT_BLOCKED, PENDING, BLOCKED }
 

Protected Member Functions

HRESULT SynchronousBlockOutputPin (void)
 
HRESULT AsynchronousBlockOutputPin (HANDLE hNotifyCallerPinBlockedEvent)
 
HRESULT UnblockOutputPin (void)
 
void BlockOutputPin (void)
 
void ResetBlockState (void)
 
- Protected Member Functions inherited from CBasePin
void DisplayPinInfo (IPin *pReceivePin)
 
void DisplayTypeInfo (IPin *pPin, const CMediaType *pmt)
 
HRESULT AttemptConnection (IPin *pReceivePin, const CMediaType *pmt)
 
HRESULT TryMediaTypes (IPin *pReceivePin, const CMediaType *pmt, IEnumMediaTypes *pEnum)
 
HRESULT AgreeMediaType (IPin *pReceivePin, const CMediaType *pmt)
 
STDMETHODIMP DisconnectInternal ()
 

Static Protected Member Functions

static HRESULT WaitEvent (HANDLE hEvent)
 

Protected Attributes

CCritSec m_BlockStateLock
 
HANDLE m_hUnblockOutputPinEvent
 
HANDLE m_hNotifyCallerPinBlockedEvent
 
BLOCK_STATE m_BlockState
 
DWORD m_dwBlockCallerThreadID
 
DWORD m_dwNumOutstandingOutputPinUsers
 
HANDLE m_hStopEvent
 
IGraphConfig * m_pGraphConfig
 
BOOL m_bPinUsesReadOnlyAllocator
 
- Protected Attributes inherited from CBaseOutputPin
IMemAllocator * m_pAllocator
 
IMemInputPin * m_pInputPin
 
- Protected Attributes inherited from CBasePin
WCHAR * m_pName
 
IPin * m_Connected
 
PIN_DIRECTION m_dir
 
CCritSecm_pLock
 
bool m_bRunTimeError
 
bool m_bCanReconnectWhenActive
 
bool m_bTryMyTypesFirst
 
CBaseFilterm_pFilter
 
IQualityControl * m_pQSink
 
LONG m_TypeVersion
 
CMediaType m_mt
 
CRefTime m_tStart
 
CRefTime m_tStop
 
double m_dRate
 
- Protected Attributes inherited from CUnknown
volatile LONG m_cRef
 

Additional Inherited Members

- Static Public Member Functions inherited from CBaseObject
static LONG ObjectsActive ()
 

The documentation for this class was generated from the following file: