CGifScaler Class Reference

class CGifScaler : public CBase

The public API for clients to call the GifScaler scaling and color quantization library.

Inherits from

Nested Classes and Structures

Constructor & Destructor Documentation

CGifScaler()

CGifScaler()[private]

~CGifScaler()

IMPORT_C~CGifScaler()

This is the destructor for the CGifScaler and is responsible for deallocating all resources allocated by the CGifScaler.

Member Functions Documentation

Cancel()

IMPORT_C voidCancel()

Cancel any outstanding activity.

ConstructL(CFbsBitmap &, CFbsBitmap *, TOptions)

voidConstructL(CFbsBitmap &aSource,
CFbsBitmap *aSourceMask,
TOptionsaOptions
)[private]

ConstructL Performs second phase of contruction

Parameters

CFbsBitmap & aSource
CFbsBitmap * aSourceMask
TOptions aOptions

NewL(CFbsBitmap &, TOptions)

IMPORT_C CGifScaler *NewL(CFbsBitmap &aSource,
TOptionsaOptions = EHighQualityQuantization
)[static]

The function NewL constructs a CGifScaler. This version constructs a scaler for scaling and color quantizing only. No mask data is required in this case)

leave

KErrArgument if the source bitmap or the options are invalid.

panic

ENoSourceBitmap if the source bitmap has not been created.

A pointer to a fully constructed CGifScaler

Parameters

CFbsBitmap & aSourceThe bitmap to be re-scaled.
TOptions aOptions = EHighQualityQuantizationScaling and color quantization options.

NewL(CFbsBitmap &, CFbsBitmap &, TOptions)

IMPORT_C CGifScaler *NewL(CFbsBitmap &aSource,
CFbsBitmap &aSourceMask,
TOptionsaOptions = EHighQualityQuantization
)[static]

The function NewL constructs a CGifScaler. This version constructs a scaler for scaling and color quantizing an image with transparency.

leave

KErrArgument if the source bitmap, source mask bitmap, or the options are invalid.

panic

ENoSourceBitmap if the source bitmap has not been created.

panic

ENoSourceMaskBitmap if the source mask bitmap has not been created.

A pointer to a fully constructed CGifScaler

Parameters

CFbsBitmap & aSourceThe bitmap to be re-scaled.
CFbsBitmap & aSourceMaskThe mask bitmap that provides the transparency data.
TOptions aOptions = EHighQualityQuantizationScaling and color quantization options.

Scale(TRequestStatus *, CFbsBitmap &, CPalette &, TBool)

IMPORT_C voidScale(TRequestStatus *aStatus,
CFbsBitmap &aDestination,
CPalette &aPalette,
TBoolaMaintainAspectRatio = ETrue
)

Scale the source bitmap and mask to produce a single 8bpp bitmap and an output palette. If a mask was supplied during construction the last index in the palette will be used for transparency.

The scaling factor is based on the relative sizes of the source and target bitmaps. The operation is asynchronous. When it is complete, successfully or otherwise, the TRequestStatus aStatus is set, passing the state of the operation.

Parameters

TRequestStatus * aStatusRequest status to signal when scaling is complete.
CFbsBitmap & aDestinationThe destination bitmap. (EColor256)
CPalette & aPaletteThe output palette.
TBool aMaintainAspectRatio = ETrueETrue - the aspect ratio is retained; this is the default. The same scaling factor is applied in both the horizontal and vertical directions. This is the smaller of the horizontal scaling factor and the vertical scaling factor. EFalse - the aspect ratio need not be retained.

ThresholdScale(TRequestStatus *, CFbsBitmap &, CPalette &, TUint8, TBool)

IMPORT_C voidThresholdScale(TRequestStatus *aStatus,
CFbsBitmap &aDestination,
CPalette &aPalette,
TUint8aTransparencyThreshold,
TBoolaMaintainAspectRatio = ETrue
)

Scale the source bitmap and mask to produce a single 8bpp bitmap and an output palette, specifying a transparency level to be used when determining whether destination pixels are transparent. If a mask was supplied during construction the last index in the palette will be used for transparency.

The scaling factor is based on the relative sizes of the source and target bitmaps. The operation is asynchronous. When it is complete, successfully or otherwise, the TRequestStatus aStatus is set, passing the state of the operation.

Parameters

TRequestStatus * aStatusRequest status to signal when scaling is complete.
CFbsBitmap & aDestinationThe destination bitmap. (EColor256)
CPalette & aPaletteThe output palette.
TUint8 aTransparencyThresholdThe transparency level used to determine if destination pixels are transparent.
TBool aMaintainAspectRatio = ETrueETrue - the aspect ratio is retained; this is the default. The same scaling factor is applied in both the horizontal and vertical directions. This is the smaller of the horizontal scaling factor and the vertical scaling factor. EFalse - the aspect ratio need not be retained.

Member Enumerations Documentation

Enum TOptions

TOptions is an enumeration within the namespace CGifScaler The enumeration provides a set of supported quantization levels: (EHighQualityQuantization is the default setting as it provides the best balance between quality and speed)

Enumerators

ELowQualityQuantization

Provides the lowest quality, but also the fastest.

EMediumQualityQuantization

Provides medium quality quantization

EHighQualityQuantization

Provides high quality quantization

EMaximumQualityQuantization

Provides the highest quality quantization, but is also the slowest.

Member Data Documentation

CBody * iBody

CBody *iBody[private]