imagehandlingutilities/thumbnailmanager/thumbnailserver/inc/thumbnailscaletask.h
changeset 54 48dd0f169f0d
parent 42 2e2a89493e2b
--- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/inc/thumbnailscaletask.h	Fri Sep 03 10:29:37 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,286 +0,0 @@
-/*
-* Copyright (c) 2006-2007 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:  Task for scaling thumbnails
- *
-*/
-
-
-#ifndef THUMBNAILSCALETASK_H
-#define THUMBNAILSCALETASK_H
-
-#include "thumbnailtask.h"
-#include "thumbnailprovider.h"
-#include "thumbnailstore.h" // TThumbnailPersistentSize
-
-class CThumbnailServer;
-
-/**
- *  Task for scaling thumbnails.
- *
- *  @since S60 v5.0
- */
-class CThumbnailScaleTask: public CThumbnailTask
-    {
-public:
-
-    /**
-     * Two-phased constructor
-     *
-     * @since S60 v5.0
-     * @param aProcessor Processor object for running tasks.
-     * @param aServer Server to use.
-     * @param aFilename Filename of file from which the thumbnail is to be
-     *                  created.
-     * @param aBitmap Bitmap image. Scale task assumes ownership.
-     * @param aOriginalSize Original size of the image.
-     * @param aTargetSize Target size of thumbnail image.
-     * @param aCrop Enable or disable cropping.
-     * @param aDisplayMode Display mode.
-     * @param aPriority Priority of the request.
-     * @param aThumbnailSize Prededined size of thumbnail.
-     * @return New CThumbnailScaleTask object.
-     * @param aEXIF is origin EXIF.
-     * @param aRequestId Request ID.
-     */
-    static CThumbnailScaleTask* NewL( CThumbnailTaskProcessor& aProcessor,
-        CThumbnailServer& aServer, const TDesC& aFilename, CFbsBitmap* aBitmap,
-        const TSize& aOriginalSize, const TSize& aTargetSize, TBool aCrop,
-        TDisplayMode aDisplayMode, TInt aPriority, const TDesC& aTargetUri,
-        const TThumbnailSize aThumbnailSize, const TInt64 aModified,
-        const TBool aBitmapToPool, const TBool aEXIF, 
-        const TThumbnailServerRequestId aRequestId, const TBool aImportVirtual);
-
-    /**
-     * Destructor
-     *
-     * @since S60 v5.0
-     */
-    virtual ~CThumbnailScaleTask();
-
-    /**
-     * StartL
-     *
-     * @since S60 v5.0
-     */
-    void StartL();
-
-    /**
-     * Handles an active object's request completion event.
-     *
-     * @since S60 v5.0
-     */
-    void RunL();
-
-    /**
-     * Implements cancellation of an outstanding request.
-     *
-     * @since S60 v5.0
-     */
-    void DoCancel();
-
-    /**
-     * Changes priority of the task.
-     *
-     * @since S60 v5.0
-     */
-    void ChangeTaskPriority( TInt aNewPriority );
-
-    /**
-     * Set whether the scaled image is to be stored or not.
-     *
-     * @since S60 v5.0
-     * @param aDoStore Boolean value stating should the image be stored.
-     */
-    void SetDoStore( TBool aDoStore );
-
-private:
-
-    /**
-     * C++ default constructor
-     *
-     * @since S60 v5.0
-     * @param aProcessor Processor object for running tasks.
-     * @param aServer Server to use.
-     * @param aFilename Filename of file from which the thumbnail is to be
-     *                  created.
-     * @param aBitmap Bitmap image. Scale task assumes ownership.
-     * @param aOriginalSize Original size of the image.
-     * @param aTargetSize Target size of thumbnail image.
-     * @param aCrop Enable or disable cropping.
-     * @param aDisplayMode Display mode.
-     * @param aPriority Priority of the request.
-     * @param aThumbnailSize Prededined size of thumbnail.
-     * @return New CThumbnailScaleTask object.
-     * @param aEXIF is origin EXIF.
-     * @param aRequestId Request ID.
-     */
-    CThumbnailScaleTask( CThumbnailTaskProcessor& aProcessor, CThumbnailServer&
-        aServer, const TDesC& aFilename, CFbsBitmap* aBitmap, const TSize&
-        aOriginalSize, const TSize& aTargetSize, TBool aCrop, TDisplayMode
-        aDisplayMode, TInt aPriority, const TDesC& aTargetUri,
-        const TThumbnailSize aThumbnailSize, const TInt64 aModified,
-        const TBool aBitmapToPool, const TBool aEXIF, 
-        const TThumbnailServerRequestId aRequestId, const TBool aImportVirtual);
-
-    /**
-     * Symbian 2nd phase constructor can leave.
-     *
-     * @since S60 v5.0
-     */
-    void ConstructL();
-
-    /**
-     * Calculates target size to be used for the thumbnail when cropping is
-     * disabled. The target size may be smaller than requested if aspect
-     * ratios do not match. Updates iTargetSize.
-     *
-     * @since S60 v5.0
-     */
-    void CalculateTargetSize();
-
-    /**
-     * Calculates cropping rectangle to be used for the thumbnail when
-     * cropping is enabled. Target size will always be the same as requested
-     * size and the cropping rectangle defines which area of the image will
-     * be visible. Updates iCropRectangle.
-     *
-     * @since S60 v5.0
-     */
-    void CalculateCropRectangle();
-
-    /**
-     * StoreAndCompleteL
-     *
-     * @since S60 v5.0
-     */
-    void StoreAndCompleteL();
-
-private:
-    // Data
-
-    /**
-     * Server.
-     */
-    CThumbnailServer& iServer;
-
-    /**
-     * Resides in bitmap pool.
-     * Not own. But we do are responsible for decreasing the reference count
-     * if iBitmapInPool is set.
-     */
-    CFbsBitmap* iBitmap;
-
-    /**
-     * Temporary place to store the original bitmap. This is set to NULL
-     * after the bitmap has been successfully added to the bitmap pool.
-     * Own.
-     */
-    CFbsBitmap* iOwnBitmap;
-
-    /**
-     * Bitmap pool.
-     */
-    TBool iBitmapInPool;
-
-    /**
-     * Original size of media object.
-     */
-    TSize iOriginalSize;
-
-    /**
-     * Target size of scaled thubnail (not real of preview)
-     */
-    TSize iTargetSize;
-    
-    /**
-     * Target size of the thumbnail.
-     */
-    TSize iTargetSizeTN;
-
-    /**
-     * Incidates if cropping is enabled.
-     */
-    TBool iCrop;
-
-    /**
-     * Defines the visible area of iBitmap which is to be included
-     * in the thumbnail if cropping is enabled. Not used if cropping
-     * is disabled.
-     */
-    TRect iCropRectangle;
-
-    /**
-     * Display mode.
-     */
-    TDisplayMode iDisplayMode;
-
-    /**
-     * Filename of the image to be used.
-     */
-    TFileName iFilename;
-    
-    /**
-     * Uri of the target object
-     */
-    TFileName iTargetUri;
-
-    /**
-     * Scaled image.
-     */
-    CFbsBitmap* iScaledBitmap; // own
-
-    /**
-     * If set, scaled bitmap must be released from pool.
-     */
-    TInt iScaledBitmapHandle;
-
-    /**
-     * If set, thumbnail will be stored for later use.
-     */
-    TBool iDoStore;
-
-    /**
-     * Temporary buffer for client/server parameters
-     */
-    TThumbnailRequestParamsPckgBuf iParamsBuf;
-
-     /**
-     * Size of requested Thumbnail
-     */
-    TThumbnailSize iThumbnailSize;
-    
-	 /**
-     * timestamp
-     */
-    TInt64 iModified;
-    
-	/**
-     * Add bitmap to server's pool.
-     */
-    TBool iBitmapToPool;
- 
-#ifdef _DEBUG
-    TTime aStart, aStop;
-#endif
-    
-     /**
-     * Is origin EXIF.
-     */
-    TBool iEXIF;
-    
-    // virtual uri
-    TBool iVirtualUri;
-};
-
-#endif // THUMBNAILSCALETASK_H