CExtJpegDecoder Class Reference

class CExtJpegDecoder : public CJPEGImageFrameDecoder
CExtJpegDecoder IclExtJpegApi.lib
Since
3.2
Public Member Functions
~CExtJpegDecoder ()
IMPORT_C TInt CapabilitiesL ()
IMPORT_C void ContinueConvert ( TRequestStatus *)
IMPORT_C void ContinueConvertL ( TRequestStatus *, const CVisualFrame *, TInt &, TInt )
IMPORT_C void Convert ( TRequestStatus *, CFbsBitmap &, TInt )
IMPORT_C void Convert ( TRequestStatus *, CFbsBitmap &, CFbsBitmap &, TInt )
IMPORT_C void ConvertL ( TRequestStatus *, const CVisualFrame *, TInt &, TInt )
IMPORT_C CExtJpegDecoder * DataNewL ( RFs &, const TDesC8 &, const TDesC8 &, const TOptions )
IMPORT_C CExtJpegDecoder * DataNewL ( RFs &, const TDesC8 &, const TOptions , const TUid , const TUid , const TUid )
IMPORT_C CExtJpegDecoder * DataNewL ( RFs &, const CVisualFrame *, const TDesC8 &, const TOptions )
IMPORT_C CExtJpegDecoder * DataNewL ( RFs &, const CVisualFrame *, const TOptions , const TUid , const TUid , const TUid )
IMPORT_C CExtJpegDecoder * DataNewL (const TDecoderType , RFs &, const TDesC8 &, const TOptions )
IMPORT_C CExtJpegDecoder * DataNewL (const TDecoderType , RFs &, const CVisualFrame *, const TOptions )
IMPORT_C CExtJpegDecoder * FileNewL ( RFs &, const TDesC &, const TDesC8 &, const TOptions )
IMPORT_C CExtJpegDecoder * FileNewL ( RFs &, const TDesC &, const TOptions , const TUid , const TUid , const TUid )
IMPORT_C CExtJpegDecoder * FileNewL (const TDecoderType , RFs &, const TDesC &, const TOptions )
IMPORT_C CExtJpegDecoder * NewL ()
IMPORT_C void SetCroppingL ( TRect )
IMPORT_C void SetDctDecodingL ()
IMPORT_C void SetFlippingL ()
IMPORT_C void SetMirroringL ()
IMPORT_C void SetRotationL ( TInt )
IMPORT_C void SetStreamingL ( TSize &)
IMPORT_C TInt SupportedFormatsL ()
Private Member Functions
CExtJpegDecoder ()
TUid GetUidByVersionRangeL ( TInt , TInt )
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CImageDecoder::BlockStreamerL()
CImageDecoder::CImageDecoder()
CImageDecoder::Cancel()
CImageDecoder::ContinueProcessingHeaderL()
CImageDecoder::CustomAsync(TRequestStatus *,TInt)
CImageDecoder::CustomSyncL(TInt)
CImageDecoder::FileNewL(RFile &,ContentAccess::TIntent,const TOptions,const TUid,const TUid,const TUid)
CImageDecoder::FileNewL(RFile &,const TDesC8 &,ContentAccess::TIntent,const TOptions)
CImageDecoder::FileNewL(RFs &,const TDesC &,ContentAccess::TIntent,const TOptions,const TUid,const TUid,const TUid)
CImageDecoder::FileNewL(RFs &,const TDesC &,const TDesC8 &,ContentAccess::TIntent,const TOptions)
CImageDecoder::FileNewL(RFs &,const TMMSource &,const TDesC8 &,const TOptions)
CImageDecoder::FileNewL(RFs &,const TMMSource &,const TOptions,const TUid,const TUid,const TUid)
CImageDecoder::FrameCommentL(TInt,TInt)const
CImageDecoder::FrameCount()const
CImageDecoder::FrameData(TInt)const
CImageDecoder::FrameInfo(TInt)const
CImageDecoder::FrameInfoStringsL(TInt)
CImageDecoder::FrameInfoStringsLC(TInt)
CImageDecoder::GetDestinationSize(TSize &,TInt)
CImageDecoder::GetFileTypesL(RFileExtensionMIMETypeArray &)
CImageDecoder::GetImageSubTypesL(const TUid,RImageTypeDescriptionArray &)
CImageDecoder::GetImageTypesL(RImageTypeDescriptionArray &)
CImageDecoder::GetImplementationInformationL(TUid)
CImageDecoder::GetInterfaceImplementationsL(const RUidDataArray &,RUidDataArray &)
CImageDecoder::GetInterfaceImplementationsL(const TUid *,const TInt,RUidDataArray &)
CImageDecoder::GetMimeTypeDataL(const TDesC8 &,TDes8 &)
CImageDecoder::GetMimeTypeFileL(RFs &,const TDesC &,TDes8 &)
CImageDecoder::GetPluginPropertiesL(const TUid,RUidDataArray &)
CImageDecoder::ImageCommentL(TInt)const
CImageDecoder::ImageType(TInt,TUid &,TUid &)const
CImageDecoder::ImplementationUid()const
CImageDecoder::IsImageHeaderProcessingComplete()const
CImageDecoder::NumberOfFrameComments(TInt)const
CImageDecoder::NumberOfImageComments()const
CImageDecoder::OperationL()
CImageDecoder::Plugin()const
CImageDecoder::Prepare(TRequestStatus *)
CImageDecoder::ReducedSize(const TSize &,TInt,TSize &)const
CImageDecoder::ReductionFactor(const TSize &,const TSize &)const
CImageDecoder::ScalerL()
CImageDecoder::SetAgentProperty(ContentAccess::TAgentProperty,TInt)
CImageDecoder::SetClippingRectL(const TRect *)
CImageDecoder::SetDecoderThreadPriority(TThreadPriority)
CImageDecoder::SetImageTypeL(TInt)
CImageDecoder::~CImageDecoder()
CJPEGExifDecoder::CJPEGExifDecoder()
CJPEGExifDecoder::ConstructL()
CJPEGExifDecoder::ExifMetadata()
CJPEGExifDecoder::~CJPEGExifDecoder()
CJPEGImageFrameDecoder::CJPEGImageFrameDecoder()
CJPEGImageFrameDecoder::ContinueConvertFrame(TRequestStatus *)
CJPEGImageFrameDecoder::ConvertFrame(TRequestStatus *,CImageFrame &)
CJPEGImageFrameDecoder::ConvertFrame(TRequestStatus *,CImageFrame &,TInt)
CJPEGImageFrameDecoder::RecommendedBufferSize(TInt &)
CJPEGImageFrameDecoder::RecommendedBufferSize(TUid,TInt &)
CJPEGImageFrameDecoder::~CJPEGImageFrameDecoder()
Public Member Enumerations
enum TDecoderCapability {
ECapNone  = 0x0000, ECapCropping  = 0x0001, ECapStreaming  = 0x0002, ECapRotation  = 0x0004, ECapFlipping  = 0x0008, ECapMirroring  = 0x0010, ECapDctDecoding  = 0x0020, ECapExifData  = 0x0040
}
enum TDecoderOperations {
EEnd  = 0x00010000, ESupportedFormats  = 0x00020000, ECapabilities  = 0x00040000, EReadyForAsync  = 0x00080000, EConvert  = 0x00100000, EContinueConvert  = 0x00200000
}
enum TDecoderType { ESwImplementation  = 0, EHwImplementation }
Inherited Enumerations
CImageDecoder:TImageType
CImageDecoder:TOptions
Private Attributes
TBool iIsExtConvert

Constructor & Destructor Documentation

CExtJpegDecoder()

CExtJpegDecoder ( ) [private]

C++ default constructor.

~CExtJpegDecoder()

IMPORT_C ~CExtJpegDecoder ( ) [virtual]

Destructor.

Member Functions Documentation

CapabilitiesL()

IMPORT_C TInt CapabilitiesL ( )
Returns the Extended API features (capabilities) that are supported by the decoder.
Since
3.2

ContinueConvert(TRequestStatus *)

IMPORT_C void ContinueConvert ( TRequestStatus * aRequestStatus ) [virtual]
Continue convert
Since
3.2

Parameters

TRequestStatus * aRequestStatus The pointer to the status of the operation that is set by the decoder after it is completed. After a complete successful operation, the status is KErrNone.

ContinueConvertL(TRequestStatus *, const CVisualFrame *, TInt &, TInt)

IMPORT_C void ContinueConvertL ( TRequestStatus * aRequestStatus,
const CVisualFrame * aDestinationFrame,
TInt & aNoOfDecodedMBlocks,
TInt aFrameNumber = 0
)
Asynchronous function for initiating one of the iterations of streamed decoding.
Since
3.2

Parameters

TRequestStatus * aRequestStatus The pointer to the status of the operation that is set by the decoder after it is completed. After a complete successful operation, the status is KErrNone.
const CVisualFrame * aDestinationFrame Pointer to the visual frame structure that is keeping the destination image data. The client should do the proper allocation of the destination location.
TInt & aNoOfDecodedMBlocks Reference to the number of decoded macroblocks that is set by the decoder after the decoding is completed.
TInt aFrameNumber = 0 The frame index in the Jpeg image.

Convert(TRequestStatus *, CFbsBitmap &, TInt)

IMPORT_C void Convert ( TRequestStatus * aRequestStatus,
CFbsBitmap & aDestination,
TInt aFrameNumber = 0
) [virtual]
Convert
Since
3.2

Parameters

TRequestStatus * aRequestStatus The pointer to the status of the operation that is set by the decoder after it is completed. After a complete successful operation, the status is KErrNone.
CFbsBitmap & aDestination
TInt aFrameNumber = 0 The frame index in the Jpeg image.

Convert(TRequestStatus *, CFbsBitmap &, CFbsBitmap &, TInt)

IMPORT_C void Convert ( TRequestStatus * aRequestStatus,
CFbsBitmap & aDestination,
CFbsBitmap & aDestinationMask,
TInt aFrameNumber = 0
) [virtual]
Convert
Since
3.2

Parameters

TRequestStatus * aRequestStatus The pointer to the status of the operation that is set by the decoder after it is completed. After a complete successful operation, the status is KErrNone.
CFbsBitmap & aDestination Bitmap destination
CFbsBitmap & aDestinationMask Bitmap destination mask
TInt aFrameNumber = 0 The frame index in the Jpeg image.

ConvertL(TRequestStatus *, const CVisualFrame *, TInt &, TInt)

IMPORT_C void ConvertL ( TRequestStatus * aRequestStatus,
const CVisualFrame * aDestinationFrame,
TInt & aNoOfDecodedMBlocks,
TInt aFrameNumber = 0
)
Asynchronous function for initiating the decoding
Since
3.2

Parameters

TRequestStatus * aRequestStatus The pointer to the status of the operation that is set by the decoder after it is completed. After a complete successful operation, the status is KErrNone.
const CVisualFrame * aDestinationFrame Pointer to the visual frame structure that is keeping the destination image data. The client should do the proper allocation of the destination location.
TInt & aNoOfDecodedMBlocks Reference to the number of decoded macroblocks that is set by the decoder after the decoding is completed.
TInt aFrameNumber = 0 The frame index in the Jpeg image.

DataNewL(RFs &, const TDesC8 &, const TDesC8 &, const TOptions)

IMPORT_C CExtJpegDecoder * DataNewL ( RFs & aFs,
const TDesC8 & aSourceData,
const TDesC8 & aMIMEType,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const TDesC8 & aSourceData The descriptor reference for the Jpeg image data to decode.
const TDesC8 & aMIMEType The Jpeg MIME type for matching the decoder plugin.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

DataNewL(RFs &, const TDesC8 &, const TOptions, const TUid, const TUid, const TUid)

IMPORT_C CExtJpegDecoder * DataNewL ( RFs & aFs,
const TDesC8 & aSourceData,
const TOptions aOptions = EOptionNone,
const TUid aImageType = KNullUid,
const TUid aImageSubType = KNullUid,
const TUid aDecoderUid = KNullUid
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const TDesC8 & aSourceData The descriptor reference for the Jpeg image data to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.
const TUid aImageType = KNullUid The Jpeg image type.
const TUid aImageSubType = KNullUid The Jpeg image subtype (Null UID).
const TUid aDecoderUid = KNullUid The decoder plugin UID.

DataNewL(RFs &, const CVisualFrame *, const TDesC8 &, const TOptions)

IMPORT_C CExtJpegDecoder * DataNewL ( RFs & aFs,
const CVisualFrame * aSourceData,
const TDesC8 & aMIMEType,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const CVisualFrame * aSourceData Pointer to the visual frame structure keeping the Jpeg image data to decode.
const TDesC8 & aMIMEType The Jpeg MIME type for matching the decoder plugin.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

DataNewL(RFs &, const CVisualFrame *, const TOptions, const TUid, const TUid, const TUid)

IMPORT_C CExtJpegDecoder * DataNewL ( RFs & aFs,
const CVisualFrame * aSourceData,
const TOptions aOptions = EOptionNone,
const TUid aImageType = KNullUid,
const TUid aImageSubType = KNullUid,
const TUid aDecoderUid = KNullUid
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const CVisualFrame * aSourceData Pointer to the visual frame structure keeping the Jpeg image data to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.
const TUid aImageType = KNullUid The Jpeg image type.
const TUid aImageSubType = KNullUid The Jpeg image subtype (Null UID).
const TUid aDecoderUid = KNullUid The decoder plugin UID.

DataNewL(const TDecoderType, RFs &, const TDesC8 &, const TOptions)

IMPORT_C CExtJpegDecoder * DataNewL ( const TDecoderType aDecoderType,
RFs & aFs,
const TDesC8 & aSourceData,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

const TDecoderType aDecoderType Decoder implementation type: HW or SW.
RFs & aFs A reference to a file server session to use.
const TDesC8 & aSourceData The descriptor reference for the Jpeg image data to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

DataNewL(const TDecoderType, RFs &, const CVisualFrame *, const TOptions)

IMPORT_C CExtJpegDecoder * DataNewL ( const TDecoderType aDecoderType,
RFs & aFs,
const CVisualFrame * aSourceData,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

const TDecoderType aDecoderType Decoder implementation type: HW or SW.
RFs & aFs A reference to a file server session to use.
const CVisualFrame * aSourceData Pointer to the visual frame structure keeping the Jpeg image data to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

FileNewL(RFs &, const TDesC &, const TDesC8 &, const TOptions)

IMPORT_C CExtJpegDecoder * FileNewL ( RFs & aFs,
const TDesC & aSourceFilename,
const TDesC8 & aMIMEType,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const TDesC & aSourceFilename The name of the Jpeg file to decode.
const TDesC8 & aMIMEType The Jpeg MIME type for matching the decoder plugin.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

FileNewL(RFs &, const TDesC &, const TOptions, const TUid, const TUid, const TUid)

IMPORT_C CExtJpegDecoder * FileNewL ( RFs & aFs,
const TDesC & aSourceFilename,
const TOptions aOptions = EOptionNone,
const TUid aImageType = KNullUid,
const TUid aImageSubType = KNullUid,
const TUid aDecoderUid = KNullUid
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

RFs & aFs A reference to a file server session to use.
const TDesC & aSourceFilename The name of the Jpeg file to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.
const TUid aImageType = KNullUid The Jpeg image type.
const TUid aImageSubType = KNullUid The Jpeg image subtype (Null UID).
const TUid aDecoderUid = KNullUid The decoder plugin UID.

FileNewL(const TDecoderType, RFs &, const TDesC &, const TOptions)

IMPORT_C CExtJpegDecoder * FileNewL ( const TDecoderType aDecoderType,
RFs & aFs,
const TDesC & aSourceFilename,
const TOptions aOptions = EOptionNone
) [static]
Creates and initializes CExtJpegDecoder
Since
3.2

Parameters

const TDecoderType aDecoderType Decoder implementation type: HW or SW.
RFs & aFs A reference to a file server session to use.
const TDesC & aSourceFilename The name of the Jpeg file to decode.
const TOptions aOptions = EOptionNone Decoder options defined in ICL.

GetUidByVersionRangeL(TInt, TInt)

TUid GetUidByVersionRangeL ( TInt aMinVersion,
TInt aMaxVersion
) [private, static]
Get an uid by version range
Since
3.2

Parameters

TInt aMinVersion
TInt aMaxVersion

NewL()

IMPORT_C CExtJpegDecoder * NewL ( ) [static]
Symbian C++ Two-phased constructor.
Since
3.2

SetCroppingL(TRect)

IMPORT_C void SetCroppingL ( TRect aCropRect )
Enables the use of cropping feature and specifies the cropping region.
Since
3.2

Parameters

TRect aCropRect The rectangular cropping region that will be decoded.

SetDctDecodingL()

IMPORT_C void SetDctDecodingL ( )
SEnables the use of DCT decoding feature.
Since
3.2

SetFlippingL()

IMPORT_C void SetFlippingL ( )
Enables the use of flipping feature.
Since
3.2

SetMirroringL()

IMPORT_C void SetMirroringL ( )
Enables the use of mirroring feature.
Since
3.2

SetRotationL(TInt)

IMPORT_C void SetRotationL ( TInt aDegree )
Enables the use of rotation feature and specifies the rotating degree.
Since
3.2

Parameters

TInt aDegree The rotation degree. Can take any values between 1 and 359.

SetStreamingL(TSize &)

IMPORT_C void SetStreamingL ( TSize & aMacroBlockSize )
Enables the use of streaming feature and retrieves the macroblock dimensions in the Jpeg data.
Since
3.2

Parameters

TSize & aMacroBlockSize The macroblock dimensions in the Jpeg image that is set by the decoder

SupportedFormatsL()

IMPORT_C TInt SupportedFormatsL ( )
Returns the destination (uncompressed) data formats that are supported by the decoder
Since
3.2

Member Enumerations Documentation

Enum TDecoderCapability

Enumerators

ECapNone = 0x0000
ECapCropping = 0x0001
ECapStreaming = 0x0002
ECapRotation = 0x0004
ECapFlipping = 0x0008
ECapMirroring = 0x0010
ECapDctDecoding = 0x0020
ECapExifData = 0x0040

Enum TDecoderOperations

Enumerators

EEnd = 0x00010000
ESupportedFormats = 0x00020000
ECapabilities = 0x00040000
EReadyForAsync = 0x00080000
EConvert = 0x00100000
EContinueConvert = 0x00200000

Enum TDecoderType

Enumerators

ESwImplementation = 0
EHwImplementation

Member Data Documentation

TBool iIsExtConvert

TBool iIsExtConvert [private]