Microsoft Windows CE 3.0  

IMemInputPin::ReceiveMultiple

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.

Returns the next block of data from the stream. This method behaves much like the IMemInputPin::Receivemethod, but it works with multiple samples.

HRESULT
ReceiveMultiple(
IMediaSample
**
pSamples
,
long
nSamples
,
long
*
nSamplesProcessed
);

Parameters

pSamples
[in] Pointer to an array of samples.
nSamples
[in] Number of samples to process.
nSamplesProcessed
[out] Number of samples processed.

Return Values

Returns an HRESULTvalue that depends on the implementation. HRESULTcan be one of the following standard constants, or other values not listed.

E_FAIL Failure.
E_POINTER Null pointer argument.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method isn't supported.
S_OK or NOERROR Success.

Remarks

This method allows a connected output pin to deliver multiple samples at one time. Use it if, like COutputQueue, the output pin batches samples for delivery together. Implement this if your filter can handle batched samples more efficiently than individual samples. The base class implementation of this method simply calls IMemInputPin::Receiverepeatedly. Override this implementation if you can do something more efficiently in your derived class.