diff -r 8b2d6d0384b0 -r d9aefe59d544 camerauis/cameraapp/generic/common/inc/camconfigurationconstants.h --- a/camerauis/cameraapp/generic/common/inc/camconfigurationconstants.h Tue Feb 02 00:01:39 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,421 +0,0 @@ -/* -* Copyright (c) 2007-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: -* -* Description: Constants used by camera dynamic configuration. -* Mappings between enums, resolutions, icons, description -* and CamcorderVisible values. -* -* -*/ - -#ifndef CAMCONFIGURATIONCONSTANTS_H -#define CAMCONFIGURATIONCONSTANTS_H - -#include "CamSettingsInternal.hrh" -#include "camconfigurationtypes.h" -#include - -// Display IDs for cameras, used when requesting data from ICM -const TInt KCamPrimaryCameraDisplayId = 2; -const TInt KCamSecondaryCameraDisplayId = 3; - -// Photo resolutions corresponding each photo size and image quality -// enum value -const TCamPhotoSize KCamPhotoSizes[] = - { - { ECamPhotoSizeVGA, EImageResolutionMMS, ECamImageQualityMMS, 640, 480 }, - { ECamPhotoSizeSVGA, EImageResolutionMMS, ECamImageQualityEmail05m, 800, 600 }, - { ECamPhotoSizeXGA, EImageResolution0_8MP, ECamImageQualityEmail08m, 1024, 768 }, - { ECamPhotoSize1MP, EImageResolution1MP, ECamImageQualityEmail1m, 1152, 864 }, - { ECamPhotoSize1_3MP, EImageResolution1_3MP, ECamImageQualityPrint1_3m, 1280, 960 }, - { ECamPhotoSize2MP, EImageResolution2MP, ECamImageQualityPrint2m, 1600, 1200 }, - { ECamPhotoSize3MP, EImageResolution3MP, ECamImageQualityPrint3m, 2048, 1536 }, - { ECamPhotoSize5MP, EImageResolution5MP, ECamImageQualityPrint5m, 2592, 1944 }, - { ECamPhotoSize8MP, EImageResolution8MP, ECamImageQualityPrint8m, 3264, 2448 }, - { ECamPhotoSize12MP, EImageResolution12MP, ECamImageQualityPrint12m, 4000, 3000 }, - { ECamPhotoSizeW6MP, EImageResolutionW6MP, ECamImageQualityPrintW6m, 3264, 1832 }, - { ECamPhotoSizeW9MP, EImageResolutionW9MP, ECamImageQualityPrintW9m, 4000, 2248 }, - { ECamPhotoSizeCIF, EImageResolutionMMS, ECamImageQualityMMS, 354, 288 }, - { ECamPhotoSizeQVGA, EImageResolutionQVGA, ECamImageQualityMMS, 320, 240 }, - { ECamPhotoSizeWVGA, EImageResolutionWVGA, ECamImageQualityPrint8m, 4000, 2672 } // @todo: fake values - }; -__ASSERT_COMPILE( (sizeof(KCamPhotoSizes) / sizeof(TCamPhotoSize)) == ECamPhotoSizeLast ); - - -// Mappings for image qualities and small/medium/large types (type -// is calculated based on ICM's CamcorderVisible value) -// In case a type is not supported for a quality, closest description -// and quality are used. -const TCamImageQualityMapping - KCamImageQualityMappings[][ECamImageTypeLast] = - { - // ECamPhotoSizeVGA - { - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Small - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Medium - { ECamPhotoQualityDescMms, EImageQualityMMS } // Large - }, - // ECamPhotoSizeSVGA - Not supported for any type! - { - { ECamPhotoQualityDescLast, EImageQualityEmail }, // Small - { ECamPhotoQualityDescLast, EImageQualityEmail }, // Medium - { ECamPhotoQualityDescLast, EImageQualityEmail } // Large - }, - // ECamPhotoSizeXGA - { - { ECamPhotoQualityDesc0_8mMed, EImageQualityEmail }, // Small - { ECamPhotoQualityDesc0_8mMed, EImageQualityEmail }, // Medium - { ECamPhotoQualityDesc0_8mMed, EImageQualityEmail } // Large - }, - // ECamPhotoSize1MP - { - { ECamPhotoQualityDesc1mSmall, EImageQualityEmail }, // Small - { ECamPhotoQualityDesc1mMed, EImageQualityEmail }, // Medium - { ECamPhotoQualityDesc1mMed, EImageQualityEmail } // Large - }, - // ECamPhotoSize1_3MP - { - { ECamPhotoQualityDesc1_3mSmall, EImageQualityEmail }, // Small - { ECamPhotoQualityDesc1_3mSmall, EImageQualityEmail }, // Medium - { ECamPhotoQualityDesc1_3mSmall, EImageQualityEmail } // Large - }, - // ECamPhotoSize2MP - { - { ECamPhotoQualityDesc2mMed, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc2mMed, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc2mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSize3MP - { - { ECamPhotoQualityDesc3mMed, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc3mMed, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc3mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSize5MP - { - { ECamPhotoQualityDesc5mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc5mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc5mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSize8MP - { - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSize12MP - { - { ECamPhotoQualityDesc12mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc12mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc12mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSizeW6MP - { - { ECamPhotoQualityDescW6mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDescW6mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDescW6mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSizeW9MP - { - { ECamPhotoQualityDescW9mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDescW9mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDescW9mLarge, EImageQualityPrint } // Large - }, - // ECamPhotoSizeCIF - { - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Small - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Medium - { ECamPhotoQualityDescMms, EImageQualityMMS } // Large - }, - // ECamPhotoSizeQVGA - { - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Small - { ECamPhotoQualityDescMms, EImageQualityMMS }, // Medium - { ECamPhotoQualityDescMms, EImageQualityMMS } // Large - }, - // ECamPhotoSizeWVGA // @todo: fake values - { - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint }, // Small - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint }, // Medium - { ECamPhotoQualityDesc8mLarge, EImageQualityPrint } // Large - }, - }; -__ASSERT_COMPILE( (sizeof(KCamImageQualityMappings) / (sizeof(TCamImageQualityMapping)*ECamImageTypeLast) ) == ECamPhotoSizeLast ); - -// Video resolutions corresponding enum values -const TCamVideoSize KCamVideoSizes[] = - { - { ECamVideoResolutionSubQCIF, EVideoResolutionQCIF, 128, 96 }, - { ECamVideoResolutionQCIF, EVideoResolutionQCIF, 176, 144 }, - { ECamVideoResolutionCIF, EVideoResolutionQCIF, 352, 288 }, - { ECamVideoResolutionVGA, EVideoResolutionVGA, 640, 480 }, - { ECamVideoResolutionQVGA, EVideoResolutionQVGA, 320, 240 }, - { ECamVideoResolutionNHD, EVideoResolutionNHD, 640, 352 }, - { ECamVideoResolutionWVGA, EVideoResolutionWVGA, 864, 480 }, - { ECamVideoResolutionHD, EVideoResolutionHD, 1280, 720 } - }; -__ASSERT_COMPILE( (sizeof(KCamVideoSizes) / sizeof(TCamVideoSize)) == ECamVideoResolutionLast ); - -// Image quality icons, settings view and precapture -// Array indexed quality description ID -const TCamQualityIcons KCamImageIcons[] = - { - - - // ECamPhotoQualityDesc12mLarge - { - EMbmCameraappQgn_indi_cam4_quality_12mp_high, - EMbmCameraappQgn_indi_cam4_quality_12mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_12mp_high, - EMbmCameraappQgn_indi_cam4_quality_12mp_high_mask - }, - // ECamPhotoQualityDescW9mLarge - { - EMbmCameraappQgn_indi_cam4_quality_9mp_high, - EMbmCameraappQgn_indi_cam4_quality_9mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_9mp_high, - EMbmCameraappQgn_indi_cam4_quality_9mp_high_mask - }, - // ECamPhotoQualityDesc8mLarge - { - EMbmCameraappQgn_indi_cam4_quality_8mp_high, - EMbmCameraappQgn_indi_cam4_quality_8mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_8mp_high, - EMbmCameraappQgn_indi_cam4_quality_8mp_high_mask - }, - // ECamPhotoQualityDescW6mLarge - { - EMbmCameraappQgn_indi_cam4_quality_6mp_high, - EMbmCameraappQgn_indi_cam4_quality_6mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_6mp_high, - EMbmCameraappQgn_indi_cam4_quality_6mp_high_mask - }, - // ECamPhotoQualityDesc5mLarge - { - EMbmCameraappQgn_indi_cam4_quality_5mp_high, - EMbmCameraappQgn_indi_cam4_quality_5mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_5mp_high, - EMbmCameraappQgn_indi_cam4_quality_5mp_high_mask - }, - // ECamPhotoQualityDesc3mLarge - { - EMbmCameraappQgn_indi_cam4_quality_3mp_high, - EMbmCameraappQgn_indi_cam4_quality_3mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_3mp_high, - EMbmCameraappQgn_indi_cam4_quality_3mp_high_mask - }, - // ECamPhotoQualityDesc2mLarge - { - EMbmCameraappQgn_indi_cam4_quality_2mp_high, - EMbmCameraappQgn_indi_cam4_quality_2mp_high_mask, - EMbmCameraappQgn_indi_cam4_quality_2mp_high, - EMbmCameraappQgn_indi_cam4_quality_2mp_high_mask - }, - // ECamPhotoQualityDesc3mMed - { - EMbmCameraappQgn_indi_cam4_quality_3mp_medium, - EMbmCameraappQgn_indi_cam4_quality_3mp_medium_mask, - EMbmCameraappQgn_indi_cam4_quality_3mp_medium, - EMbmCameraappQgn_indi_cam4_quality_3mp_medium_mask - }, - // ECamPhotoQualityDesc2mMed - { - EMbmCameraappQgn_indi_cam4_quality_2mp_medium, - EMbmCameraappQgn_indi_cam4_quality_2mp_medium_mask, - EMbmCameraappQgn_indi_cam4_quality_2mp_medium, - EMbmCameraappQgn_indi_cam4_quality_2mp_medium_mask - }, - // ECamPhotoQualityDesc1mMed - { - EMbmCameraappQgn_indi_cam4_quality_1mp_low, //Medium icon missing!! - EMbmCameraappQgn_indi_cam4_quality_1mp_low_mask, - EMbmCameraappQgn_indi_cam4_quality_1mp_low, - EMbmCameraappQgn_indi_cam4_quality_1mp_low_mask - }, - // ECamPhotoQualityDesc1_3mSmall - { - EMbmCameraappQgn_indi_cam4_quality_13mp_low, - EMbmCameraappQgn_indi_cam4_quality_13mp_low_mask, - EMbmCameraappQgn_indi_cam4_quality_13mp_low, - EMbmCameraappQgn_indi_cam4_quality_13mp_low_mask - }, - // ECamPhotoQualityDesc1mSmall - { - EMbmCameraappQgn_indi_cam4_quality_1mp_low, - EMbmCameraappQgn_indi_cam4_quality_1mp_low_mask, - EMbmCameraappQgn_indi_cam4_quality_1mp_low, - EMbmCameraappQgn_indi_cam4_quality_1mp_low_mask - }, - // ECamPhotoQualityDesc0_8mMed - { - EMbmCameraappQgn_indi_cam4_quality_08mp_low, - EMbmCameraappQgn_indi_cam4_quality_08mp_low_mask, - EMbmCameraappQgn_indi_cam4_quality_08mp_low, - EMbmCameraappQgn_indi_cam4_quality_08mp_low_mask - }, - // ECamPhotoQualityDescMms - { - EMbmCameraappQgn_indi_cam4_quality_03mp_low, - EMbmCameraappQgn_indi_cam4_quality_03mp_low_mask, - EMbmCameraappQgn_indi_cam4_quality_03mp_low, - EMbmCameraappQgn_indi_cam4_quality_03mp_low_mask - } - }; -__ASSERT_COMPILE( (sizeof(KCamImageIcons) / sizeof(TCamQualityIcons)) == ECamPhotoQualityDescLast ); - -// Video quality icons, settings view and precapture -// Array indexed quality description ID -const TCamQualityIcons KCamVideoIcons[] = - { - // ECamVideoQualityDescHDHighest - { - EMbmCameraappQgn_indi_cam4_quality_hd, - EMbmCameraappQgn_indi_cam4_quality_hd_mask, - EMbmCameraappQgn_indi_cam4_quality_hd, - EMbmCameraappQgn_indi_cam4_quality_hd_mask - }, - // ECamVideoQualityDescWidescreenHighest - { - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask, - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask - }, - // ECamVideoQualityDescTVHigh - { - EMbmCameraappQgn_indi_vid4_quality_tv_high, - EMbmCameraappQgn_indi_vid4_quality_tv_high_mask, - EMbmCameraappQgn_indi_vid4_quality_tv_high, - EMbmCameraappQgn_indi_vid4_quality_tv_high_mask - }, - // ECamVideoQualityDescHigh - { - EMbmCameraappQgn_indi_vid4_quality_high, - EMbmCameraappQgn_indi_vid4_quality_high_mask, - EMbmCameraappQgn_indi_vid4_quality_high, - EMbmCameraappQgn_indi_vid4_quality_high_mask - }, - // ECamVideoQualityDescWidescreenHigh - { - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask, - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask - }, - // ECamVideoQualityDescWidescreenNorm - { - // use high icons for now, until the correct ones can be found from the build - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask, - EMbmCameraappQgn_indi_cam4_quality_wide_high, - EMbmCameraappQgn_indi_cam4_quality_wide_high_mask - //EMbmCameraappQgn_indi_cam4_quality_wide_normal, - //EMbmCameraappQgn_indi_cam4_quality_wide_normal_mask, - //EMbmCameraappQgn_indi_cam4_quality_wide_normal, - //EMbmCameraappQgn_indi_cam4_quality_wide_normal_mask - }, - // ECamVideoQualityDescTVNorm - { - EMbmCameraappQgn_indi_vid4_quality_tv_normal, - EMbmCameraappQgn_indi_vid4_quality_tv_normal_mask, - EMbmCameraappQgn_indi_vid4_quality_tv_normal, - EMbmCameraappQgn_indi_vid4_quality_tv_normal_mask - }, - // ECamVideoQualityDescNorm - { - EMbmCameraappQgn_indi_vid4_quality_normal, - EMbmCameraappQgn_indi_vid4_quality_normal_mask, - EMbmCameraappQgn_indi_vid4_quality_normal, - EMbmCameraappQgn_indi_vid4_quality_normal_mask - }, - // ECamVideoQualityDescWebHigh - { - EMbmCameraappQgn_indi_vid4_quality_email_high, - EMbmCameraappQgn_indi_vid4_quality_email_high_mask, - EMbmCameraappQgn_indi_vid4_quality_email_high, - EMbmCameraappQgn_indi_vid4_quality_email_high_mask - }, - // ECamVideoQualityDescWebNorm - { - EMbmCameraappQgn_indi_vid4_quality_email_normal, - EMbmCameraappQgn_indi_vid4_quality_email_normal_mask, - EMbmCameraappQgn_indi_vid4_quality_email_normal, - EMbmCameraappQgn_indi_vid4_quality_email_normal_mask - }, - // ECamVideoQualityDescMMS - { - EMbmCameraappQgn_indi_cam4_quality_sharing, - EMbmCameraappQgn_indi_cam4_quality_sharing_mask, - EMbmCameraappQgn_indi_cam4_quality_sharing, - EMbmCameraappQgn_indi_cam4_quality_sharing_mask - }, - // ECamVideoQualityDescSharing - { - EMbmCameraappQgn_indi_cam4_quality_sharing, - EMbmCameraappQgn_indi_cam4_quality_sharing_mask, - EMbmCameraappQgn_indi_cam4_quality_sharing, - EMbmCameraappQgn_indi_cam4_quality_sharing_mask - } - }; -__ASSERT_COMPILE( (sizeof(KCamVideoIcons) / sizeof(TCamQualityIcons)) == ECamVideoQualityDescLast ); - -// Icons and mask for each video type (mp4, 3gp etc.) -const TCamFileTypeIcons KCamVideoTypeIcons[] = - { - { - EMbmCameraappQgn_prop_cam4_codec_mp4, - EMbmCameraappQgn_prop_cam4_codec_mp4_mask - }, - { - EMbmCameraappQgn_prop_cam4_codec_3gp, - EMbmCameraappQgn_prop_cam4_codec_3gp_mask - } - }; -__ASSERT_COMPILE( (sizeof(KCamVideoTypeIcons) / sizeof(TCamFileTypeIcons)) == ECamVideoTypeLast ); - -// Mime types for mapping from strings to our enum -_LIT8( KCamMimeMp4, "video/mp4" ); -_LIT8( KCamMime3gpp, "video/3gpp" ); - -// Camera configuration panic id -_LIT( KCamConfigPanicId, "CAM-CONF" ); - -// Constants for mapping CamcorderVisible to small/medium/large image -const TInt KCamImageLargeTypeMin = 300; // >= 300 = large -const TInt KCamImageMediumTypeMin = 200; // 200-299 = medium, otherwise small - -// Constants for mapping CamcorderVisible value to video quality description -const TCamVideoQualityMapping - KCamVideoQualityMappings[] = - { - { ECamVideoQualityDescHDHighest, 500 }, - { ECamVideoQualityDescWidescreenHighest, 490 }, - { ECamVideoQualityDescTVHigh, 450 }, - { ECamVideoQualityDescHigh, 400 }, - { ECamVideoQualityDescWidescreenHigh, 375 }, - { ECamVideoQualityDescWidescreenNorm, 365 }, - { ECamVideoQualityDescTVNorm, 350 }, - { ECamVideoQualityDescNorm, 300 }, - { ECamVideoQualityDescWebHigh, 250 }, - { ECamVideoQualityDescWebNorm, 200 }, - { ECamVideoQualityDescMMS, 90 }, - { ECamVideoQualityDescSharing, 1 } - }; -__ASSERT_COMPILE( (sizeof(KCamVideoQualityMappings) / sizeof(TCamVideoQualityMapping)) == ECamVideoQualityDescLast ); - - -#endif // CAMCONFIGURATIONCONSTANTS_H - -// End of file - -