CBaseInputPin Class
Microsoft DirectShow 9.0 |
CBaseInputPin Class
The CBaseInputPin class is an abstract base class for implementing input pins. This class adds support for the IMemInputPin interface, in addition to the IPin interface support provided by CBasePin.
To use this class, derive a new class and override at least the following methods:
- CBaseInputPin::BeginFlush
- CBaseInputPin::EndFlush
- CBaseInputPin::Receive
- CBasePin::CheckMediaType
- CBasePin::GetMediaType
Depending on the function of the pin, you might need to override additional methods in CBaseInputPin or CBasePin.
Requirements
Header: Declared in Amfilter.h; include Streams.h.
Library: Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).
Protected Member Variables | |
m_pAllocator | Pointer to the memory allocator. |
m_bReadOnly | Flag that indicates whether the allocator produces read-only media samples. |
m_bFlushing | Flag that indicates whether the pin is currently flushing. |
m_SampleProps | Properties of the most recent sample. |
Public Methods | |
CBaseInputPin | Constructor method. |
~CBaseInputPin | Destructor method. |
BreakConnect | Releases the pin from a connection. |
IsReadOnly | Queries whether the allocator uses read-only media samples. |
IsFlushing | Queries whether the filter is currently flushing. |
CheckStreaming | Determines whether the pin can accept samples. Virtual. |
PassNotify | Passes a quality-control message to the appropriate object. |
Inactive | Notifies the pin that the filter is no longer active. Virtual. |
SampleProps | Retrieves the properties of the most recent sample. |
IPin Methods | |
BeginFlush | Begins a flush operation. |
EndFlush | Ends a flush operation. |
IMemInputPin Methods | |
GetAllocator | Retrieves the memory allocator proposed by this pin. |
NotifyAllocator | Specifies an allocator for the connection. |
GetAllocatorRequirements | Retrieves the allocator properties requested by the input pin. |
Receive | Receives the next media sample in the stream. |
ReceiveMultiple | Receives multiple samples in the stream. |
ReceiveCanBlock | Determines whether calls to the CBaseInputPin::Receive method might block. |
IQualityControl Methods | |
Notify | Receives a quality-control message. |