CBasePin.CBasePin constructor

Constructor method.

Syntax


CBasePin(
   TCHAR         *pObjectName,
   CBaseFilter   *pFilter,
   CCritSec      *pLock,
   HRESULT       *phr,
   LPCWSTR       pName,
   PIN_DIRECTION dir
);

Parameters

pObjectName

String containing the debug name for the object. For more information, see CBaseObject.

pFilter

Pointer to the filter that created this pin.

pLock

Pointer to a CCritSec lock, used to serialize state changes. Can be the same critical section as the filter lock, CBaseFilter::m_pLock.

phr

Pointer to a variable that receives an HRESULT value indicating the success or failure of the method. Initialize the value to S_OK before creating the object. The value is changed only if an error occurs.

pName

Wide-character string containing the name of the pin. For more information, see CBasePin::QueryPinInfo.

dir

Member of the PIN_DIRECTION enumeration specifying the direction of the pin.

Remarks

The critical section specified by pLock serializes the pin's state, including its connection status, choice of allocator, media type, and the status of flush operations. Do not use this critical section to serialize streaming operations. For more information, see Data Flow in the Filter Graph.

A filter might create pins in its constructor method, so at this point the pFilter pointer might not refer to a valid object. Store the pointer, but do not dereference it while inside the pin's constructor.

Requirements

Header

Amfilter.h (include Streams.h)

Library

Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)

See also

CBasePin Class

 

 

Show: