IMemInputPin Interface
The IMemInputPin interface provides methods on an input pin to facilitate passing data and flush notifications from a connected output pin of an upstream filter.
When to Implement
Implement this interface on the input pin of every filter. The CBaseInputPin class implements this interface.
When to Use
A connected output pin uses this interface to retrieve an IMemAllocator interface, to pass media samples to the input pin, and to flush pending buffers downstream.
Methods in Vtable Order
| IUnknown methods | Description |
|---|---|
| QueryInterface | Returns pointers to supported interfaces. |
| AddRef | Increments the reference count. |
| Release | Decrements the reference count. |
| IMemInputPin methods | Description |
| GetAllocator | Returns the allocator interface that this input pin proposes as the interface for the output pin to use. |
| NotifyAllocator | Notifies the input pin as to which allocator the output pin is actually going to use. |
| GetAllocatorRequirements | Optional method to use if the filter has specific alignment or prefix requirements but could use an upstream allocator. |
| Receive | Receives the next block of data from the stream. |
| ReceiveMultiple | Receives the next block of data from the stream. This method behaves similarly to the IMemInputPin::Receive method, but it works with multiple samples. |
| ReceiveCanBlock | Determines if sending the IMemInputPin::Receive method might block. |
Last updated on Tuesday, July 13, 2004
© 1992-2000 Microsoft Corporation. All rights reserved.