uiservicetab/vimpstutils/inc/cvimpstimageprocessor.h
branchRCL_3
changeset 22 3104fc151679
parent 21 2b7283837edb
child 23 9a48e301e94b
--- a/uiservicetab/vimpstutils/inc/cvimpstimageprocessor.h	Thu Aug 19 09:41:53 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,224 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Image processor
-*
-*/
-
-
-#ifndef CVIMPSTIMAGEPROCESSOR_H
-#define CVIMPSTIMAGEPROCESSOR_H
-
-#include <f32file.h>
-#include "mvimpstimageprocessobserver.h"
-class CImageDecoder;
-class CBitmapScaler;
-class CFbsBitmap;
-class CImageEncoder;
-// CLASS DECLARATION
-
-/**
- *  Image processor
- *
- *  @lib vimpstutils.dll
- */
-class CVimpstImageProcessor : public CActive
-	{
-   public: 
-   		/**
-	     * Content processing states
-	     */
-	    enum TContentProcessState
-	        {
-	        EContentNotProcessed = 0,
-	        EConvertImageDatatoBitmap,
-	        EScaleBitmap, 
-	        EConentFromScaledBitmap,
-	        EProcessingComplete
-	        };
-    public: // Construction
-		
-		/**
-		 * Construction
-		 */
-		static CVimpstImageProcessor* NewL( MCAImageProcessObserver* aObserver);
-		
-		/**
-		 * Destruction
-		 */
-		~CVimpstImageProcessor();
-		
-	private: // Construction
-	
-		/**
-		 * Constructor
-		 */
-		CVimpstImageProcessor(MCAImageProcessObserver* aObserver);
-		
-		/**
-		 * Constructor
-		 */
-		void ConstructL();
-
-    private: // From CActive
-    
-        /**
-         * @see CActive
-         */
-	    void RunL();
-	    	    
-        /**
-         * @see CActive
-         */
-	    void DoCancel();
-	    
-        /**
-         * @see CActive.
-         */
-		TInt RunError( TInt aError );	    
-		
-   public: 
-       /**
-        * This is used when the image data is ready
-        * image data is proceesed and the new content is of the image is given
-        * by reducing the image data size
-        * 
-        * @param  aImageData : Content of the image file
-        * @param  aMimeType : Mime type of the file from which the content is passed
-        */
-       TInt ProcessFromDataL( const TDesC8& aImageData , const TDesC8& aMimeType);
-       /**
-        * This is used when the image data is ready
-        * image data is proceesed and the new content is of the image is given
-        * by reducing the image data size
-        * 
-        * @param  aFileName : image file name
-        * @param  aMimeType : Mime type of the file from which the content is passed
-        */
-       void ProcessFromFileL( const TDesC& aFileName , const TDesC8& aMimeType);
-       /**
-        * Cancel the image processing operation 
-        */ 
-       void CancelProcessing();
-       /**
-        * Register the observer to give callback
-        * once the processing is done
-        * @param  aObserver : obeserver
-        */   
-       void RegisterObserver( MCAImageProcessObserver* aObserver );
-       /**
-        * Retrieve the processed image
-        * Ownership of iContent is transferred to caller
-        * @return  processed image
-        */  
-       HBufC8* GetContentData();
-       /**
-        * Get Bitmap
-        * @return bitmap
-        */   
-       CFbsBitmap& Bitmap();
-           
-   private: // New helper methods
-       
-       /**
-        * Convert image to bitmap
-        */
-       void  ConvertImageToBitmapL();
-       /**
-        * Scale Bit map
-        */
-       void  ScaleBitmapL();
-       /**
-        * store scaled bitmap content into iimageencoder
-        */
-       void  ContentFromScaledBitmapL();
-       /**
-         * Get new size after decoding.
-         * Scale to nearest (larger or equal) size with ratio 1:1, 1:2, 1:4 or 1:8
-         * directly when decoding.
-         *
-         * @param aSize Size of original image
-         * @param aTargetSize Size of target image
-         * @param aAnyRatio Set this to ETrue if the decoder is cabable of scaling to any          *  ratio
-         * @return New size of decoded image
-         */
-        TSize DecodeSize( const TSize& aSize, const TSize& aTargetSize,
-                          TBool aAnyRatio );
-        
-        /**
-         * Get new size after scaling. If scale not needed return EFalse
-         * Scaled size will be 40x30 if width > height or 30x40 if 
-         * height > width.
-         *
-         * @param aSize Original size of image
-         * @param aNewSize New size of scaled image
-         * @return ETrue if scale needed.
-         */
-        TBool ScaleSize( const TSize& aSize, TSize& aNewSize );
-        
-        /**
-         * Notify observer for completion and remove message from array         
-         */
-        void CompleteRequestL();
-        /**
-         * Reset current operation and remove all pending messages from stack.
-         * @param aReason reson for reseting
-         */
-        void ResetProcessingL( TInt aReason );
-        
-        /**
-         * Deletes and cancels all processing units ( decoder, encoder etc ).
-         */
-        void ClearState();
-
-    
-    private: // Data
-    
-        /// File system access
-        RFs iFs;
-        
-        // Decoder for image.
-        CImageDecoder* iImageDecoder;
-        CBitmapScaler* iScaler;
-        CImageEncoder* iImageEncoder;
-        /**
-         *  Bitmap. Owns.
-         */
-        CFbsBitmap* iBitmap;
-        /**
-         *  Target size for bitmap
-         */
-        TSize iTargetSize;
-
-        /**
-         *  Thumbnail size for bitmap
-         */
-        TSize iThumbSize;
-        /**
-         * Doesn't Own
-         */ 
-        HBufC8* iContent;
-
-        /// Owns.
-        HBufC8* iMimeType;
-        TContentProcessState iProcessingState;
-        HBufC* iFilename;
-        
-        MCAImageProcessObserver* iObserver;
-        TInt iScaleSize;    
-        TBool isBitmapReturned;
-        };
-
-#endif      // CVIMPSTIMAGEPROCESSOR_H
-
-// End of File