EngInc/IEEngine.h
changeset 3 93fff7023be8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/EngInc/IEEngine.h	Fri Oct 15 10:18:29 2010 +0900
@@ -0,0 +1,105 @@
+/*
+* Copyright (c) 2009 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: Juha Kauppinen, Mika Hokkanen
+* 
+* Description: Photo Browser
+*
+*/
+
+#ifndef __IEENGINE_H__
+#define __IEENGINE_H__
+
+#define _FACEBROWSING
+
+// Include files
+#include <e32base.h>
+#include <fbs.h>
+
+#include "ImagicConsts.h"
+#include "debug.h"
+#include "IEImage.h"
+#include "IEImageProcessing.h" //thumbnail client
+#include "IESensorMonitor.h"
+#include "IEImageList.h"
+
+#ifdef _S60_5x_ACCELEROMETER_
+#include <sensrvorientationsensor.h>
+#endif
+
+//Structures
+
+// Class declaration, AppUI class implements
+class MIEEngineObserver
+{
+public:
+    virtual void ImagesLoadedL(TInt aError) = 0;
+	virtual void TNCreationCompleteL(TThumbSize aTnRes) = 0;
+	virtual void SingleTNCreationCompletedL(TInt index, TThumbSize aTnRes) = 0;
+	virtual void FaceDetectionComplete() = 0;
+	virtual void SingleFaceDetectionComplete() = 0;
+	virtual TInt GetImageIndex() = 0;
+	virtual void AllFilesScanned() = 0;
+	virtual void ImageListChanged(TInt aIndex, TBool bAdded) = 0;
+#ifdef _ACCELEROMETER_SUPPORTED_
+	virtual void ImageRotated(TImagicDeviceOrientation aDeviceOrientation) = 0;
+#endif
+	virtual TInt GetGleMaxRes() = 0;
+	
+};
+
+class CIEEngine : public CBase
+{
+public:
+    
+	IMPORT_C static CIEEngine* NewL(MIEEngineObserver& aObserver);
+	IMPORT_C virtual ~CIEEngine();
+	IMPORT_C virtual TInt GetTotalNumOfImages() = 0;
+	IMPORT_C virtual void GetTotalNumOfImages(TInt& aNumOfImages, TInt& aNumOfFaces) = 0;
+	IMPORT_C virtual TInt DeleteFile(TInt aIndex) = 0;
+	IMPORT_C virtual TInt GetImageName(const TInt aIndex, TFileName& aFileName, TThumbSize aThumbRes) = 0;
+	IMPORT_C virtual void GetBitmapL(CImageData* aImageData, CFbsBitmap* aBitmap, TThumbSize aThumbRes) = 0;
+	IMPORT_C virtual void AppUIReady() = 0;
+	IMPORT_C virtual void CancelFullSizeLoading() = 0;
+#ifdef _ACCELEROMETER_SUPPORTED_
+	IMPORT_C virtual TImagicDeviceOrientation GetDeviceOrientation() = 0;
+	IMPORT_C virtual void SetDeviceOrientation(TImagicDeviceOrientation aOrientation) = 0;
+	IMPORT_C virtual void StartAccSensorMonitoring() = 0;
+    IMPORT_C virtual void StopAccSensorMonitoring() = 0;
+#endif
+	IMPORT_C virtual TBool IsAccelerometerExists() = 0;
+	IMPORT_C virtual void SensorDataAvailable(TImagicDeviceOrientation aOrientation, TBool aValue) = 0;
+	IMPORT_C virtual void SetImageRotation(TInt aIndex) = 0;
+	IMPORT_C virtual void SetDBChanged(CImageData* aImageData) = 0;
+	
+	//New functions for handling UI access to Filename array
+	IMPORT_C virtual CImageData* GetImageData(TInt aIndex/*, TImageArrayMode aMode*/) = 0;
+	IMPORT_C virtual void SetImageData(TInt aIndex, CImageData* aGridData) = 0;
+	IMPORT_C virtual TBool IsScanningFiles() const = 0;
+	IMPORT_C virtual CIEImageList& GetImageList() = 0;	
+
+	// TN related functions
+	IMPORT_C virtual void GetFileNameL(const TInt aIndex, TThumbSize aThumbRes, TFileName& aFilename) = 0;
+	IMPORT_C virtual void StopTNGeneration(TInt &aValue) = 0;
+	IMPORT_C virtual TReal GetAspectRatio(TInt aIndex) = 0;
+	IMPORT_C virtual TReal GetFacesAspectRatio(TInt aIndex) = 0;
+	IMPORT_C virtual void GenerateThumbNailL(const TDes &aOrgFile, TThumbSize aTNResolution) = 0;
+	
+	// Newly added face Detection functions
+	IMPORT_C virtual void GetFaceCoordinates(const TFileName a128x128TNFileName, RArray<TRect>& aFaceCoordinateArray) = 0;
+    IMPORT_C virtual void GetSingleFaceCoordinates(TInt aIndex, const TFileName aTNFileName, RArray<TRect>& aFaceCoordinateArray) = 0;
+    IMPORT_C virtual void SetImageDataMode(TImageArrayMode aMode) = 0;
+    
+    IMPORT_C virtual void Stop() = 0;
+    IMPORT_C virtual TBool IsRunning() = 0;
+};
+
+#endif // __IEENGINE_H__