--- a/camerauis/cameraapp/generic/common/src/camconfigurationutility.cpp Thu Aug 19 09:36:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,367 +0,0 @@
-/*
-* Copyright (c) 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: Helper class for CCamConfiguration
-*
-*/
-
-
-#include "camlogging.h"
-#include "camconfigurationutility.h"
-#include "camconfigurationconstants.h"
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::PhotoSizeIndex
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::PhotoSizeIndex( TInt aWidth, TInt aHeight )
- {
- TInt index = KErrNotFound;
- for( TInt i=0; i<ECamPhotoSizeLast; i++ )
- {
- if( KCamPhotoSizes[i].iWidth == aWidth &&
- KCamPhotoSizes[i].iHeight == aHeight )
- {
- index = i;
- break;
- }
- }
-
- return index;
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::VideoSizeIndex
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::VideoSizeIndex( TInt aWidth, TInt aHeight )
- {
- TInt index = KErrNotFound;
- for( TInt i=0; i<ECamVideoResolutionLast; i++ )
- {
- if( KCamVideoSizes[i].iWidth == aWidth &&
- KCamVideoSizes[i].iHeight == aHeight )
- {
- index = i;
- break;
- }
- }
-
- return index;
- }
-
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::AdjustPrintQualities
-// ---------------------------------------------------------------------------
-//
-void
-CamConfigurationUtility::AdjustPrintQualities( RArray<TCamImageQualityData>& aPhotoQualities )
- {
- TInt n = aPhotoQualities.Count();
-
- //TInt numPrint = 0;
- //TInt lastPrintIndex = KErrNotFound;
-
- for( int i=0; i<n; i++ )
- {
- TCamImageQuality& quality( aPhotoQualities[i].iPhotoQualitySetting.iPhotoQualityId );
-
- quality = static_cast<TCamImageQuality>( i );
- }
-
- /*
- if( EImageQualityPrint == quality )
- {
- if( !numPrint )
- {
- // This is the first print quality, so it should be print high
- quality = EImageQualityPrintHigh;
- }
-
- numPrint++;
- lastPrintIndex = i;
- }
- }
-
- if( numPrint > 2 )
- {
- // There ECamQualityPrintHigh and more than one EImageQualityPrint
- // Change last of them to ECamImageQualityPrintLow
- aPhotoQualities[lastPrintIndex].iPhotoQualitySetting.iPhotoQualityId
- = EImageQualityPrintLow;
- }
-
- */
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::SetVideoQualityLevels
-// ---------------------------------------------------------------------------
-//
-void
-CamConfigurationUtility::SetVideoQualityLevels( RArray<TCamVideoQualityData>& aOrderedArray )
- {
- TInt n = aOrderedArray.Count();
-
- // Set quality setting values for each quality
- // Only 3 or 5 qualities are supported
- if( n==3 )
- {
- aOrderedArray[0].iQualitySetting = ECamVideoQualityHigh;
- aOrderedArray[1].iQualitySetting = ECamVideoQualityNormalHigh;
- aOrderedArray[2].iQualitySetting = ECamVideoQualitySharing;
- aOrderedArray[2].iQualitySettings.iVideoLength = ECamVideoClipShort;
- }
- else
- if( n==5 )
- {
- aOrderedArray[0].iQualitySetting = ECamVideoQualityHigh;
- aOrderedArray[1].iQualitySetting = ECamVideoQualityNormalHigh;
- aOrderedArray[2].iQualitySetting = ECamVideoQualityNormal;
- aOrderedArray[3].iQualitySetting = ECamVideoQualityNormalLow;
- aOrderedArray[4].iQualitySetting = ECamVideoQualitySharing;
- aOrderedArray[4].iQualitySettings.iVideoLength = ECamVideoClipShort;
- }
- else
- {
- PRINT1( _L("Camera <> CamConfigurationUtility::SetVideoQualityLevels - Invalid number of levels (%d)"), n );
- User::Panic( KCamConfigPanicId, ECamConfigPanicInvalidNumberOfQualities );
- }
-
- // Set quality level for iQualitySettings. This is just the
- // quality's index in the array.
- for( TInt i=0; i<n; i++ )
- {
- aOrderedArray[i].iQualitySettings.iQualityLevel = i;
- }
-
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::AddToArrayL
-// ---------------------------------------------------------------------------
-//
-void
-CamConfigurationUtility::AddToArrayL( TInt aValue, RArray<TInt>& aArray )
- {
- if( aArray.Find( aValue ) == KErrNotFound )
- {
- aArray.AppendL( aValue );
- }
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::VideoResolution
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::VideoResolution( TInt aWidth, TInt aHeight )
- {
- RDebug::Print( _L("VideoResolution( %d, %d) "), aWidth, aHeight );
- for( TInt i=0; i<ECamVideoResolutionLast; i++ )
- {
- if( KCamVideoSizes[i].iWidth == aWidth &&
- KCamVideoSizes[i].iHeight == aHeight )
- {
- return KCamVideoSizes[i].iVideoRes;
- }
- }
-
- User::Panic( KCamConfigPanicId, ECamConfigPanicNoVideoRes );
- return KErrNotSupported;
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::CamVideoResolution
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::CamVideoResolution( TInt aWidth, TInt aHeight )
- {
- RDebug::Print( _L("VideoResolution( %d, %d) "), aWidth, aHeight );
- for( TInt i=0; i<ECamVideoResolutionLast; i++ )
- {
- if( KCamVideoSizes[i].iWidth == aWidth &&
- KCamVideoSizes[i].iHeight == aHeight )
- {
- return KCamVideoSizes[i].iCamVideoRes;
- }
- }
-
- User::Panic( KCamConfigPanicId, ECamConfigPanicNoVideoRes );
- return KErrNotSupported;
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::CamVideoResolution
-// ---------------------------------------------------------------------------
-//
-TSize
-CamConfigurationUtility::CamVideoResolution( TCamVideoResolution aResolution )
- {
- RDebug::Print( _L("VideoResolution( TCamVideoResolution: %d) "), aResolution );
- for( TInt i=0; i<ECamVideoResolutionLast; i++ )
- {
- if( KCamVideoSizes[i].iCamVideoRes == aResolution )
- {
- return TSize(KCamVideoSizes[i].iWidth, KCamVideoSizes[i].iHeight );
- }
- }
-
- User::Panic( KCamConfigPanicId, ECamConfigPanicNoVideoRes );
- return TSize(0,0);//KErrNotSupported;
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::VideoType
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::VideoType( const TText8* aMimeType )
- {
- const TPtrC8 mimeType( aMimeType );
- if( mimeType == KCamMimeMp4 )
- {
- return ECamVideoMpeg4;
- }
- else if( mimeType == KCamMime3gpp )
- {
- return ECamVideoH263;
- }
-
- User::Panic( KCamConfigPanicId, ECamConfigPanicNoVideoType );
- return KErrNotSupported;
- }
-
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::VideoDescId
-// ---------------------------------------------------------------------------
-//
-TCamVideoQualityDescription
-CamConfigurationUtility::VideoDescId( TInt aQualityValue )
- {
- TCamVideoQualityDescription desc = ECamVideoQualityDescSharing;
-
- for( TInt i=0; i<ECamVideoQualityDescLast; i++ )
- {
- if( aQualityValue >= KCamVideoQualityMappings[i].iCamcorderVisibleMin )
- {
- desc = KCamVideoQualityMappings[i].iDesc;
- break;
- }
- }
-
- return desc;
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::ImageType
-// ---------------------------------------------------------------------------
-//
-TCamImageType
-CamConfigurationUtility::ImageType( TInt aValue )
- {
- if( aValue >= KCamImageLargeTypeMin )
- {
- return ECamImageTypeLarge;
- }
- else if( aValue >= KCamImageMediumTypeMin )
- {
- return ECamImageTypeMedium;
- }
- else
- {
- return ECamImageTypeSmall;
- }
- }
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::IsSupported
-// ---------------------------------------------------------------------------
-//
-TBool
-CamConfigurationUtility::IsSupported( TInt aValue, TCamItemType aItemType, const TCamImageQualityData& aData )
- {
- switch( aItemType )
- {
- case ECamItemPhotoSize:
- {
- if( aValue == aData.iPhotoSize.iSizeId )
- {
- return ETrue;
- }
- break;
- }
- case ECamItemPhotoQuality:
- {
- if( aValue == aData.iPhotoSize.iQualitySettingId )
- {
- return ETrue;
- }
- break;
- }
- default:
- {
- User::Panic( KCamConfigPanicId, ECamConfigPanicInvalidItem );
- }
- }
- return EFalse;
- }
-
-
-
-
-// ---------------------------------------------------------------------------
-// CamConfigurationUtility::MapDynamicSettingToSceneSetting
-// Get the scene setting id from dynamic setting id.
-// ---------------------------------------------------------------------------
-//
-TInt
-CamConfigurationUtility::MapDynamicSettingToSceneSetting( TInt aSettingId )
- {
- switch( aSettingId )
- {
- case ECamSettingItemDynamicVideoWhiteBalance: // fall through
- case ECamSettingItemDynamicPhotoWhiteBalance:
- return ECamSettingItemSceneAWBMode;
-
- case ECamSettingItemDynamicVideoExposure: // fall through
- case ECamSettingItemDynamicPhotoExposure:
- return ECamSettingItemSceneEV;
-
- case ECamSettingItemDynamicVideoFlash: // fall through
- case ECamSettingItemDynamicPhotoFlash:
- return ECamSettingItemSceneFlashMode;
-
- case ECamSettingItemDynamicVideoContrast: // fall through
- case ECamSettingItemDynamicPhotoContrast:
- return ECamSettingItemSceneContrast;
-
- case ECamSettingItemDynamicPhotoImageSharpness:
- return ECamSettingItemSceneSharpness;
-
- case ECamSettingItemDynamicVideoLightSensitivity: // fall through
- case ECamSettingItemDynamicPhotoLightSensitivity:
- return ECamSettingItemSceneISO;
-
- default:
- return KErrNotFound;
- }
- }
-
-// End of file
-