AJA NTV2 SDK  17.6.0.2675
NTV2 SDK 17.6.0.2675
CBasePin Class Reference

#include <amfilter.h>

Inheritance diagram for CBasePin:
[legend]
Collaboration diagram for CBasePin:
[legend]

Public Member Functions

 CBasePin (__in_opt LPCTSTR pObjectName, __in CBaseFilter *pFilter, __in CCritSec *pLock, __inout HRESULT *phr, __in_opt LPCWSTR pName, PIN_DIRECTION dir)
 
virtual ~CBasePin ()
 
DECLARE_IUNKNOWN STDMETHODIMP NonDelegatingQueryInterface (REFIID riid, __deref_out void **ppv)
 
 STDMETHODIMP_ (ULONG) NonDelegatingRelease()
 
 STDMETHODIMP_ (ULONG) NonDelegatingAddRef()
 
STDMETHODIMP Connect (IPin *pReceivePin, __in_opt const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP ReceiveConnection (IPin *pConnector, const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP Disconnect ()
 
STDMETHODIMP ConnectedTo (__deref_out IPin **pPin)
 
STDMETHODIMP ConnectionMediaType (__out AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP QueryPinInfo (__out PIN_INFO *pInfo)
 
STDMETHODIMP QueryDirection (__out PIN_DIRECTION *pPinDir)
 
STDMETHODIMP QueryId (__deref_out LPWSTR *Id)
 
STDMETHODIMP QueryAccept (const AM_MEDIA_TYPE *pmt)
 
STDMETHODIMP EnumMediaTypes (__deref_out IEnumMediaTypes **ppEnum)
 
STDMETHODIMP QueryInternalConnections (__out_ecount_part(*nPin, *nPin) IPin **apPin, __inout 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 Active (void)
 
virtual HRESULT Inactive (void)
 
virtual HRESULT Run (REFERENCE_TIME tStart)
 
virtual HRESULT CheckMediaType (const CMediaType *) PURE
 
virtual HRESULT SetMediaType (const CMediaType *)
 
virtual HRESULT CheckConnect (IPin *)
 
virtual HRESULT BreakConnect ()
 
virtual HRESULT CompleteConnect (IPin *pReceivePin)
 
virtual HRESULT GetMediaType (int iPosition, __inout 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 (__in_opt LPCTSTR pName, __in_opt LPUNKNOWN pUnk)
 
virtual ~CUnknown ()
 
 CUnknown (__in_opt LPCTSTR Name, __in_opt LPUNKNOWN pUnk, __inout_opt HRESULT *phr)
 
LPUNKNOWN GetOwner () const
 
STDMETHODIMP NonDelegatingQueryInterface (REFIID, __deref_out void **)
 
 STDMETHODIMP_ (ULONG) NonDelegatingAddRef()
 
 STDMETHODIMP_ (ULONG) NonDelegatingRelease()
 
- Public Member Functions inherited from CBaseObject
 CBaseObject (__in_opt LPCTSTR pName)
 
 ~CBaseObject ()
 

Protected Member Functions

void DisplayPinInfo (IPin *pReceivePin)
 
void DisplayTypeInfo (IPin *pPin, const CMediaType *pmt)
 
HRESULT AttemptConnection (IPin *pReceivePin, const CMediaType *pmt)
 
HRESULT TryMediaTypes (IPin *pReceivePin, __in_opt const CMediaType *pmt, IEnumMediaTypes *pEnum)
 
HRESULT AgreeMediaType (IPin *pReceivePin, const CMediaType *pmt)
 
STDMETHODIMP DisconnectInternal ()
 

Protected Attributes

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 ()
 

Detailed Description

Definition at line 330 of file amfilter.h.

Constructor & Destructor Documentation

◆ CBasePin()

CBasePin::CBasePin ( __in_opt LPCTSTR  pObjectName,
__in CBaseFilter pFilter,
__in CCritSec pLock,
__inout HRESULT *  phr,
__in_opt LPCWSTR  pName,
PIN_DIRECTION  dir 
)

Definition at line 1481 of file amfilter.cpp.

◆ ~CBasePin()

CBasePin::~CBasePin ( )
virtual

Definition at line 1589 of file amfilter.cpp.

Member Function Documentation

◆ Active()

HRESULT CBasePin::Active ( void  )
virtual

◆ AgreeMediaType()

HRESULT CBasePin::AgreeMediaType ( IPin *  pReceivePin,
const CMediaType pmt 
)
protected

Definition at line 1925 of file amfilter.cpp.

◆ AttemptConnection()

HRESULT CBasePin::AttemptConnection ( IPin *  pReceivePin,
const CMediaType pmt 
)
protected

Definition at line 1755 of file amfilter.cpp.

◆ BreakConnect()

HRESULT CBasePin::BreakConnect ( )
virtual

◆ CanReconnectWhenActive()

bool CBasePin::CanReconnectWhenActive ( )
inline

Definition at line 559 of file amfilter.h.

◆ CheckConnect()

HRESULT CBasePin::CheckConnect ( IPin *  pPin)
virtual

Reimplemented in CBaseOutputPin, CTransformOutputPin, and CTransformInputPin.

Definition at line 2007 of file amfilter.cpp.

◆ CheckMediaType()

virtual HRESULT CBasePin::CheckMediaType ( const CMediaType )
virtual

◆ CompleteConnect()

HRESULT CBasePin::CompleteConnect ( IPin *  pReceivePin)
virtual

◆ Connect()

STDMETHODIMP CBasePin::Connect ( IPin *  pReceivePin,
__in_opt const AM_MEDIA_TYPE *  pmt 
)

Definition at line 1698 of file amfilter.cpp.

◆ ConnectedTo()

STDMETHODIMP CBasePin::ConnectedTo ( __deref_out IPin **  pPin)

Definition at line 2189 of file amfilter.cpp.

◆ ConnectionMediaType()

STDMETHODIMP CBasePin::ConnectionMediaType ( __out AM_MEDIA_TYPE *  pmt)

Definition at line 2213 of file amfilter.cpp.

◆ CurrentRate()

double CBasePin::CurrentRate ( )
inline

Definition at line 546 of file amfilter.h.

◆ CurrentStartTime()

REFERENCE_TIME CBasePin::CurrentStartTime ( )
inline

Definition at line 543 of file amfilter.h.

◆ CurrentStopTime()

REFERENCE_TIME CBasePin::CurrentStopTime ( )
inline

Definition at line 540 of file amfilter.h.

◆ Disconnect()

STDMETHODIMP CBasePin::Disconnect ( )

Definition at line 2137 of file amfilter.cpp.

◆ DisconnectInternal()

STDMETHODIMP CBasePin::DisconnectInternal ( )
protected

Definition at line 2150 of file amfilter.cpp.

◆ DisplayPinInfo()

void CBasePin::DisplayPinInfo ( IPin *  pReceivePin)
inlineprotected

Definition at line 362 of file amfilter.h.

◆ DisplayTypeInfo()

void CBasePin::DisplayTypeInfo ( IPin *  pPin,
const CMediaType pmt 
)
inlineprotected

Definition at line 363 of file amfilter.h.

◆ EndOfStream()

STDMETHODIMP CBasePin::EndOfStream ( void  )

Definition at line 2406 of file amfilter.cpp.

◆ EnumMediaTypes()

STDMETHODIMP CBasePin::EnumMediaTypes ( __deref_out IEnumMediaTypes **  ppEnum)

Definition at line 2315 of file amfilter.cpp.

◆ GetConnected()

IPin* CBasePin::GetConnected ( )
inline

Definition at line 501 of file amfilter.h.

◆ GetMediaType()

HRESULT CBasePin::GetMediaType ( int  iPosition,
__inout CMediaType pMediaType 
)
virtual

Reimplemented in CTransformOutputPin, and CSourceStream.

Definition at line 2340 of file amfilter.cpp.

◆ GetMediaTypeVersion()

LONG CBasePin::GetMediaTypeVersion ( )
virtual

Definition at line 2356 of file amfilter.cpp.

◆ Inactive()

HRESULT CBasePin::Inactive ( void  )
virtual

Reimplemented in CDynamicOutputPin, CBaseInputPin, CBaseOutputPin, CSourceStream, and CRendererInputPin.

Definition at line 2397 of file amfilter.cpp.

◆ IncrementTypeVersion()

void CBasePin::IncrementTypeVersion ( )

Definition at line 2364 of file amfilter.cpp.

◆ IsConnected()

BOOL CBasePin::IsConnected ( void  )
inline

Definition at line 499 of file amfilter.h.

◆ IsStopped()

BOOL CBasePin::IsStopped ( )
inline

Definition at line 504 of file amfilter.h.

◆ Name()

LPWSTR CBasePin::Name ( )
inline

Definition at line 551 of file amfilter.h.

◆ NewSegment()

STDMETHODIMP CBasePin::NewSegment ( REFERENCE_TIME  tStart,
REFERENCE_TIME  tStop,
double  dRate 
)

Definition at line 2437 of file amfilter.cpp.

◆ NonDelegatingQueryInterface()

STDMETHODIMP CBasePin::NonDelegatingQueryInterface ( REFIID  riid,
__deref_out void **  ppv 
)

Definition at line 1610 of file amfilter.cpp.

◆ Notify()

STDMETHODIMP CBasePin::Notify ( IBaseFilter *  pSender,
Quality  q 
)

Definition at line 2423 of file amfilter.cpp.

◆ QueryAccept()

STDMETHODIMP CBasePin::QueryAccept ( const AM_MEDIA_TYPE *  pmt)

Definition at line 2287 of file amfilter.cpp.

◆ QueryDirection()

STDMETHODIMP CBasePin::QueryDirection ( __out PIN_DIRECTION *  pPinDir)

Definition at line 2258 of file amfilter.cpp.

◆ QueryId()

STDMETHODIMP CBasePin::QueryId ( __deref_out LPWSTR *  Id)

Definition at line 2271 of file amfilter.cpp.

◆ QueryInternalConnections()

STDMETHODIMP CBasePin::QueryInternalConnections ( __out_ecount_part *, *nPin IPin **  apPin,
__inout ULONG nPin 
)
inline

Definition at line 468 of file amfilter.h.

◆ QueryPinInfo()

STDMETHODIMP CBasePin::QueryPinInfo ( __out PIN_INFO *  pInfo)

Definition at line 2234 of file amfilter.cpp.

◆ ReceiveConnection()

STDMETHODIMP CBasePin::ReceiveConnection ( IPin *  pConnector,
const AM_MEDIA_TYPE *  pmt 
)

Definition at line 2040 of file amfilter.cpp.

◆ Run()

HRESULT CBasePin::Run ( REFERENCE_TIME  tStart)
virtual

Reimplemented in CRenderedInputPin.

Definition at line 2385 of file amfilter.cpp.

◆ SetMediaType()

HRESULT CBasePin::SetMediaType ( const CMediaType pmt)
virtual

Reimplemented in CTransformOutputPin, CRendererInputPin, and CTransformInputPin.

Definition at line 1991 of file amfilter.cpp.

◆ SetReconnectWhenActive()

void CBasePin::SetReconnectWhenActive ( bool  bCanReconnect)
inline

Definition at line 554 of file amfilter.h.

◆ SetSink()

STDMETHODIMP CBasePin::SetSink ( IQualityControl *  piqc)

Definition at line 2413 of file amfilter.cpp.

◆ STDMETHODIMP_() [1/2]

CBasePin::STDMETHODIMP_ ( ULONG  )

◆ STDMETHODIMP_() [2/2]

CBasePin::STDMETHODIMP_ ( ULONG  )

◆ TryMediaTypes()

HRESULT CBasePin::TryMediaTypes ( IPin *  pReceivePin,
__in_opt const CMediaType pmt,
IEnumMediaTypes *  pEnum 
)
protected

Definition at line 1847 of file amfilter.cpp.

Member Data Documentation

◆ m_bCanReconnectWhenActive

bool CBasePin::m_bCanReconnectWhenActive
protected

Definition at line 340 of file amfilter.h.

◆ m_bRunTimeError

bool CBasePin::m_bRunTimeError
protected

Definition at line 339 of file amfilter.h.

◆ m_bTryMyTypesFirst

bool CBasePin::m_bTryMyTypesFirst
protected

Definition at line 341 of file amfilter.h.

◆ m_Connected

IPin* CBasePin::m_Connected
protected

Definition at line 336 of file amfilter.h.

◆ m_dir

PIN_DIRECTION CBasePin::m_dir
protected

Definition at line 337 of file amfilter.h.

◆ m_dRate

double CBasePin::m_dRate
protected

Definition at line 350 of file amfilter.h.

◆ m_mt

CMediaType CBasePin::m_mt
protected

Definition at line 346 of file amfilter.h.

◆ m_pFilter

CBaseFilter* CBasePin::m_pFilter
protected

Definition at line 343 of file amfilter.h.

◆ m_pLock

CCritSec* CBasePin::m_pLock
protected

Definition at line 338 of file amfilter.h.

◆ m_pName

WCHAR* CBasePin::m_pName
protected

Definition at line 335 of file amfilter.h.

◆ m_pQSink

IQualityControl* CBasePin::m_pQSink
protected

Definition at line 344 of file amfilter.h.

◆ m_tStart

CRefTime CBasePin::m_tStart
protected

Definition at line 348 of file amfilter.h.

◆ m_tStop

CRefTime CBasePin::m_tStop
protected

Definition at line 349 of file amfilter.h.

◆ m_TypeVersion

LONG CBasePin::m_TypeVersion
protected

Definition at line 345 of file amfilter.h.


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