CImageTransform Class Reference

class CImageTransform : public CBase

The public API for clients to call the Image Transform (scaling) library. This class provides functions to scale images held in files or descriptors.

Inherits from

Public Member Functions
~CImageTransform()
IMPORT_C voidCancelTransform()
IMPORT_C voidClearSourceRect()
IMPORT_C CImageTransformPluginExtension *Extension()
IMPORT_C CImageTransformPluginExtension *Extension(TUid, TInt &)
IMPORT_C CImageTransform *NewL(RFs &)
IMPORT_C voidReset()
IMPORT_C voidSetDestDataL(HBufC8 *&)
IMPORT_C voidSetDestFilenameL(const TDesC &)
IMPORT_C voidSetDestSizeInPixelsL(const TSize &, TBool)
IMPORT_C voidSetOptionsL(TUint)
IMPORT_C voidSetPluginUidL(TUid)
IMPORT_C voidSetPreserveImageData(TBool)
IMPORT_C voidSetSourceDataL(const TDesC8 &)
IMPORT_C voidSetSourceFilenameL(const TDesC &)
IMPORT_C voidSetSourceImageTypeL(TUid, TUid)
IMPORT_C voidSetSourceMimeTypeL(const TDesC8 &)
IMPORT_C voidSetSourceRect(const TRect &)
IMPORT_C voidSetTransformationsL(TUint)
IMPORT_C voidSetupL()
IMPORT_C voidTransform(TRequestStatus &)
Private Member Functions
CImageTransform()
voidConstructL(RFs &)
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
enumTOptions { EOptionNone = 0x00, EThumbnail = 0x01, EIgnoreExifMetadataProcessing = 0x02, EEnumBoundary = 0x04 }
enumTTransformations {
ETransformationNone = 0x00, EScale = 0x01, ECrop = 0x02, ESqueeze = 0x04, EOrientation = 0x08, EOverlay = 0x10, EExif = 0x20, ETransformEnumBoundary = 0x40
}
Private Attributes
CImageTransformFramework *iBody

Constructor & Destructor Documentation

CImageTransform()

CImageTransform()[private]

~CImageTransform()

IMPORT_C~CImageTransform()

Member Functions Documentation

CancelTransform()

IMPORT_C voidCancelTransform()

ClearSourceRect()

IMPORT_C voidClearSourceRect()

ConstructL(RFs &)

voidConstructL(RFs &aFs)[private]

Parameters

RFs & aFs

Extension()

IMPORT_C CImageTransformPluginExtension *Extension()const

Extension(TUid, TInt &)

IMPORT_C CImageTransformPluginExtension *Extension(TUidaExtensionUid,
TInt &aError
)const

Parameters

TUid aExtensionUid
TInt & aError

NewL(RFs &)

IMPORT_C CImageTransform *NewL(RFs &aFs)[static]

Parameters

RFs & aFs

Reset()

IMPORT_C voidReset()

SetDestDataL(HBufC8 *&)

IMPORT_C voidSetDestDataL(HBufC8 *&aData)

Parameters

HBufC8 *& aData

SetDestFilenameL(const TDesC &)

IMPORT_C voidSetDestFilenameL(const TDesC &aFilename)

Parameters

const TDesC & aFilename

SetDestSizeInPixelsL(const TSize &, TBool)

IMPORT_C voidSetDestSizeInPixelsL(const TSize &aDestinationSize,
TBoolaMaintainAspectRatio = ETrue
)

Parameters

const TSize & aDestinationSize
TBool aMaintainAspectRatio = ETrue

SetOptionsL(TUint)

IMPORT_C voidSetOptionsL(TUintaOptions)

Parameters

TUint aOptions

SetPluginUidL(TUid)

IMPORT_C voidSetPluginUidL(TUidaPluginUid)

Parameters

TUid aPluginUid

SetPreserveImageData(TBool)

IMPORT_C voidSetPreserveImageData(TBoolaPreserveImageData)

Parameters

TBool aPreserveImageData

SetSourceDataL(const TDesC8 &)

IMPORT_C voidSetSourceDataL(const TDesC8 &aData)

Parameters

const TDesC8 & aData

SetSourceFilenameL(const TDesC &)

IMPORT_C voidSetSourceFilenameL(const TDesC &aFilename)

Parameters

const TDesC & aFilename

SetSourceImageTypeL(TUid, TUid)

IMPORT_C voidSetSourceImageTypeL(TUidaImageType,
TUidaImageSubType = KNullUid
)

Parameters

TUid aImageType
TUid aImageSubType = KNullUid

SetSourceMimeTypeL(const TDesC8 &)

IMPORT_C voidSetSourceMimeTypeL(const TDesC8 &aMIMEType)

Parameters

const TDesC8 & aMIMEType

SetSourceRect(const TRect &)

IMPORT_C voidSetSourceRect(const TRect &aRect)

Parameters

const TRect & aRect

SetTransformationsL(TUint)

IMPORT_C voidSetTransformationsL(TUintaTransformations)

Parameters

TUint aTransformations

SetupL()

IMPORT_C voidSetupL()

Transform(TRequestStatus &)

IMPORT_C voidTransform(TRequestStatus &aStatus)

Parameters

TRequestStatus & aStatus

Member Enumerations Documentation

Enum TOptions

Flags to control how the image is transformed. The EThumbnail and EIgnoreExifMetadataProcessing are mutually exclusive, and SHOULD NOT be used together. If they are, then EThumbnail is used.

Enumerators

EOptionNone = 0x00

No flag set. This is the default option

EThumbnail = 0x01

If set, the destination image will always have a thumbnail. If the source already has a thumbnail, then this is the one that will appear in the destination, otherwise one will be generated.

EIgnoreExifMetadataProcessing = 0x02

If set, then the Exif data is not parsed and ExifMetaData() will always return NULL. If the source image is EXIF, then the EXIF information is copied without modification (i.e. without parsing) to the destination. In cases where the source is JFIF, the destination image is also JFIF.

EEnumBoundary = 0x04

TOptions should not be set greater than or equal to this value.

Enum TTransformations

Flags to specify the desired transformations. If no flag or "EScale" flag is set then the framework will look for the plugins supporting scaling which includes all the plugins supporting version-1 opaque data and the plugins supporting version-2 opaque data with the scaling flag set. A plug-in supporting Squeeze, Orientation and Overlay in a single transform must perform these transformation in the order: Overlaying, Orientation and then Squeezing

Enumerators

ETransformationNone = 0x00

No transformation set

EScale = 0x01

If set, the image is scaled based on the parameter passed in SetDestSizeInPixelsL().

ECrop = 0x02

If set, the image is clipped based on the parameter passed in SetSourceRect().

ESqueeze = 0x04

If set, the image is squeezed

EOrientation = 0x08

If set, the image is oriented

EOverlay = 0x10

If set, the image is blend with the overlay image

EExif = 0x20

If set, the plugin having exif extension is looked for

ETransformEnumBoundary = 0x40

TTransformations should not be set greater than or equal to this value

Member Data Documentation

CImageTransformFramework * iBody

CImageTransformFramework *iBody[private]