TImageConvStreamedDecode Class Reference

#include <icl/imageconversionextension.h>

class TImageConvStreamedDecode

Detailed Description

'Block' streaming extension for Image Conversion Library decoder.

Member Function Documentation

GetBlocks ( TRequestStatus &, CImageFrame &, TInt, TInt, TInt & )

IMPORT_C voidGetBlocks(TRequestStatus &aStatus,
CImageFrame &aFrame,
TIntaSeqPosition,
TIntaNumBlocksToGet,
TInt &aNumBlocksRead
)

Start asynchronous call to return random blocks from the stream

Note:

use CImageDecoder::Cancel() to cancel this request.

Parameters
aStatusrequest status
aFrameAn 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.
aSeqPositionblock number starting at top left 0 ... TDecodeStreamCaps::StreamSizeInBlocks()
aNumBlocksToGetnumber of blocks requested
aNumBlocksReadnumber of blocks which will be returned when the request completes

GetBufferSize ( TUid, TSize &, TInt )

IMPORT_C TIntGetBufferSize(TUidaFormat,
TSize &aBlockSizeInPixels,
TIntaNumBlocks
)const

Get the size of the memory buffer to hold the returned data.

Parameters
aFormatthe required format
aBlockSizeInPixelsreturns the size in pixels of the block returned from the stream when aNumBlocks of minimum block size are requested.
aNumBlocksthe number of blocks of size TDecodeStreamCaps::MinBlockSizeInPixels() to be returned by one request
Return Value
The memory buffer size in bytes to hold the requested blocks. System wide error if for example the format is not supported.

GetCapabilities ( TUid, TInt, TDecodeStreamCaps & )

IMPORT_C voidGetCapabilities(TUidaFormat,
TIntaFrameNumber,
TDecodeStreamCaps &aCaps
)const

Returns the capabilities of the codec plugin for a specific format and for a specific frame.

Parameters
aFormatThe format.
aFrameNumberframe to stream
aCapsThe capabilities for the format given.

GetNextBlocks ( TRequestStatus &, CImageFrame &, TInt, TInt &, TBool & )

IMPORT_C voidGetNextBlocks(TRequestStatus &aStatus,
CImageFrame &aFrame,
TIntaNumBlocksToGet,
TInt &aNumBlocksRead,
TBool &aHaveMoreBlocks
)

Start asynchronous call to return blocks sequentially from the stream. Blocks are returned from the first block until the last in the stream.

Note:

use CImageDecoder::Cancel() to cancel this request.

Parameters
aStatusrequest status
aFrameAn 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.
aNumBlocksToGetnumber of blocks requested
aNumBlocksReadnumber of blocks which will be returned when the request completes

GetSupportedFormatsL ( RArray< TUid > &, TUid & )

IMPORT_C voidGetSupportedFormatsL(RArray< TUid > &aFormats,
TUid &aOptimalFormat
)const

Returns a list of supported formats and the optimal format to be used.

See also: imageframeconst.h for a list of format uids.

Parameters
aFormatsReturns an array of format uids
aOptimalFormatThe 'best' uid to use.

InitFrameL ( TUid, TInt, TDecodeStreamCaps::TNavigation )

IMPORT_C voidInitFrameL(TUidaFormat,
TIntaFrameNumber,
TDecodeStreamCaps::TNavigationaNavigation
)

Initialise the stream.

Note:

must call InitFrameL before GetBlocks or GetNextBlocks. Failure to do so completes request with KErrNotReady

Parameters
aFormatthe format to use
aFrameNumberframe to stream
aNavigationindication to stream of the way that the stream will be navigated. Allows codec to optimise it's behaviour.
Leave Codes
Systemwide error if for example the format is not supported.