CTransInPlaceOutputPin::DecideAllocator (Windows CE 5.0)

Send Feedback

Negotiates the allocator to use, which uses the allocator from the upstream output pin.

HRESULT DecideAllocator(IMemInputPin* pPin,IMemAllocator**ppAlloc);

Parameters

  • pPin
    Pointer to the IMemInputPin interface of the downstream input pin.
  • ppAlloc
    Returned allocator pointer.

Return Values

Returns NOERROR if successful. Otherwise, returns VFW_E_NO_ALLOCATOR if there is no allocator, or an error from calling GetAllocator, InitAllocator, GetAllocatorRequirements, DecideBufferSize, or NotifyAllocator.

Remarks

This member function overrides the CBaseOutputPin::DecideAllocator member function.

This implementation uses the allocator that is negotiated by its input pin because a transform-inplace filter does not supply its own allocator. It then calls IMemInputPin::NotifyAllocator on the downstream input pin with that allocator.

If you want to use your own allocator, it is better to derive from CTransformFilter than from CTransInPlaceFilter, because the purpose of a transform-inplace filter is to use an existing allocator.

Requirements

DirectShow applications and DirectShow filters have different include file and link library requirements.

For more information, see Setting Up the Build Environment.

OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header:

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.