EngInc/IEEngine.h
author jkauppin
Fri, 15 Oct 2010 10:18:29 +0900
changeset 3 93fff7023be8
permissions -rw-r--r--
Initial version
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     1
/*
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     3
* All rights reserved.
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     4
* This component and the accompanying materials are made available
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     6
* which accompanies this distribution, and is available
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     8
*
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
     9
* Initial Contributors:
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    11
*
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    12
* Contributors: Juha Kauppinen, Mika Hokkanen
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    13
* 
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    14
* Description: Photo Browser
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    15
*
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    16
*/
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    17
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    18
#ifndef __IEENGINE_H__
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    19
#define __IEENGINE_H__
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    20
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    21
#define _FACEBROWSING
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    22
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    23
// Include files
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    24
#include <e32base.h>
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    25
#include <fbs.h>
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    26
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    27
#include "ImagicConsts.h"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    28
#include "debug.h"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    29
#include "IEImage.h"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    30
#include "IEImageProcessing.h" //thumbnail client
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    31
#include "IESensorMonitor.h"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    32
#include "IEImageList.h"
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    33
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    34
#ifdef _S60_5x_ACCELEROMETER_
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    35
#include <sensrvorientationsensor.h>
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    36
#endif
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    37
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    38
//Structures
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    39
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    40
// Class declaration, AppUI class implements
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    41
class MIEEngineObserver
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    42
{
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    43
public:
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    44
    virtual void ImagesLoadedL(TInt aError) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    45
	virtual void TNCreationCompleteL(TThumbSize aTnRes) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    46
	virtual void SingleTNCreationCompletedL(TInt index, TThumbSize aTnRes) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    47
	virtual void FaceDetectionComplete() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    48
	virtual void SingleFaceDetectionComplete() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    49
	virtual TInt GetImageIndex() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    50
	virtual void AllFilesScanned() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    51
	virtual void ImageListChanged(TInt aIndex, TBool bAdded) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    52
#ifdef _ACCELEROMETER_SUPPORTED_
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    53
	virtual void ImageRotated(TImagicDeviceOrientation aDeviceOrientation) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    54
#endif
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    55
	virtual TInt GetGleMaxRes() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    56
	
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    57
};
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    58
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    59
class CIEEngine : public CBase
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    60
{
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    61
public:
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    62
    
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    63
	IMPORT_C static CIEEngine* NewL(MIEEngineObserver& aObserver);
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    64
	IMPORT_C virtual ~CIEEngine();
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    65
	IMPORT_C virtual TInt GetTotalNumOfImages() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    66
	IMPORT_C virtual void GetTotalNumOfImages(TInt& aNumOfImages, TInt& aNumOfFaces) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    67
	IMPORT_C virtual TInt DeleteFile(TInt aIndex) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    68
	IMPORT_C virtual TInt GetImageName(const TInt aIndex, TFileName& aFileName, TThumbSize aThumbRes) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    69
	IMPORT_C virtual void GetBitmapL(CImageData* aImageData, CFbsBitmap* aBitmap, TThumbSize aThumbRes) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    70
	IMPORT_C virtual void AppUIReady() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    71
	IMPORT_C virtual void CancelFullSizeLoading() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    72
#ifdef _ACCELEROMETER_SUPPORTED_
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    73
	IMPORT_C virtual TImagicDeviceOrientation GetDeviceOrientation() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    74
	IMPORT_C virtual void SetDeviceOrientation(TImagicDeviceOrientation aOrientation) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    75
	IMPORT_C virtual void StartAccSensorMonitoring() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    76
    IMPORT_C virtual void StopAccSensorMonitoring() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    77
#endif
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    78
	IMPORT_C virtual TBool IsAccelerometerExists() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    79
	IMPORT_C virtual void SensorDataAvailable(TImagicDeviceOrientation aOrientation, TBool aValue) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    80
	IMPORT_C virtual void SetImageRotation(TInt aIndex) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    81
	IMPORT_C virtual void SetDBChanged(CImageData* aImageData) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    82
	
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    83
	//New functions for handling UI access to Filename array
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    84
	IMPORT_C virtual CImageData* GetImageData(TInt aIndex/*, TImageArrayMode aMode*/) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    85
	IMPORT_C virtual void SetImageData(TInt aIndex, CImageData* aGridData) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    86
	IMPORT_C virtual TBool IsScanningFiles() const = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    87
	IMPORT_C virtual CIEImageList& GetImageList() = 0;	
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    88
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    89
	// TN related functions
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    90
	IMPORT_C virtual void GetFileNameL(const TInt aIndex, TThumbSize aThumbRes, TFileName& aFilename) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    91
	IMPORT_C virtual void StopTNGeneration(TInt &aValue) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    92
	IMPORT_C virtual TReal GetAspectRatio(TInt aIndex) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    93
	IMPORT_C virtual TReal GetFacesAspectRatio(TInt aIndex) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    94
	IMPORT_C virtual void GenerateThumbNailL(const TDes &aOrgFile, TThumbSize aTNResolution) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    95
	
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    96
	// Newly added face Detection functions
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    97
	IMPORT_C virtual void GetFaceCoordinates(const TFileName a128x128TNFileName, RArray<TRect>& aFaceCoordinateArray) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    98
    IMPORT_C virtual void GetSingleFaceCoordinates(TInt aIndex, const TFileName aTNFileName, RArray<TRect>& aFaceCoordinateArray) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
    99
    IMPORT_C virtual void SetImageDataMode(TImageArrayMode aMode) = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   100
    
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   101
    IMPORT_C virtual void Stop() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   102
    IMPORT_C virtual TBool IsRunning() = 0;
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   103
};
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   104
93fff7023be8 Initial version
jkauppin
parents:
diff changeset
   105
#endif // __IEENGINE_H__