CImageDecoder Class Reference

class CImageDecoder : public CBase

Provides access to the Image Conversion Library decoders.

This class provides functions to decode images held in files or descriptors. To decode buffered images use the buffered version of this class CBufferedImageDecoder.

Regarding DRM: Note that intent is evaluated when a CImageDecoder instance is being constructed by one of the FileNewL() methods. It is executed after at least one frame of the image has been successfully decoded. Subsequent converts using the same CImageDecoder instance will not execute intent.

Inherits from

Public Member Functions
~CImageDecoder()
IMPORT_C TImageConvStreamedDecode *BlockStreamerL()
IMPORT_C voidCancel()
IMPORT_C voidContinueConvert(TRequestStatus *)
IMPORT_C voidContinueProcessingHeaderL()
IMPORT_C voidConvert(TRequestStatus *, CFbsBitmap &, TInt)
IMPORT_C voidConvert(TRequestStatus *, CFbsBitmap &, CFbsBitmap &, TInt)
IMPORT_C CImageDecoder *DataNewL(RFs &, const TDesC8 &, const TDesC8 &, const TOptions)
IMPORT_C CImageDecoder *DataNewL(RFs &, const TDesC8 &, const TOptions, const TUid, const TUid, const TUid)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TDesC &, const TDesC8 &, const TOptions)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TDesC &, const TOptions, const TUid, const TUid, const TUid)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TDesC &, const TDesC8 &, ContentAccess::TIntent, const TOptions)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TDesC &, ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)
IMPORT_C CImageDecoder *FileNewL(RFile &, const TDesC8 &, ContentAccess::TIntent, const TOptions)
IMPORT_C CImageDecoder *FileNewL(RFile &, ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TMMSource &, const TDesC8 &, const TOptions)
IMPORT_C CImageDecoder *FileNewL(RFs &, const TMMSource &, const TOptions, const TUid, const TUid, const TUid)
IMPORT_C HBufC *FrameCommentL(TInt, TInt)
IMPORT_C TIntFrameCount()
IMPORT_C const CFrameImageData &FrameData(TInt)
IMPORT_C const TFrameInfo &FrameInfo(TInt)
IMPORT_C CFrameInfoStrings *FrameInfoStringsL(TInt)
IMPORT_C CFrameInfoStrings *FrameInfoStringsLC(TInt)
IMPORT_C TIntGetDestinationSize(TSize &, TInt)
IMPORT_C voidGetFileTypesL(RFileExtensionMIMETypeArray &)
IMPORT_C voidGetImageSubTypesL(const TUid, RImageTypeDescriptionArray &)
IMPORT_C voidGetImageTypesL(RImageTypeDescriptionArray &)
IMPORT_C CImplementationInformationType *GetImplementationInformationL(TUid)
IMPORT_C voidGetInterfaceImplementationsL(const RUidDataArray &, RUidDataArray &)
IMPORT_C voidGetInterfaceImplementationsL(const TUid *, const TInt, RUidDataArray &)
IMPORT_C voidGetMimeTypeDataL(const TDesC8 &, TDes8 &)
IMPORT_C voidGetMimeTypeFileL(RFs &, const TDesC &, TDes8 &)
IMPORT_C voidGetPluginPropertiesL(const TUid, RUidDataArray &)
IMPORT_C HBufC *ImageCommentL(TInt)
IMPORT_C voidImageType(TInt, TUid &, TUid &)
IMPORT_C TUidImplementationUid()
IMPORT_C TBoolIsImageHeaderProcessingComplete()
IMPORT_C TIntNumberOfFrameComments(TInt)
IMPORT_C TIntNumberOfImageComments()
IMPORT_C TImageConvOperation *OperationL()
IMPORT_C voidPrepare(TRequestStatus *)
IMPORT_C TIntReducedSize(const TSize &, TInt, TSize &)
IMPORT_C TIntReductionFactor(const TSize &, const TSize &)
IMPORT_C TImageConvScaler *ScalerL()
IMPORT_C TIntSetAgentProperty(ContentAccess::TAgentProperty, TInt)
IMPORT_C voidSetClippingRectL(const TRect *)
IMPORT_C TIntSetDecoderThreadPriority(TThreadPriority)
IMPORT_C voidSetImageTypeL(TInt)
Protected Member Functions
CImageDecoder()
IMPORT_C voidCustomAsync(TRequestStatus *, TInt)
IMPORT_C voidCustomSyncL(TInt)
IMPORT_C CImageDecoderPlugin *Plugin()
Private Member Functions
CImageDecoder *DataDecoderNewL(const CImplementationInformation &, RFs &, const TDesC8 &, const TOptions)
CImageDecoder *DataFindDecoderNewL(const RImplInfoPtrArray &, RFs &, const TDesC8 &, const TOptions)
voidDoGetMimeTypeL(const TDesC &, const TDesC8 &, TDes8 &)
CImageDecoder *FileDecoderNewL(const CImplementationInformation &, RFs &, const TDesC &, const TOptions, const TDesC &)
CImageDecoder *FileDecoderNewL(const CImplementationInformation &, RFile &, const TOptions, const TDesC &)
CImageDecoder *FileFindDecoderNewL(const RImplInfoPtrArray &, RFs &, const TDesC &, const TOptions, const TDesC &)
CImageDecoder *FileFindDecoderNewL(const RImplInfoPtrArray &, RFile &, const TOptions, const TDesC &)
CImageDecoder *FileNewImplL(RFs &, const TDesC &, const TDesC8 &, const TDesC &, const ContentAccess::TIntent, const TOptions)
CImageDecoder *FileNewImplL(RFs &, const TDesC &, const TDesC &, const ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)
CImageDecoder *FileNewImplL(RFile &, const TDesC8 &, const TDesC &, const ContentAccess::TIntent, const TOptions)
CImageDecoder *FileNewImplL(RFile &, const TDesC &, const ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)
ContentAccess::CContent *GetContentLC(const TDesC &)
voidImageTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC8 &, const TUid, const TUid, const TUid, const TOptions)
voidMimeTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC8 &, const TOptions)
CImageDecodeConstruct *NewDecodeConstructL(const CImplementationInformation &, const TOptions)
CImageDecoder *NewL(CImageDecodeConstruct *, TOptions)
CImageDecoder *NewL()
IMPORT_C voidReservedVirtual1()
IMPORT_C voidReservedVirtual2()
IMPORT_C voidReservedVirtual3()
IMPORT_C voidReservedVirtual4()
voidSuffixTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC &, const TOptions)
TBool ValidProperties()
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()
Public Member Enumerations
enumTImageType { EImageTypeThumbnail = 0x01, EImageTypeMain = 0x02 }
enumTOptions {
EOptionNone = 0x00, EOptionNoDither = 0x01, EOptionAlwaysThread = 0x02, EOptionAllowZeroFrameOpen = 0x04, EAllowGeneratedMask = 0x08, EPreferFastDecode = 0x10, EOptionMngSubframesNoLoops = 0x20, EOptionUseFrameSizeInPixels = 0x40, EOptionIgnoreExifMetaData = 0x80, EOptionExtCrop = 0x0100, EOptionExtStream = 0x0200, EOptionExtRotation = 0x0400, EOptionExtMirrorHorizontalAxis = 0x0800, EOptionExtMirrorVerticalAxis = 0x1000, EOptionExtScaling = 0x2000, EOptionExtReserved7 = 0x4000, EOptionExtReserved8 = 0x8000, EOptionPngMissingiENDFail = 0x010000, EOptionWmfIgnoreViewportMetaData = 0x020000, EOptionAutoRotate = 0x040000
}
Private Attributes
MImageDecoderRelay *iRelay

Constructor & Destructor Documentation

CImageDecoder()

IMPORT_CCImageDecoder()[protected]

~CImageDecoder()

IMPORT_C~CImageDecoder()[virtual]

Member Functions Documentation

BlockStreamerL()

IMPORT_C TImageConvStreamedDecode *BlockStreamerL()

Cancel()

IMPORT_C voidCancel()

ContinueConvert(TRequestStatus *)

IMPORT_C voidContinueConvert(TRequestStatus *aRequestStatus)[virtual]

Parameters

TRequestStatus * aRequestStatus

ContinueProcessingHeaderL()

IMPORT_C voidContinueProcessingHeaderL()

Convert(TRequestStatus *, CFbsBitmap &, TInt)

IMPORT_C voidConvert(TRequestStatus *aRequestStatus,
CFbsBitmap &aDestination,
TIntaFrameNumber = 0
)[virtual]

Parameters

TRequestStatus * aRequestStatus
CFbsBitmap & aDestination
TInt aFrameNumber = 0

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

IMPORT_C voidConvert(TRequestStatus *aRequestStatus,
CFbsBitmap &aDestination,
CFbsBitmap &aDestinationMask,
TIntaFrameNumber = 0
)[virtual]

Parameters

TRequestStatus * aRequestStatus
CFbsBitmap & aDestination
CFbsBitmap & aDestinationMask
TInt aFrameNumber = 0

CustomAsync(TRequestStatus *, TInt)

IMPORT_C voidCustomAsync(TRequestStatus *aRequestStatus,
TIntaParam
)[protected]

Parameters

TRequestStatus * aRequestStatus
TInt aParam

CustomSyncL(TInt)

IMPORT_C voidCustomSyncL(TIntaParam)[protected]

Parameters

TInt aParam

DataDecoderNewL(const CImplementationInformation &, RFs &, const TDesC8 &, const TOptions)

CImageDecoder *DataDecoderNewL(const CImplementationInformation &aDecoderInfo,
RFs &aFs,
const TDesC8 &aSourceData,
const TOptionsaOptions
)[private, static]

Parameters

const CImplementationInformation & aDecoderInfo
RFs & aFs
const TDesC8 & aSourceData
const TOptions aOptions

DataFindDecoderNewL(const RImplInfoPtrArray &, RFs &, const TDesC8 &, const TOptions)

CImageDecoder *DataFindDecoderNewL(const RImplInfoPtrArray &aDecoderList,
RFs &aFs,
const TDesC8 &aSourceData,
const TOptionsaOptions
)[private, static]

Parameters

const RImplInfoPtrArray & aDecoderList
RFs & aFs
const TDesC8 & aSourceData
const TOptions aOptions

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

IMPORT_C CImageDecoder *DataNewL(RFs &aFs,
const TDesC8 &aSourceData,
const TDesC8 &aMIMEType,
const TOptionsaOptions = EOptionNone
)[static]

Parameters

RFs & aFs
const TDesC8 & aSourceData
const TDesC8 & aMIMEType
const TOptions aOptions = EOptionNone

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

IMPORT_C CImageDecoder *DataNewL(RFs &aFs,
const TDesC8 &aSourceData,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[static]

Parameters

RFs & aFs
const TDesC8 & aSourceData
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

DoGetMimeTypeL(const TDesC &, const TDesC8 &, TDes8 &)

voidDoGetMimeTypeL(const TDesC &aFileName,
const TDesC8 &aMatchString,
TDes8 &aMimeType
)[private, static]

Parameters

const TDesC & aFileName
const TDesC8 & aMatchString
TDes8 & aMimeType

FileDecoderNewL(const CImplementationInformation &, RFs &, const TDesC &, const TOptions, const TDesC &)

CImageDecoder *FileDecoderNewL(const CImplementationInformation &aDecoderInfo,
RFs &aFs,
const TDesC &aSourceFilename,
const TOptionsaOptions,
const TDesC &aUniqueId
)[private, static]

Parameters

const CImplementationInformation & aDecoderInfo
RFs & aFs
const TDesC & aSourceFilename
const TOptions aOptions
const TDesC & aUniqueId

FileDecoderNewL(const CImplementationInformation &, RFile &, const TOptions, const TDesC &)

CImageDecoder *FileDecoderNewL(const CImplementationInformation &aDecoderInfo,
RFile &aFile,
const TOptionsaOptions,
const TDesC &aUniqueId
)[private, static]

Parameters

const CImplementationInformation & aDecoderInfo
RFile & aFile
const TOptions aOptions
const TDesC & aUniqueId

FileFindDecoderNewL(const RImplInfoPtrArray &, RFs &, const TDesC &, const TOptions, const TDesC &)

CImageDecoder *FileFindDecoderNewL(const RImplInfoPtrArray &aDecoderList,
RFs &aFs,
const TDesC &aSourceFilename,
const TOptionsaOptions,
const TDesC &aUniqueId
)[private, static]

Parameters

const RImplInfoPtrArray & aDecoderList
RFs & aFs
const TDesC & aSourceFilename
const TOptions aOptions
const TDesC & aUniqueId

FileFindDecoderNewL(const RImplInfoPtrArray &, RFile &, const TOptions, const TDesC &)

CImageDecoder *FileFindDecoderNewL(const RImplInfoPtrArray &aDecoderList,
RFile &aFile,
const TOptionsaOptions,
const TDesC &aUniqueId
)[private, static]

Parameters

const RImplInfoPtrArray & aDecoderList
RFile & aFile
const TOptions aOptions
const TDesC & aUniqueId

FileNewImplL(RFs &, const TDesC &, const TDesC8 &, const TDesC &, const ContentAccess::TIntent, const TOptions)

CImageDecoder *FileNewImplL(RFs &aFs,
const TDesC &aSourceFilename,
const TDesC8 &aMIMEType,
const TDesC &aUniqueId,
const ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
const TDesC8 & aMIMEType
const TDesC & aUniqueId
const ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone

FileNewImplL(RFs &, const TDesC &, const TDesC &, const ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)

CImageDecoder *FileNewImplL(RFs &aFs,
const TDesC &aSourceFilename,
const TDesC &aUniqueId,
const ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[private, static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
const TDesC & aUniqueId
const ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

FileNewImplL(RFile &, const TDesC8 &, const TDesC &, const ContentAccess::TIntent, const TOptions)

CImageDecoder *FileNewImplL(RFile &aFile,
const TDesC8 &aMIMEType,
const TDesC &aUniqueId,
const ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

RFile & aFile
const TDesC8 & aMIMEType
const TDesC & aUniqueId
const ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone

FileNewImplL(RFile &, const TDesC &, const ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)

CImageDecoder *FileNewImplL(RFile &aFile,
const TDesC &aUniqueId,
const ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[private, static]

Parameters

RFile & aFile
const TDesC & aUniqueId
const ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

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

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TDesC &aSourceFilename,
const TDesC8 &aMIMEType,
const TOptionsaOptions = EOptionNone
)[static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
const TDesC8 & aMIMEType
const TOptions aOptions = EOptionNone

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

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TDesC &aSourceFilename,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

FileNewL(RFs &, const TDesC &, const TDesC8 &, ContentAccess::TIntent, const TOptions)

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TDesC &aSourceFilename,
const TDesC8 &aMIMEType,
ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone
)[static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
const TDesC8 & aMIMEType
ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone

FileNewL(RFs &, const TDesC &, ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TDesC &aSourceFilename,
ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[static]

Parameters

RFs & aFs
const TDesC & aSourceFilename
ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

FileNewL(RFile &, const TDesC8 &, ContentAccess::TIntent, const TOptions)

IMPORT_C CImageDecoder *FileNewL(RFile &aFile,
const TDesC8 &aMIMEType,
ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone
)[static]

Parameters

RFile & aFile
const TDesC8 & aMIMEType
ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone

FileNewL(RFile &, ContentAccess::TIntent, const TOptions, const TUid, const TUid, const TUid)

IMPORT_C CImageDecoder *FileNewL(RFile &aFile,
ContentAccess::TIntentaIntent,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[static]

Parameters

RFile & aFile
ContentAccess::TIntent aIntent
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

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

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TMMSource &aFileSource,
const TDesC8 &aMIMEType,
const TOptionsaOptions = EOptionNone
)[static]

Parameters

RFs & aFs
const TMMSource & aFileSource
const TDesC8 & aMIMEType
const TOptions aOptions = EOptionNone

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

IMPORT_C CImageDecoder *FileNewL(RFs &aFs,
const TMMSource &aFileSource,
const TOptionsaOptions = EOptionNone,
const TUidaImageType = KNullUid,
const TUidaImageSubType = KNullUid,
const TUidaDecoderUid = KNullUid
)[static]

Parameters

RFs & aFs
const TMMSource & aFileSource
const TOptions aOptions = EOptionNone
const TUid aImageType = KNullUid
const TUid aImageSubType = KNullUid
const TUid aDecoderUid = KNullUid

FrameCommentL(TInt, TInt)

IMPORT_C HBufC *FrameCommentL(TIntaFrameNumber,
TIntaCommentNumber
)const

Parameters

TInt aFrameNumber
TInt aCommentNumber

FrameCount()

IMPORT_C TIntFrameCount()const

FrameData(TInt)

IMPORT_C const CFrameImageData &FrameData(TIntaFrameNumber = 0)const

Parameters

TInt aFrameNumber = 0

FrameInfo(TInt)

IMPORT_C const TFrameInfo &FrameInfo(TIntaFrameNumber = 0)const

Parameters

TInt aFrameNumber = 0

FrameInfoStringsL(TInt)

IMPORT_C CFrameInfoStrings *FrameInfoStringsL(TIntaFrameNumber = 0)

Parameters

TInt aFrameNumber = 0

FrameInfoStringsLC(TInt)

IMPORT_C CFrameInfoStrings *FrameInfoStringsLC(TIntaFrameNumber = 0)

Parameters

TInt aFrameNumber = 0

GetContentLC(const TDesC &)

ContentAccess::CContent *GetContentLC(const TDesC &aSourceFilename)[private, static]

Parameters

const TDesC & aSourceFilename

GetDestinationSize(TSize &, TInt)

IMPORT_C TIntGetDestinationSize(TSize &aSize,
TIntaFrameNumber = 0
)

Parameters

TSize & aSize
TInt aFrameNumber = 0

GetFileTypesL(RFileExtensionMIMETypeArray &)

IMPORT_C voidGetFileTypesL(RFileExtensionMIMETypeArray &aFileExtensionArray)[static]

Parameters

RFileExtensionMIMETypeArray & aFileExtensionArray

GetImageSubTypesL(const TUid, RImageTypeDescriptionArray &)

IMPORT_C voidGetImageSubTypesL(const TUidaImageType,
RImageTypeDescriptionArray &aSubTypeArray
)[static]

Parameters

const TUid aImageType
RImageTypeDescriptionArray & aSubTypeArray

GetImageTypesL(RImageTypeDescriptionArray &)

IMPORT_C voidGetImageTypesL(RImageTypeDescriptionArray &aImageTypeArray)[static]

Parameters

RImageTypeDescriptionArray & aImageTypeArray

GetImplementationInformationL(TUid)

IMPORT_C CImplementationInformationType *GetImplementationInformationL(TUidaImplementationUid)[static]

Parameters

TUid aImplementationUid

GetInterfaceImplementationsL(const RUidDataArray &, RUidDataArray &)

IMPORT_C voidGetInterfaceImplementationsL(const RUidDataArray &aRequiredUids,
RUidDataArray &aImplArray
)[static]

Parameters

const RUidDataArray & aRequiredUids
RUidDataArray & aImplArray

GetInterfaceImplementationsL(const TUid *, const TInt, RUidDataArray &)

IMPORT_C voidGetInterfaceImplementationsL(const TUid *aRequiredUids,
const TIntaLength,
RUidDataArray &aImplArray
)[static]

Parameters

const TUid * aRequiredUids
const TInt aLength
RUidDataArray & aImplArray

GetMimeTypeDataL(const TDesC8 &, TDes8 &)

IMPORT_C voidGetMimeTypeDataL(const TDesC8 &aImageData,
TDes8 &aMimeType
)[static]

Parameters

const TDesC8 & aImageData
TDes8 & aMimeType

GetMimeTypeFileL(RFs &, const TDesC &, TDes8 &)

IMPORT_C voidGetMimeTypeFileL(RFs &aFs,
const TDesC &aFileName,
TDes8 &aMimeType
)[static]

Parameters

RFs & aFs
const TDesC & aFileName
TDes8 & aMimeType

GetPluginPropertiesL(const TUid, RUidDataArray &)

IMPORT_C voidGetPluginPropertiesL(const TUidaImplementationUid,
RUidDataArray &aPropertiesArray
)[static]

Parameters

const TUid aImplementationUid
RUidDataArray & aPropertiesArray

ImageCommentL(TInt)

IMPORT_C HBufC *ImageCommentL(TIntaCommentNumber)const

Parameters

TInt aCommentNumber

ImageType(TInt, TUid &, TUid &)

IMPORT_C voidImageType(TIntaFrameNumber,
TUid &aImageType,
TUid &aImageSubType
)const

Parameters

TInt aFrameNumber
TUid & aImageType
TUid & aImageSubType

ImageTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC8 &, const TUid, const TUid, const TUid, const TOptions)

voidImageTypeGetDecoderListL(RImplInfoPtrArray &aDecoderList,
const TDesC8 &aImageHeader,
const TUidaImageType,
const TUidaImageSubType,
const TUidaDecoderUid,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

RImplInfoPtrArray & aDecoderList
const TDesC8 & aImageHeader
const TUid aImageType
const TUid aImageSubType
const TUid aDecoderUid
const TOptions aOptions = EOptionNone

ImplementationUid()

IMPORT_C TUidImplementationUid()const

IsImageHeaderProcessingComplete()

IMPORT_C TBoolIsImageHeaderProcessingComplete()const

MimeTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC8 &, const TOptions)

voidMimeTypeGetDecoderListL(RImplInfoPtrArray &aDecoderList,
const TDesC8 &aMIMEType,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

RImplInfoPtrArray & aDecoderList
const TDesC8 & aMIMEType
const TOptions aOptions = EOptionNone

NewDecodeConstructL(const CImplementationInformation &, const TOptions)

CImageDecodeConstruct *NewDecodeConstructL(const CImplementationInformation &aDecoderInfo,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

const CImplementationInformation & aDecoderInfo
const TOptions aOptions = EOptionNone

NewL(CImageDecodeConstruct *, TOptions)

CImageDecoder *NewL(CImageDecodeConstruct *aConstruct,
TOptionsaOptions
)[private, static]

Parameters

CImageDecodeConstruct * aConstruct
TOptions aOptions

NewL()

CImageDecoder *NewL()[private, static]

NumberOfFrameComments(TInt)

IMPORT_C TIntNumberOfFrameComments(TIntaFrameNumber)const

Parameters

TInt aFrameNumber

NumberOfImageComments()

IMPORT_C TIntNumberOfImageComments()const

OperationL()

IMPORT_C TImageConvOperation *OperationL()

Plugin()

IMPORT_C CImageDecoderPlugin *Plugin()const [protected]

Prepare(TRequestStatus *)

IMPORT_C voidPrepare(TRequestStatus *aRequestStatus)

Parameters

TRequestStatus * aRequestStatus

ReducedSize(const TSize &, TInt, TSize &)

IMPORT_C TIntReducedSize(const TSize &aOriginalSize,
TIntaReductionFactor,
TSize &aReducedSize
)const

Parameters

const TSize & aOriginalSize
TInt aReductionFactor
TSize & aReducedSize

ReductionFactor(const TSize &, const TSize &)

IMPORT_C TIntReductionFactor(const TSize &aOriginalSize,
const TSize &aReducedSize
)const

Parameters

const TSize & aOriginalSize
const TSize & aReducedSize

ReservedVirtual1()

IMPORT_C voidReservedVirtual1()[private, virtual]

ReservedVirtual2()

IMPORT_C voidReservedVirtual2()[private, virtual]

ReservedVirtual3()

IMPORT_C voidReservedVirtual3()[private, virtual]

ReservedVirtual4()

IMPORT_C voidReservedVirtual4()[private, virtual]

ScalerL()

IMPORT_C TImageConvScaler *ScalerL()

SetAgentProperty(ContentAccess::TAgentProperty, TInt)

IMPORT_C TIntSetAgentProperty(ContentAccess::TAgentPropertyaProperty,
TIntaValue
)

Parameters

ContentAccess::TAgentProperty aProperty
TInt aValue

SetClippingRectL(const TRect *)

IMPORT_C voidSetClippingRectL(const TRect *aClipRect)

Parameters

const TRect * aClipRect

SetDecoderThreadPriority(TThreadPriority)

IMPORT_C TIntSetDecoderThreadPriority(TThreadPriorityaPriority)

Parameters

TThreadPriority aPriority

SetImageTypeL(TInt)

IMPORT_C voidSetImageTypeL(TIntaImageType)

Parameters

TInt aImageType

SuffixTypeGetDecoderListL(RImplInfoPtrArray &, const TDesC &, const TOptions)

voidSuffixTypeGetDecoderListL(RImplInfoPtrArray &aDecoderList,
const TDesC &aFileName,
const TOptionsaOptions = EOptionNone
)[private, static]

Parameters

RImplInfoPtrArray & aDecoderList
const TDesC & aFileName
const TOptions aOptions = EOptionNone

ValidProperties()

TBool ValidProperties()const [private, inline]

Member Enumerations Documentation

Enum TImageType

Flags to control which image is decoded. This can be used when the source file or descriptor contains multiple distinct image sources.

Enumerators

EImageTypeThumbnail = 0x01

Use the thumbnail as source image

EImageTypeMain = 0x02

Use the main image

Enum TOptions

Flags to control how the image is decoded. These can be combined using an OR operation.

Enumerators

EOptionNone = 0x00

No flag set

EOptionNoDither = 0x01

Do not dither the decoded image

EOptionAlwaysThread = 0x02

Perform the decoding in a separate thread

EOptionAllowZeroFrameOpen = 0x04

Allow Opens to complete with no error if there is less than one frame available. This should be set for streaming.

EAllowGeneratedMask = 0x08

Setting this flag requests that the plugin generate a mask during decoding.

Note:

This option is only relevant to image formats that do not already contain mask information.

The client must check that TFrameInfo::ETransparencyPossible is set before attempting to obtain the mask, because not all plugins support mask generation.

EPreferFastDecode = 0x10

Use the highest possible image decoding speed; this may result in lower image quality. This flag is more applicable to formats which use "lossy" compression algorithms, such as JPEG. Decoders that do not support fast decoding will ignore it.

EOptionMngSubframesNoLoops = 0x20

Prevent MNG ImageDecoder from unwinding all the loops

EOptionUseFrameSizeInPixels = 0x40

Setting this flag requests that the plugin use the frame size rather than the overall size when calculating its reduction factor

EOptionIgnoreExifMetaData = 0x80

When specified, this flag indicates that the decoder must ignore the EXIF meta-data, if present. In this case, the ExifMetaData() should return NULL. This option value is also used to indicate the requirement to ignore the EXIF meta-data when doing the image transformation.

EOptionExtCrop = 0x0100

Codec must support crop.

EOptionExtStream = 0x0200

Codec must support block streaming extension.

EOptionExtRotation = 0x0400

Codec must support rotation through the operation extension.

EOptionExtMirrorHorizontalAxis = 0x0800

Codec must support horizontal mirror through the operation extension.

EOptionExtMirrorVerticalAxis = 0x1000

Codec must support vertical mirror through the operation extension.

EOptionExtScaling = 0x2000

Codec must support the scaling extension.

EOptionExtReserved7 = 0x4000

Reserved.

EOptionExtReserved8 = 0x8000

Reserved.

EOptionPngMissingiENDFail = 0x010000

Requests that decode always fails for Png images without an iEND chunk.

EOptionWmfIgnoreViewportMetaData = 0x020000

Allows WMF codec to ignore any SETVIEWPORTORG, SETVIEWPORTEXT, SCALEVIEWPORTEXT or OFFSETVIEWPORTORG commands in the metafile and allows scaling to destination bitmap.

EOptionAutoRotate = 0x040000

Requests that codec applies the auto rotation when decoding according to the orientation tag in the image Exif header.

Member Data Documentation

MImageDecoderRelay * iRelay

MImageDecoderRelay *iRelay[private]