camerauis/cameraxui/cxengine/src/cxesettingsmappersymbian.cpp
branchRCL_3
changeset 24 bac7acad7cb3
parent 23 61bc0f252b2b
child 25 2c87b2808fd7
--- a/camerauis/cameraxui/cxengine/src/cxesettingsmappersymbian.cpp	Tue Aug 31 15:03:46 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,303 +0,0 @@
-/*
-* 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:
-*
-*/
-
-#include <QRegExp>
-#include <ecamadvsettingsuids.hrh>
-
-#include "cxeautofocuscontrol.h"
-#include "cxesettingsmappersymbian.h"
-#include "cxutils.h"
-#include "cxenamespace.h"
-
-using namespace Cxe;
-
-
-
-/*!
-    Map Cxe::Whitebalance value to its corresponding CCamera value.
-*/
-CCamera::TWhiteBalance CxeSettingsMapperSymbian::Map2CameraWb(
-        Cxe::Whitebalance whiteBalance )
-{
-    CCamera::TWhiteBalance wb(CCamera::EWBAuto);
-
-    switch (whiteBalance) {
-        case WhitebalanceSunny:
-            wb = CCamera::EWBDaylight;
-            break;
-        case WhitebalanceCloudy:
-            wb = CCamera::EWBCloudy;
-            break;
-        case WhitebalanceIncandescent:
-            wb = CCamera::EWBTungsten;
-            break;
-        case WhitebalanceFluorescent:
-            wb = CCamera::EWBFluorescent;
-            break;
-        case WhitebalanceAutomatic:
-        default:
-            wb = CCamera::EWBAuto;
-            break;
-    }
-    return wb;
-}
-
-
-/*!
-    Map Cxe::FlashMode to its corresponding CCamera value.
-*/
-CCamera::TFlash CxeSettingsMapperSymbian::Map2CameraFlash(
-        Cxe::FlashMode flashMode)
-{
-    CCamera::TFlash flash(CCamera::EFlashAuto);
-
-    switch (flashMode) {
-        case FlashAntiRedEye:
-            flash = CCamera::EFlashRedEyeReduce;
-            break;
-        case FlashOn:
-            flash = CCamera::EFlashForced;
-            break;
-        case FlashOff:
-            flash = CCamera::EFlashNone;
-            break;
-        case FlashAuto:
-        default:
-            flash = CCamera::EFlashAuto;
-            break;
-    }
-    return flash;
-}
-
-
-/*!
-    Map Cxe::ExposureMode to its corresponding CCamera value.
-*/
-CCamera::TExposure CxeSettingsMapperSymbian::Map2CameraExposureMode(
-        Cxe::ExposureMode exposureMode)
-{
-    CCamera::TExposure expo(CCamera::EExposureAuto);
-
-    switch (exposureMode) {
-        case ExposureNight:
-            expo = CCamera::EExposureNight;
-            break;
-        case ExposureBacklight:
-            expo = CCamera::EExposureBacklight;
-            break;
-        case ExposureSport:
-            expo = CCamera::EExposureSport;
-            break;
-        case ExposureAuto:
-        default:
-            expo = CCamera::EExposureAuto;
-            break;
-    }
-
-    return expo;
-}
-
-
-/*!
-    Map Cxe::ExposureMode to its corresponding CCamera value.
-*/
-CCamera::CCameraImageProcessing::TEffect
-        CxeSettingsMapperSymbian::Map2CameraEffect(Cxe::Colortone colorTone)
-{
-    CCamera::CCameraImageProcessing::TEffect effect(
-            CCamera::CCameraImageProcessing::EEffectNone);
-
-    switch(colorTone) {
-        case ColortoneBlackAndWhite:
-            effect = CCamera::CCameraImageProcessing::EEffectMonochrome;
-            break;
-        case ColortoneSepia:
-            effect = CCamera::CCameraImageProcessing::EEffectSepia;
-            break;
-        case ColortoneNegative:
-            effect = CCamera::CCameraImageProcessing::EEffectNegative;
-            break;
-        case ColortoneVivid:
-            effect = CCamera::CCameraImageProcessing::EEffectVivid;
-            break;
-        case ColortoneNormal:
-        default:
-            effect = CCamera::CCameraImageProcessing::EEffectNone;
-            break;
-    }
-    return effect;
-}
-
-/*!
-    Map CxeAutoFocusControl::Mode to its corresponding CCamera value.
-*/
-CCamera::CCameraAdvancedSettings::TFocusRange
-CxeSettingsMapperSymbian::Map2CameraAutofocus(CxeAutoFocusControl::Mode afMode)
-{
-    CCamera::CCameraAdvancedSettings::TFocusRange value;
-
-    switch (afMode) {
-        case CxeAutoFocusControl::Macro:
-            value = CCamera::CCameraAdvancedSettings::EFocusRangeMacro;
-            break;
-        case CxeAutoFocusControl::Portrait:
-            value = CCamera::CCameraAdvancedSettings::EFocusRangeAuto;
-            break;
-        case CxeAutoFocusControl::Infinity:
-            value = CCamera::CCameraAdvancedSettings::EFocusRangeInfinite;
-            break;
-        case CxeAutoFocusControl::Hyperfocal:
-            value = CCamera::CCameraAdvancedSettings::EFocusRangeHyperfocal;
-            break;
-        case CxeAutoFocusControl::Auto:     // Fall through
-        default:
-            value = CCamera::CCameraAdvancedSettings::EFocusRangeAuto;
-            break;
-    }
-    return value;
-}
-
-
-
-/*!
-    Map Cxe::DeviceOrientation to MCameraOrientation.
-*/
-MCameraOrientation::TOrientation
-        CxeSettingsMapperSymbian::Map2CameraOrientation(Cxe::DeviceOrientation
-                                                        uiOrientation)
-{
-    MCameraOrientation::TOrientation cameraOrientation;
-
-    switch (uiOrientation) {
-        case Orientation90:
-            cameraOrientation = MCameraOrientation::EOrientation90;
-            break;
-        case Orientation180:
-            cameraOrientation = MCameraOrientation::EOrientation180;
-            break;
-        case Orientation270:
-            cameraOrientation = MCameraOrientation::EOrientation270;
-            break;
-        case Orientation0: // default
-        default:
-            cameraOrientation = MCameraOrientation::EOrientation0;
-            break;
-        }
-    return cameraOrientation;
-}
-
-/*!
-    Helper data structure to define how MIME types are mapped to
-    MCameraUseCaseHint enumerations.
-*/
-class CxeCodecMapping
-{
-public:
-    CxeCodecMapping(const char *regexp, MCameraUseCaseHint::TVideoCodec codec,
-                    MCameraUseCaseHint::TVideoProfile profile) :
-    mRegExp(regexp),
-    mCodec(codec),
-    mProfile(profile)
-    {
-    // No implementation needed
-    }
-
-public:
-    QString mRegExp;
-    MCameraUseCaseHint::TVideoCodec mCodec;
-    MCameraUseCaseHint::TVideoProfile mProfile;
-};
-
-/*!
-    Map video codec MIME type from ICM to enumerations used by the
-    MCameraUseCaseHint custom interface
-
-    \param[in] videoDetails CxeVideoDetails defining the current video quality.
-    \param[out] codec       Reference where to store the video codec info.
-                            MCameraUseCaseHint::ECodecUnknown if not known.
-    \param[out] profile     Reference where to store the video profile info.
-                            MCameraUseCaseHint::EProfileUnknown if not known.
-*/
-void CxeSettingsMapperSymbian::Map2UseCaseHintVideoParameters(
-        const CxeVideoDetails &videoDetails,
-        MCameraUseCaseHint::TVideoCodec &codec,
-        MCameraUseCaseHint::TVideoProfile &profile)
-{
-    typedef QPair<MCameraUseCaseHint::TVideoCodec,
-                  MCameraUseCaseHint::TVideoProfile> CxeCodecAndProfile;
-
-    codec = MCameraUseCaseHint::ECodecUnknown;
-    profile = MCameraUseCaseHint::EProfileUnknown;
-
-    // Create a mapping table for mapping from the MIME type string
-    // to MCameraUseCaseHint codec and profile enums using QRegExp. Specific
-    // rules should be before more generic ones because the map is iterated in
-    // order.
-    QList<CxeCodecMapping> mappingTable;
-
-    mappingTable << CxeCodecMapping("^video/H263-2000",
-                                    MCameraUseCaseHint::ECodecH263,
-                                    MCameraUseCaseHint::EProfileH263P0L10)
-
-                 << CxeCodecMapping("^video/H264.*profile-level-id=42801E",
-                                    MCameraUseCaseHint::ECodecH264,
-                                    MCameraUseCaseHint::EProfileH264BpL3)
-
-                 << CxeCodecMapping("^video/H264.*profile-level-id=42801F",
-                                    MCameraUseCaseHint::ECodecH264,
-                                    MCameraUseCaseHint::EProfileH264BpL3_1)
-
-                 << CxeCodecMapping("^video/H264", // Other H.264 profile
-                                    MCameraUseCaseHint::ECodecH264,
-                                    MCameraUseCaseHint::EProfileUnknown)
-
-                 << CxeCodecMapping("^video/mp4v-es.*profile-level-id=2",
-                                    MCameraUseCaseHint::ECodecMpeg4,
-                                    MCameraUseCaseHint::EProfileMPEG4SpL2)
-
-                 << CxeCodecMapping("^video/mp4v-es.*profile-level-id=3",
-                                    MCameraUseCaseHint::ECodecMpeg4,
-                                    MCameraUseCaseHint::EProfileMPEG4SpL3)
-
-                 << CxeCodecMapping("^video/mp4v-es.*profile-level-id=4",
-                                    MCameraUseCaseHint::ECodecMpeg4,
-                                    MCameraUseCaseHint::EProfileMPEG4SpL4a)
-
-                 << CxeCodecMapping("^video/mp4v-es", // Other MPEG-4 profile
-                                    MCameraUseCaseHint::ECodecMpeg4,
-                                    MCameraUseCaseHint::EProfileUnknown);
-
-    bool found = false;
-    for (int i = 0; i < mappingTable.count() && !found; i++) {
-        QRegExp regExp(mappingTable[i].mRegExp, Qt::CaseInsensitive);
-        if (regExp.indexIn(videoDetails.mVideoCodecMimeType) >= 0) {
-            found = true;
-            codec = mappingTable[i].mCodec;
-            profile = mappingTable[i].mProfile;
-
-            CX_DEBUG(("Matched codec %d, profile 0x%x for '%s'", codec, profile,
-                     videoDetails.mVideoCodecMimeType.toAscii().constData()));
-        }
-    }
-
-    if (!found) {
-        CX_DEBUG(("No codec/profile found for '%s'",
-                 videoDetails.mVideoCodecMimeType.toAscii().constData()));
-    }
-}
-
-// end of file