camerauis/cameraapp/generic/camerauiconfigmanager/inc/CameraDynamicSettings.hrh
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Thu, 07 Jan 2010 16:18:56 +0200
changeset 0 1ddebce53859
child 1 f5ec9446e5bf
permissions -rw-r--r--
Revision: 200951 Kit: 201001

/*
* 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, 
    // 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,
    
    // 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