Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
CBaseInputPinis an abstract base class derived from CBasePinthat adds support for IMemInputPinin addition to the IPininterface support provided by CBasePin. Its IMemInputPin::GetAllocatormethod returns a CMemAllocatorobject. Derive your input pin from this class.
All member functions in this class that return HRESULTand accept a pointer as a parameter return E_POINTER when passed a null pointer.
Protected Data Members
m_bFlushing | In the state of flushing; if TRUE, all IMemInputPin::Receivemethods are returned with S_FALSE. |
m_bReadOnly | If TRUE, indicates that the allocator being used contains samples that are read-only. |
m_pAllocator | Pointer to the default memory allocator. |
Member Functions
CBaseInputPin | Constructs a CBaseInputPinobject. |
IsReadOnly | Checks the m_bReadOnlydata member and returns its value. |
IsFlushing | Checks the m_bFlushingdata member and returns its value. |
PassNotify | Passes a quality-control notification to the appropriate sink. |
Overridable Member Functions
CheckStreaming | Verifies conditions for continuing with a streaming operation. |
Inactive | Switches the pin to an inactive state. |
Implemented IPin Methods
BeginFlush | Informs the pin to begin a flush operation. |
Disconnect | Releases the stored allocator. |
EndFlush | Informs the pin to end a flush operation. |
Implemented IMemInputPin Methods
GetAllocator | Returns the allocator interface that this input pin would like the output pin to use. |
GetAllocatorRequirements | Indicates an optional method to use if the filter has specific alignment or prefix requirements but could use an upstream allocator. |
NotifyAllocator | Tells the input pin which allocator the output pin is actually going to use. |
Receive | Returns the next block of data from the stream. (Override this method to process a sample being passed in.) |
ReceiveCanBlock | Determines if sending an IMemInputPin::Receivemethod might block. |
ReceiveMultiple | Returns the next block of data from the stream. (Override this method to process samples being passed in.) |
Implemented INonDelegatingUnknown Methods
NonDelegatingQueryInterface | Retrieves an interface from the subobject, not the aggregated object. |
Implemented IQualityControl Methods
Notify | Notifies the recipient that a quality-control change is requested. (Override on the output pin only. This implementation returns NOERROR.) |