#include <icl/imageconversionextensionintf.h>
| class MImageConvStreamedDecode : public MImageConvExtension |
| Public Member Functions | |
|---|---|
| pure virtual void | GetBlocks(TRequestStatus *, CImageFrame *, TInt, TInt, TInt *) |
| pure virtual TInt | GetBufferSize(TUid, TSize &, TInt) |
| pure virtual void | GetCapabilities(TUid, TInt, TDecodeStreamCaps &) |
| pure virtual void | GetNextBlocks(TRequestStatus *, CImageFrame *, TInt, TInt *, TBool *) |
| pure virtual void | GetSupportedFormatsL(RArray< TUid > &, TUid &) |
| pure virtual void | InitFrameL(TUid, TInt, TDecodeStreamCaps::TNavigation) |
| Inherited Functions | |
|---|---|
| MImageConvExtension::IncrementRef() | |
| MImageConvExtension::Release() | |
| MImageConvExtension::Uid()const | |
Block Streaming extension for decoder plugins.
| void | GetBlocks | ( | TRequestStatus * | aStatus, |
| CImageFrame * | aFrame, | |||
| TInt | aSeqPosition, | |||
| TInt | aNumBlocksToGet, | |||
| TInt * | aNumBlocksRead | |||
| ) | [pure virtual] | |||
Start asynchronous call to return random blocks from the stream
use CImageDecoder::Cancel() to cancel this request.
| Parameters | |
|---|---|
| aStatus | request status |
| aFrame | An image frame wrapper a memory buffer to hold the returned block(s) of pixel data. This can be 'uninitialised' or given specific format which must match that specified in the InitFrameL call. |
| aSeqPosition | block number starting at 0 ... |
| aNumBlocksToGet | number of blocks requested |
| aNumBlocksRead | number of blocks which will be returned when the request completes |
Get the size of the memory buffer to hold the returned data.
| Parameters | |
|---|---|
| aFormat | the required format |
| aBlockSizeInPixels | size of a single block to be returned |
| aNumBlocks | the number of blocks of size TDecodeStreamCaps::MinBlockSizeInPixels() to be returned by one request |
| void | GetCapabilities | ( | TUid | aFormat, |
| TInt | aFrameNumber, | |||
| TDecodeStreamCaps & | aCaps | |||
| ) | const [pure virtual] | |||
Returns the capabilities of the codec plugin for a specific format.
| Parameters | |
|---|---|
| aFormat | The format. |
| aFrameNumber | frame to stream |
| aCaps | The capabilities for the format given. |
| void | GetNextBlocks | ( | TRequestStatus * | aStatus, |
| CImageFrame * | aFrame, | |||
| TInt | aNumBlocksToGet, | |||
| TInt * | aNumBlocksRead, | |||
| TBool * | aHaveMoreBlocks | |||
| ) | [pure virtual] | |||
Start asynchronous call to return blocks sequentially from the stream. Blocks are returned from the first block until the last in the stream.
use CImageDecoder::Cancel() to cancel this request.
| Parameters | |
|---|---|
| aStatus | request status |
| aFrame | An image frame wrapper a memory buffer to hold the returned block(s) of pixel data. This can be 'uninitialised' or given specific format which must match that specified in the InitFrameL call. |
| aNumBlocksToGet | number of blocks requested |
| aNumBlocksRead | number of blocks which will be returned when the request completes |
Returns a list of supported formats and the optimal format to be used.
See also: imageframeconst.h for a list of format uids.
| Parameters | |
|---|---|
| aFormats | Returns an array of format uids |
| aOptimalFormat | The 'best' uid to use. |
| void | InitFrameL | ( | TUid | aFormat, |
| TInt | aFrameNumber, | |||
| TDecodeStreamCaps::TNavigation | aNavigation | |||
| ) | [pure virtual] | |||
TO DO Do we need to specify where the source is held e.g. in memory, on flash card etc?
must call InitFrameL before GetBlocks or GetNextBlocks. Failure to do so completes request with KErrNotReady
| Parameters | |
|---|---|
| aFormat | the format to use |
| aFrameNumber | frame to stream |
| aNavigation | indication to stream of the way that the stream will be navigated. Allows codec to optimise it's behaviour. |