uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsimagedecoder.h
branchRCL_3
changeset 4 f5911524345e
parent 0 5e5d6b214f4f
--- a/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsimagedecoder.h	Tue Feb 02 10:12:18 2010 +0200
+++ b/uiservicetab/vimpstdetailsviewplugin/inc/cvimpstdetailsimagedecoder.h	Fri Feb 19 22:41:11 2010 +0200
@@ -25,6 +25,7 @@
 class CVIMPSTDetailsHeaderControl;
 class CImageDecoder;
 class CFbsBitmap;
+class CBitmapScaler;
 
 /**
  * Utility class for asynchronously decoding the header thumbnail image
@@ -56,7 +57,7 @@
      * @since S60 v5.0 
      *
      */
-    void Start();
+    void StartL(TSize aBitmapSize);
     
     /**
      * From CActive
@@ -85,7 +86,23 @@
      * @param aBitmapData Descriptor containing the bitmap data stream
      */
     void ConstructL(const TDesC8& aBitmapData);
-  
+    /**
+     * Scales bitmap
+     *
+     */
+    void ScaleBitmapL();
+
+    enum TCcaImageDecoderState
+        {
+        ECcaConvertThumbnailImage = 1,
+        ECcaScaleThumbnail,       
+        };
+    
+    /**
+     * Create bitmap
+     *
+     */
+    void CreateBitmapL();
  private : // data  
     
   
@@ -115,6 +132,19 @@
      * Owns : Copy of the bitmap data stream
      */
     HBufC8* iBitmapData;
+    
+    /**
+     * The image scaler whose service is called to scale the image
+     * Own.
+     */
+    CBitmapScaler* iBitmapScaler;
+
+    TSize iBitmapSize;
+
+    /** 
+     * Decoder internal state
+     */ 
+    TInt iDecoderState;
     };
 
 #endif /*CVIMPSTDETAILSIMAGEDECODER_H_*/