CBitmapScaler Class Reference
class CBitmapScaler : public CBase |
The public API for clients to call the BitmapTransforms Library bitmap scaling.
Constructor & Destructor Documentation
Member Functions Documentation
Cancel()
Cancel any outstanding activity.
ConstructL()
void | ConstructL | ( | ) | [private] |
Performs second phase of contruction
CustomCommand(TUid, TAny *)
Provides custom command capabilties on CBitmapScaler. The command is dispatched on aUid and if the command is not known KErrNotSupported will be returned. This function is synchronous.
The Default implementation will support one command to enable and disable post processing on the scale operation The uid of this command is published in the header file. Changes to the status of Post Processing Enabled will become effective only after an exising scaling operation has completed.
- Pre-condition
- When a command requires parameters aParam is not NULL.
Parameters
TUid aUid | The ID of the command. |
TAny * aParam | The command specific information. |
DisablePostProcessing(TBool)
TInt
| DisablePostProcessing | ( | TBool | aState | ) | [inline] |
Parameters
TBool aState | a boolean flag which if true will set post processing on (Note by defualt the scaler has post processing on) |
Scale(TRequestStatus *, CFbsBitmap &, CFbsBitmap &, TBool)
Begins the bitmap re-scaling operation.
The scaling factor is based on the relative sizes of the source and target bitmaps. The operation is asynchronous. KErrOverFlow status is set if the sizes of input bitmaps are too large for the algorithm to handle.
- Post-condition
- The result of the operation is pointed to by aRequestStatus.
Parameters
TRequestStatus * aRequestStatus | On return, contains a pointer to the completion status of the rescale of the bitmap. |
CFbsBitmap & aSrcBitmap | The bitmap to be re-scaled. |
CFbsBitmap & aTgtBitmap | The target location for the re-scaled bitmap. |
TBool aMaintainAspectRatio = ETrue | A boolean indicating if the aspect ratio is maintained. ETrue means 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 means the aspect ratio need not be retained. |
Scale(TRequestStatus *, CFbsBitmap &, const TSize &, TBool)
Begins the bitmap re-scaling operation.
The scaling factor is based on the relative value of the source bitmap size and the explicitly supplied size. The operation is asynchronous. When it is complete, successfully or otherwise, the TRequestStatus is set, passing the state of the operation. KErrOverFlow status is set if the sizes of input bitmaps are too large for the algorithm to handle.
Parameters
TRequestStatus * aRequestStatus | On return, contains a pointer to the completion status of the rescale of the bitmap. |
CFbsBitmap & aBitmap | The bitmap to be re-scaled. This reference is also the target location for the re-scaled bitmap. |
const TSize & aDestinationSize | The requested target size for the re-scaled bitmap. |
TBool aMaintainAspectRatio = ETrue | A boolean indicating if the aspect ratio is maintained. ETrue means 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 means the aspect ratio need not be retained. |
SetQualityAlgorithm(TQualityAlgorithm)
UseLowMemoryAlgorithm(TBool)
TInt
| UseLowMemoryAlgorithm | ( | TBool | aState | ) | [inline] |
Parameters
TBool aState | a boolean flag which if true will enable the low memory algorithm (Note by defualt the scaler does not use the low memory algorithm) |
Member Enumerations Documentation
Enum TQualityAlgorithm
An enumeration to specify the level of quality algorithm.
Enumerators
EMinimumQuality |
Fastest/lowest quality
|
EMediumQuality |
Middle range speed/middle range quality
|
EMaximumQuality |
Slowest/highest quality
|
Member Data Documentation
CBitmapScalerBody * iBody
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.