camerauis/cameraapp/generic/camerauiconfigmanager/inc/CameraDynamicSettings.hrh
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 25 May 2010 12:22:04 +0300
branchRCL_3
changeset 16 53c8aa5d97a3
parent 9 792dfc98fb3b
permissions -rw-r--r--
Revision: 201019 Kit: 2010121

/*
* 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:  header which contains contants and enums definitions
 *
*/


#ifndef CAMERADYNAMICSETTINGS_HRH
#define CAMERADYNAMICSETTINGS_HRH

#include <e32keys.h>
#include <ecam.h>
#include "CamSettings.hrh"
#include "CamSettingsInternal.hrh"

//Constants
const TInt KCamLastSettingItem = -9999;


// Camera UI dynamic setting items

enum TCamDynamicSettings
    {
    ECamDynamicSettingsMin,

    // settings with no configured setting items
    ECamDynamicSettingSecondaryCamera,
    ECamDynamicSettingDSAViewFinder,
    ECamDynamicSettingLensCover,
    ECamDynamicSettingXenonFlash,
    ECamDynamicSettingExtLightSensitivity,
    ECamDynamicSettingFaceTracking,
    ECamDynamicSettingOpticalJoyStick,
    ECamDynamicSettingOneClickUpload,
    ECamDynamicSettingVideoLight,
    ECamDynamicSettingAutoFocus,
    ECamDynamicSettingVideoStabilization,
    ECamDynamicSettingOrientationSensor,
    ECamDynamicSettingLocation,
    ECamDynamicSettingKeyLockWatcher,
    ECamDynamicSettingExtDigitalZoom,
    ECamDynamicSettingPhoto,
    ECamDynamicSettingPublishZoomState,
    ECamDynamicSettingAutofocusSetInHyperfocalAtStartup,
    ECamDynamicSettingRequiredRamMemory,
    ECamDynamicSettingCriticalLevelRamMemory,
    ECamDynamicSettingRequiredRamMemoryFocusGained,
    ECamDynamicSettingCriticalLevelRamMemoryFocusGained,
    ECamDynamicSetting2ndCameraOrientation, 
    ECamDynamicSettingUIOrientationOverride,
    ECamDynamicSettingThumbnailManagerAPI,
    ECamDynamicSettingBurstMode,
    ECamDynamicSettingContinuousAF, 
    ECamDynamicSettingCustomCaptureButton,

    // Primary/secondary camera capture keys
    ECamDynamicSettingPCCaptureKeys,
    ECamDynamicSettingSCCaptureKeys,
    ECamDynamicSettingPCAutoFocusKeys,
    ECamDynamicSettingSCAutoFocusKeys,

    // settings with configured setting items
    ECamDynamicSettingWhiteBalance,
    ECamDynamicSettingColorTone,
    ECamDynamicSettingEV,
    ECamDynamicSettingFlashMode,
    ECamDynamicSettingLightSensitivity,
    ECamDynamicSettingSharpness,
    ECamDynamicSettingContrast,
    ECamDynamicSettingBrightness,

    // primary and secondary camera zoom-in and zoom-out settings
    ECamDynamicSettingPCZoomIn,
    ECamDynamicSettingPCZoomOut,
    ECamDynamicSettingSCZoomIn,
    ECamDynamicSettingSCZoomOut,
    
    // primary and secondary camera still/video zoom ( digital, extended & optical ) limits
    //Image/Video based on supported resolutions
    ECamDynamicSettingMaxDigitalZoomLimits,
    ECamDynamicSettingMaxExtendedZoomLimits,
    ECamDynamicSettingMaxOpticalZoomLimits,
    ECamDynamicSettingZoomLAF,
    
    // image scene mode and scene specific setting cr keys
    ECamDynamicSettingImageSceneModeAuto,
    ECamDynamicSettingImageSceneModeUser,
    ECamDynamicSettingImageSceneModeMacro,
    ECamDynamicSettingImageSceneModePotrait,
    ECamDynamicSettingImageSceneModeScenery,
    ECamDynamicSettingImageSceneModeSports,
    ECamDynamicSettingImageSceneModeNight,
    ECamDynamicSettingImageSceneModeNightPotrait,
    
    ECamDynamicSettingBurstFileSizeEstimateFactor,
    
    ECamDynamicSettingZoomDelays,
    ECamDynamicSettingScreenModes,
    
    // video scene mode and scene specific setting cr keys
    ECamDynamicSettingVideoSceneModeNormal,
    ECamDynamicSettingVideoSceneModeNight,
    ECamDynamicSettingVideoSceneModeLowLight,
    
    // capture tone related enums
    ECamDynamicSettingCaptureToneDelaySupport,
    ECamDynamicSettingCaptureToneDelayValue,

    ECamDynamicSettingsMax
    };


// Strings per settings and the order of the strings should be matched
// exactly to the order of the enum's defined in the enum arrays for
// each setting. 

//And "Strings" are defined according to the settings from ecam values.

/*
* Color tone enums and strings
*/

// Photo scene settings 
const TInt KCamColorToneEnums[] =
  {
    ECamColourFilterColour,
    ECamColourFilterBlackAndWhite,
    ECamColourFilterSepia,
    ECamColourFilterNegative,
    ECamColourFilterVivid,
    KCamLastSettingItem
  };

const TUint16* const KCamColorToneStrings[] =
  {
  (const TUint16* const)_S16("EEffectNone"),
  (const TUint16* const)_S16("EEffectMonochrome"),
  (const TUint16* const)_S16("EEffectSepia"),
  (const TUint16* const)_S16("EEffectNegative"),
  (const TUint16* const)_S16("EEffectVivid")
  };


/*
* White balance enums and strings
*/

const TInt KCamWhiteBalanceEnums[] =
  {
    ECamWhiteBalanceAWB,
    ECamWhiteBalanceDaylight,
    ECamWhiteBalanceCloudy,
    ECamWhiteBalanceTungsten,
    ECamWhiteBalanceFlourescent,
    KCamLastSettingItem
  };

const TUint16* const KCamWhiteBalanceStrings[] =
  {
  ( const TUint16* const )_S16("EWBAuto"),
  ( const TUint16* const )_S16("EWBDaylight"),
  ( const TUint16* const )_S16("EWBCloudy"),
  ( const TUint16* const )_S16("EWBTungsten"),
  ( const TUint16* const )_S16("EWBFluorescent")
  };


/*
* Flash mode setting enums and corresponding strings
* order of enums and strings "should" match
*/
const TInt KCamFlashModeEnums[] =
  {
    ECamFlashAuto,
    ECamFlashForced,
    ECamFlashAntiRedEye,
    ECamFlashOff,
    KCamLastSettingItem
  };

const TUint16* const KCamFlashModeStrings[] =
  {
  (const TUint16* const)_S16("EFlashAuto"),
  (const TUint16* const)_S16("EFlashForced"),
  (const TUint16* const)_S16("EFlashRedEyeReduce"),
  (const TUint16* const)_S16("EFlashNone")
  };




/*
 * Scene mode setting enums; and corresponding strings
 * order of enums and strings "should" match
 */
 const TInt KCamSceneModeEnums[] =
    {
      ECamSceneAuto,
      ECamSceneUser,
      ECamSceneMacro,
      ECamScenePortrait,
      ECamSceneScenery,
      ECamSceneSports,
      ECamSceneNight,
      ECamSceneNightPortrait,
      ECamSceneNormal,
      ECamSceneLowLight,
      // Exposure modes for each scene
      ECamSceneAEModeAuto,
      ECamSceneAEModeNight,
      ECamSceneAEModeBacklight,
      ECamSceneAEModeCenter,
      ECamSceneAEModeSports,
      // AF modes for each scene
      ECamSceneAFModeMacro,
      ECamSceneAFPortrait,
      ECamSceneAFModeNormal,
      ECamSceneAFModeInfinity,
      ECamSceneAFModeHyperfocal,
      ECamSceneAFModeContinuous,
      // flash mode
      ECamFlashAuto,
      ECamFlashForced,
      ECamFlashAntiRedEye,
      ECamFlashOff,
      // white balance ecam
      ECamWhiteBalanceAWB,
      ECamWhiteBalanceDaylight,
      ECamWhiteBalanceCloudy,
      ECamWhiteBalanceTungsten,
      ECamWhiteBalanceFlourescent,
      // light sensitivity enums
      ECamLightSensitivityAuto,
      ECamLightSensitivityLow,
      ECamLightSensitivityLowMed,
      ECamLightSensitivityMed,
      ECamLightSensitivityMedHigh,
      ECamLightSensitivityHigh,
      // sharpness modes that ui supports
      ECamImageSharpnessNorm,
      ECamImageSharpnessSoft,
      ECamImageSharpnessHard,
      // contrast modes that ui supports
      ECamContrastNorm,
      ECamContrastPlus,
      ECamContrastNeg,
      KCamLastSettingItem
    }; 
 
/*
* Scene mode specific strings
*/
const TUint16* const KCamSceneModeStrings[] =
  {
  // possible scene modes
  (const TUint16* const)_S16("ECamSceneAuto"),
  (const TUint16* const)_S16("ECamSceneUser"),
  (const TUint16* const)_S16("ECamSceneMacro"),
  (const TUint16* const)_S16("ECamScenePortrait"),
  (const TUint16* const)_S16("ECamSceneScenery"),
  (const TUint16* const)_S16("ECamSceneSports"),
  (const TUint16* const)_S16("ECamSceneNight"),
  (const TUint16* const)_S16("ECamSceneNightPortrait"),
  (const TUint16* const)_S16("ECamSceneNormal"),
  (const TUint16* const)_S16("ECamSceneLowLight"),
  // possible exposure modes
  (const TUint16* const)_S16("EExposureAuto"),
  (const TUint16* const)_S16("EExposureNight"),
  (const TUint16* const)_S16("EExposureBacklight"),
  (const TUint16* const)_S16("EExposureCenter"),
  (const TUint16* const)_S16("EExposureSport"),
  // possible AF mode for each specific scene
  (const TUint16* const)_S16("ECamSceneAFModeMacro"),
  (const TUint16* const)_S16("ECamSceneAFPortrait"),
  (const TUint16* const)_S16("ECamSceneAFModeNormal"),
  (const TUint16* const)_S16("ECamSceneAFModeInfinity"),
  (const TUint16* const)_S16("ECamSceneAFModeHyperfocal"),
  (const TUint16* const)_S16("ECamSceneAFModeContinuous"),
  //possible flash modes
  (const TUint16* const)_S16("EFlashAuto"),
  (const TUint16* const)_S16("EFlashForced"),
  (const TUint16* const)_S16("EFlashRedEyeReduce"),
  (const TUint16* const)_S16("EFlashNone"),
  // white balance strings
  ( const TUint16* const )_S16("EWBAuto"),
  ( const TUint16* const )_S16("EWBDaylight"),
  ( const TUint16* const )_S16("EWBCloudy"),
  ( const TUint16* const )_S16("EWBTungsten"),
  ( const TUint16* const )_S16("EWBFluorescent"),
  // light sensitivity enums
  (const TUint16* const)_S16("ECamLightSensitivityAuto"),
  (const TUint16* const)_S16("ECamLightSensitivityLow"),
  (const TUint16* const)_S16("ECamLightSensitivityLowMed"),
  (const TUint16* const)_S16("ECamLightSensitivityMed"),
  (const TUint16* const)_S16("ECamLightSensitivityMedHigh"),
  (const TUint16* const)_S16("ECamLightSensitivityHigh"),
  // sharpness modes that ui supports
  (const TUint16* const)_S16("ECamImageSharpnessNorm"),
  (const TUint16* const)_S16("ECamImageSharpnessSoft"),
  (const TUint16* const)_S16("ECamImageSharpnessHard"),
  // contrast modes that ui supports
  (const TUint16* const)_S16("ECamContrastNorm"),
  (const TUint16* const)_S16("ECamContrastPlus"),
  (const TUint16* const)_S16("ECamContrastNeg"),  
  };



#endif //CAMERADYNAMICSETTINGS_HRH

//End of file