| 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. |