class MImageConvStreamedDecode : public MImageConvExtension |
Block Streaming extension for decoder plugins.
Public Member Functions | |
---|---|
void | GetBlocks(TRequestStatus *, CImageFrame *, TInt, TInt, TInt *) |
TInt | GetBufferSize(TUid, TSize &, TInt) |
void | GetCapabilities(TUid, TInt, TDecodeStreamCaps &) |
void | GetNextBlocks(TRequestStatus *, CImageFrame *, TInt, TInt *, TBool *) |
void | GetSupportedFormatsL(RArray< TUid > &, TUid &) |
void | InitFrameL(TUid, TInt, TDecodeStreamCaps::TNavigation) |
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.
TRequestStatus * aStatus | request status |
CImageFrame * 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. |
TInt aSeqPosition | block number starting at 0 ... |
TInt aNumBlocksToGet | number of blocks requested |
TInt * aNumBlocksRead | number of blocks which will be returned when the request completes |
TInt | GetBufferSize | ( | TUid | aFormat, |
TSize & | aBlockSizeInPixels, | |||
TInt | aNumBlocks | |||
) | const [pure virtual] |
Get the size of the memory buffer to hold the returned data.
The memory buffer size in bytes to hold the requested blocks.
void | GetCapabilities | ( | TUid | aFormat, |
TInt | aFrameNumber, | |||
TDecodeStreamCaps & | aCaps | |||
) | const [pure virtual] |
Returns the capabilities of the codec plugin for a specific format.
TUid aFormat | The format. |
TInt aFrameNumber | frame to stream |
TDecodeStreamCaps & 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.
TRequestStatus * aStatus | request status |
CImageFrame * 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. |
TInt aNumBlocksToGet | number of blocks requested |
TInt * aNumBlocksRead | number of blocks which will be returned when the request completes |
TBool * aHaveMoreBlocks |
void | GetSupportedFormatsL | ( | RArray< TUid > & | aFormats, |
TUid & | aOptimalFormat | |||
) | const [pure virtual] |
Returns a list of supported formats and the optimal format to be used. imageframeconst.h for a list of format uids.
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
TUid aFormat | the format to use |
TInt aFrameNumber | frame to stream |
TDecodeStreamCaps::TNavigation aNavigation | indication to stream of the way that the stream will be navigated. Allows codec to optimise it's behaviour. |