diff -r f54ad444594d -r 61bc0f252b2b camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxequalitypresetssymbian/imagingconfigmanager.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/camerauis/cameraxui/cxengine/tsrc/unit/unittest_cxequalitypresetssymbian/imagingconfigmanager.cpp Tue Aug 31 15:03:46 2010 +0300 @@ -0,0 +1,198 @@ +/* +* Copyright (c) 2009-2010 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: Fake implementation for the unittest_cxequalitypresetssymbian +* +*/ + + +#include "imagingconfigmanager.h" + + +const int KNumberOfQualityLevels = 5; + +// --------------------------------------------------------------------------- +// Constructor of CImagingConfigManager +// --------------------------------------------------------------------------- +// +CImagingConfigManager::CImagingConfigManager() +{ + iVideoQualitySets = new CArrayFixFlat< TVideoQualitySet >( 1 ); + iImageQualitySets = new CArrayFixFlat< TImageQualitySet >( 1 ); + + // init + for( TInt i = 0 ; i < KNumberOfQualityLevels ; i++ ) + { + TVideoQualitySet videoset; + initVideoQualitySet(videoset); + iVideoQualitySets->AppendL(videoset); + + TImageQualitySet imageset; + initImageQualitySet(imageset); + iImageQualitySets->AppendL(imageset); + } + +} + +// --------------------------------------------------------------------------- +// Destructor of CImagingConfigManager +// --------------------------------------------------------------------------- +// +CImagingConfigManager::~CImagingConfigManager() +{ +} + + + + +// CImagingConfigManager::NewL +CImagingConfigManager* CImagingConfigManager::NewL() +{ + return new CImagingConfigManager(); +} + +// returns no of video quality levels +TInt CImagingConfigManager::NumberOfVideoQualityLevels() const +{ + return iVideoQualitySets->Count(); +} + +// --------------------------------------------------------------------------- +// Get an array of video quality levels that are in use with the current +// product with given Camera/Display ID. If the ID is zero, then all levels +// dispite of the ID value are returned. +// --------------------------------------------------------------------------- +// +TInt CImagingConfigManager::GetVideoQualityLevelsL( + CArrayFixFlat& aLevels, + TUint /*aCameraDisplayID*/ ) + { + aLevels.Reset(); + aLevels.SetReserveL( iVideoQualitySets->Count() ); + for( TInt i = 0 ; i < NumberOfVideoQualityLevels() ; i++ ) + { + aLevels.AppendL( + iVideoQualitySets->At( i ).iVideoQualitySetLevel); + } + return KErrNone; + } + +// CImagingConfigManager::GetVideoQualitySet +TInt CImagingConfigManager::GetVideoQualitySet( TVideoQualitySet& aSet, + TInt /*aLevel*/, + TUint /*aCameraDisplayID*/ ) + { + initVideoQualitySet(aSet); + return KErrNone; + } + +// Get all settings for Camcorder +TInt CImagingConfigManager::GetCamcorderMMFPluginSettings(TCamcorderMMFPluginSettings& aSet) const + { + aSet.iCMRAvgVideoBitRateScaler = 0.9; + return KErrNone; + } + + +// --------------------------------------------------------------------------- +// Get number of defined image quality levels. This is always at least +// KNumberOfNominalLevels but can be higher +// --------------------------------------------------------------------------- +// +TInt CImagingConfigManager::NumberOfImageQualityLevels() const + { + return iImageQualitySets->Count(); + } + +// --------------------------------------------------------------------------- +// Get an array of image quality levels that are in use with the current +// product with given Camera/Display ID. If the ID is zero, then all levels +// dispite of the ID value are returned. +// --------------------------------------------------------------------------- +// +TInt CImagingConfigManager::GetImageQualityLevelsL( + CArrayFixFlat& aLevels, + TUint /*aCameraDisplayID*/ ) + { + aLevels.Reset(); + for( TInt i = 0 ; i < NumberOfImageQualityLevels() ; i++ ) + { + aLevels.AppendL( + iImageQualitySets->At( i ).iImageQualitySetLevel ); + } + return KErrNone; + } + +// --------------------------------------------------------------------------- +// Get image quality set associated with the given level and Camera/Display ID +// if it is nonzero. If the ID is zero, smallest matching ID set is returned. +// If there is no set associated with given intermediate +// level, then set from a nearest level is returned (dividable by +// KBasicQualityGranularity). +// --------------------------------------------------------------------------- +// +TInt CImagingConfigManager::GetImageQualitySet( TImageQualitySet& aSet, + TInt /*aLevel*/, + TUint /*aCameraDisplayID*/ ) +{ + initImageQualitySet(aSet); + return KErrNone; +} + + +void CImagingConfigManager::initImageQualitySet(TImageQualitySet& aSet) +{ + for( TUint i = 0 ; i < KMaxStringLength ; i++ ) + { + aSet.iImageFileMimeType[ i ] = NULL; + aSet.iImageFileExtension[ i ] = NULL; + } + aSet.iImageQualitySetLevel = 100; + aSet.iImageWidth = 0; + aSet.iImageHeight = 0; + aSet.iImageEncoderUID.iUid = 0; + aSet.iCompressionQuality = 0; + aSet.iEstimatedSize = 0; + aSet.iCameraDisplayId = 0; + aSet.iCamcorderVisible = 100; + +} + +void CImagingConfigManager::initVideoQualitySet(TVideoQualitySet& aSet) +{ + for( TUint i = 0 ; i < KMaxStringLength ; i++ ) + { + aSet.iVideoFileMimeType[ i ] = NULL; + aSet.iVideoCodecMimeType[ i ] = NULL; + aSet.iPreferredSupplier[ i ] = NULL; + } + aSet.iVideoQualitySetLevel = 100; + aSet.iVideoWidth = 0; + aSet.iVideoHeight = 0; + aSet.iVideoFrameRate = 0.0; + aSet.iVideoBitRate = 0; + aSet.iVideoEncoderUID.iUid = 0; + aSet.iRandomAccessRate = 0; + aSet.iVideoPixelAspectRatioNum = 0; + aSet.iVideoPixelAspectRatioDenom = 0; + aSet.iAudioFourCCType = 0; + aSet.iAudioBitRate = 0; + aSet.iAudioSamplingRate = 0; + aSet.iAudioChannels = 0; + aSet.iAudioEncoderUID.iUid = 0; + aSet.iAVSyncStartDelay = 0; + aSet.iAVSyncResumeDelay = 0; + aSet.iCameraDisplayId = 0; + aSet.iCamcorderVisible = 100; + +}