--- a/engine/collectionframework/thumbnailcreator/inc/glxtnquickthumbnailtask.h Mon Sep 27 15:13:20 2010 +0530
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-/*
-* Copyright (c) 2006-2006 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: Quick thumbnail generation task.
-*
-*/
-
-
-
-/**
- * @internal reviewed 30/07/2007 by Simon Brooks
- */
-
-#ifndef C_GLXTNQUICKTHUMBNAILTASK_H
-#define C_GLXTNQUICKTHUMBNAILTASK_H
-
-#include "glxtnloadthumbnailtask.h"
-#include "glxthumbnailinfo.h"
-
-// Forward declarations
-class CGlxtnFileUtility;
-class CGlxtnVideoUtility;
-class CFbsBitmap;
-
-/**
- * Task to quickly produce a thumbnail for an item, usually from the EXIF
- * thumbnail.
- *
- * The task first attempts to extract the EXIF thumbnail data from the file
- * using ExifLib. If this succeeds, an instance of CImageDecoder is constructed
- * from the data and used to produce a bitmap.
- *
- * If this fails, an instance of CImageDecoder is constructed from the file,
- * and set to use the thumbnail. If this fails, it is assumed that there is no
- * EXIF thumbnail in the file, and the decoder is set to scale the main image
- * as close as possible to the required thumbnail size.
- *
- * No scaling or image enhancement is applied to the decoded bitmap.
- *
- * @author Dan Rhodes
- * @ingroup glx_thumbnail_creator
- */
-NONSHARABLE_CLASS( CGlxtnQuickThumbnailTask ) : public CGlxtnLoadThumbnailTask
- {
-public:
- /**
- * Two-phased constructor.
- * @param aRequestInfo Parameters for the thumbnail request.
- * @param aFileUtility File utility for use by the task.
- * @param aClient Client initiating the request.
- */
- static CGlxtnQuickThumbnailTask* NewL(
- const TGlxThumbnailRequest& aRequestInfo,
- CGlxtnFileUtility& aFileUtility, MGlxtnThumbnailCreatorClient& aClient);
- /**
- * Destructor.
- */
- ~CGlxtnQuickThumbnailTask();
-
-protected: // From CGlxtnTask
-
- TBool DoStartL(TRequestStatus& aStatus);
- void DoCancel();
- TBool DoRunL(TRequestStatus& aStatus);
- TBool DoRunError(TInt aError);
-
-private:
- /**
- * C++ default constructor.
- * @param aRequestInfo Parameters for the thumbnail request.
- * @param aFileUtility File utility for use by the task.
- * @param aClient Client initiating the request.
- */
- CGlxtnQuickThumbnailTask(const TGlxThumbnailRequest& aRequestInfo,
- CGlxtnFileUtility& aFileUtility, MGlxtnThumbnailCreatorClient& aClient);
-
- /**
- * Start asynchronous decoding process for a low quality thumbnail.
- * @param aStatus Request status for the asynchronous operation.
- */
- void QuickDecodeL(TRequestStatus& aStatus);
- /**
- * Decode an image file using thumbnail embedded in the file if possible.
- * @param aStatus Request status for the asynchronous operation.
- */
- void ReadThumbnailL(TRequestStatus& aStatus);
- /**
- * Read thumbnail data from the file using ExifLib.
- */
- void ReadExifThumbnailL();
- void QuickScaleL();
-
-private:
- /** Quality of thumbnail (high if loaded, low if generated) */
- TGlxThumbnailQuality iQuality;
- /** Utility to get thumbnail from video (owned) */
- CGlxtnVideoUtility* iUtility;
- /** Bitmap to hold video frame (owned) */
- CFbsBitmap* iVideoFrame;
- /** Whether the media file is a video */
- TBool iVideo;
- /** Flag to show BadFileMarker not created so no need to delete **/
- TBool iBadFileMarkerNotNeededFlag;
- };
-
-#endif // C_GLXTNQUICKTHUMBNAILTASK_H