100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang/* 200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** 300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** Copyright 2008, The Android Open Source Project 400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** 500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** Licensed under the Apache License, Version 2.0 (the "License"); 600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** you may not use this file except in compliance with the License. 700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** You may obtain a copy of the License at 800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** 900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** http://www.apache.org/licenses/LICENSE-2.0 1000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** 1100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** Unless required by applicable law or agreed to in writing, software 1200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** distributed under the License is distributed on an "AS IS" BASIS, 1300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** See the License for the specific language governing permissions and 1500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang** limitations under the License. 1600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang*/ 1700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#ifndef ANDROID_HARDWARE_QCAMERA_PARAMETERS_H 1800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#define ANDROID_HARDWARE_QCAMERA_PARAMETERS_H 1900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 2000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang//#include <utils/KeyedVector.h> 2100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang//#include <utils/String8.h> 2200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#include <camera/CameraParameters.h> 2300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 2400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wangnamespace android { 2500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 2600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wangstruct FPSRange{ 2700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang int minFPS; 2800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang int maxFPS; 2900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang FPSRange(){ 3000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang minFPS=0; 3100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang maxFPS=0; 3200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang }; 3300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang FPSRange(int min,int max){ 3400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang minFPS=min; 3500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang maxFPS=max; 3600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang }; 3700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang}; 3800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wangclass QCameraParameters: public CameraParameters 3900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang{ 4000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wangpublic: 4100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#if 1 4200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang QCameraParameters() : CameraParameters() {}; 4300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang QCameraParameters(const String8 ¶ms): CameraParameters(params) {}; 4400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang #else 4500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang QCameraParameters() : CameraParameters() {}; 4600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang QCameraParameters(const String8 ¶ms) { unflatten(params); } 4700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#endif 4800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang ~QCameraParameters(); 4900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 5000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Supported PREVIEW/RECORDING SIZES IN HIGH FRAME RATE recording, sizes in pixels. 5100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Example value: "800x480,432x320". Read only. 5200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_HFR_SIZES[]; 5300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // The mode of preview frame rate. 5400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Example value: "frame-rate-auto, frame-rate-fixed". 5500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_PREVIEW_FRAME_RATE_MODE[]; 5600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_PREVIEW_FRAME_RATE_MODES[]; 5700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_PREVIEW_FRAME_RATE_AUTO_MODE[]; 5800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_PREVIEW_FRAME_RATE_FIXED_MODE[]; 5900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 6000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SKIN_TONE_ENHANCEMENT[] ; 6100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_SKIN_TONE_ENHANCEMENT_MODES[] ; 6200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 6300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Touch Af/AEC settings. 6400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_TOUCH_AF_AEC[]; 6500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_TOUCH_AF_AEC[]; 6600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Touch Index for AEC. 6700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_TOUCH_INDEX_AEC[]; 6800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Touch Index for AF. 6900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_TOUCH_INDEX_AF[]; 7000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Current auto scene detection mode. 7100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Example value: "off" or SCENE_DETECT_XXX constants. Read/write. 7200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SCENE_DETECT[]; 7300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Supported auto scene detection settings. 7400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Example value: "off,backlight,snow/cloudy". Read only. 7500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_SCENE_DETECT[]; 7600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Returns true if video snapshot is supported. That is, applications 7700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_FULL_VIDEO_SNAP_SUPPORTED[]; 7800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_POWER_MODE_SUPPORTED[]; 7900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 8000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_ISO_MODE[]; 8100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_ISO_MODES[]; 8200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_LENSSHADE[] ; 8300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_LENSSHADE_MODES[] ; 8400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 8500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_AUTO_EXPOSURE[]; 8600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_AUTO_EXPOSURE[]; 8700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 8800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_GPS_LATITUDE_REF[]; 8900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_GPS_LONGITUDE_REF[]; 9000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_GPS_ALTITUDE_REF[]; 9100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_GPS_STATUS[]; 9200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_EXIF_DATETIME[]; 9300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_MEMORY_COLOR_ENHANCEMENT[]; 9400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_MEM_COLOR_ENHANCE_MODES[]; 9500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 9600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 9700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_POWER_MODE[]; 9800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 9900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_ZSL[]; 10000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_ZSL_MODES[]; 10100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 10200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_CAMERA_MODE[]; 10300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 10400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_VIDEO_HIGH_FRAME_RATE[]; 10500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_VIDEO_HIGH_FRAME_RATE_MODES[]; 10600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_HIGH_DYNAMIC_RANGE_IMAGING[]; 10700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_HDR_IMAGING_MODES[]; 10800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_AE_BRACKET_HDR[]; 10900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 11000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 11100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // DENOISE 11200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_DENOISE[]; 11300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_DENOISE[]; 11400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 11500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Selectable zone AF. 11600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SELECTABLE_ZONE_AF[]; 11700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_SELECTABLE_ZONE_AF[]; 11800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 11900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Face Detection 12000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_FACE_DETECTION[]; 12100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_FACE_DETECTION[]; 12200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 12300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang //Redeye Reduction 12400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_REDEYE_REDUCTION[]; 12500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_REDEYE_REDUCTION[]; 12600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char EFFECT_EMBOSS[]; 12700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char EFFECT_SKETCH[]; 12800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char EFFECT_NEON[]; 12900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 13000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Touch AF/AEC 13100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char TOUCH_AF_AEC_OFF[] ; 13200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char TOUCH_AF_AEC_ON[] ; 13300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_MODE_ASD[]; 13400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_MODE_BACKLIGHT[]; 13500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_MODE_FLOWERS[]; 13600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_MODE_AR[]; 13700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_DETECT_OFF[]; 13800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SCENE_DETECT_ON[]; 13900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char PIXEL_FORMAT_YUV420SP_ADRENO[]; // ADRENO 14000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char PIXEL_FORMAT_RAW[]; 14100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char PIXEL_FORMAT_YV12[]; // NV12 14200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char PIXEL_FORMAT_NV12[]; //NV12 14300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Normal focus mode. Applications should call 14400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // CameraHardwareInterface.autoFocus to start the focus in this mode. 14500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char FOCUS_MODE_NORMAL[]; 14600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_AUTO[]; 14700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_HJR[] ; 14800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_100[]; 14900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_200[] ; 15000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_400[]; 15100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_800[]; 15200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ISO_1600[]; 15300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Lens Shading 15400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char LENSSHADE_ENABLE[] ; 15500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char LENSSHADE_DISABLE[] ; 15600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 15700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for auto exposure settings. 15800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AUTO_EXPOSURE_FRAME_AVG[]; 15900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AUTO_EXPOSURE_CENTER_WEIGHTED[]; 16000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AUTO_EXPOSURE_SPOT_METERING[]; 16100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 16200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SHARPNESS[]; 16300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_MAX_SHARPNESS[]; 16400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_CONTRAST[]; 16500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_MAX_CONTRAST[]; 16600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SATURATION[]; 16700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_MAX_SATURATION[]; 16800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 16900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_HISTOGRAM[] ; 17000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SUPPORTED_HISTOGRAM_MODES[] ; 17100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for HISTOGRAM 17200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char HISTOGRAM_ENABLE[] ; 17300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char HISTOGRAM_DISABLE[] ; 17400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 17500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for SKIN TONE ENHANCEMENT 17600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SKIN_TONE_ENHANCEMENT_ENABLE[] ; 17700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SKIN_TONE_ENHANCEMENT_DISABLE[] ; 17800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 17900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Denoise 18000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char DENOISE_OFF[] ; 18100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char DENOISE_ON[] ; 18200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 18300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for auto exposure settings. 18400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SELECTABLE_ZONE_AF_AUTO[]; 18500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SELECTABLE_ZONE_AF_SPOT_METERING[]; 18600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SELECTABLE_ZONE_AF_CENTER_WEIGHTED[]; 18700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char SELECTABLE_ZONE_AF_FRAME_AVERAGE[]; 18800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 18900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Face Detection settings. 19000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char FACE_DETECTION_OFF[]; 19100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char FACE_DETECTION_ON[]; 19200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 19300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for MCE settings. 19400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char MCE_ENABLE[]; 19500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char MCE_DISABLE[]; 19600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 19700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for ZSL settings. 19800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ZSL_OFF[]; 19900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char ZSL_ON[]; 20000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 20100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for HDR Bracketing settings. 20200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AE_BRACKET_HDR_OFF[]; 20300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AE_BRACKET_HDR[]; 20400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char AE_BRACKET[]; 20500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 20600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Power mode settings. 20700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char LOW_POWER[]; 20800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char NORMAL_POWER[]; 20900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 21000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for HFR settings. 21100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char VIDEO_HFR_OFF[]; 21200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char VIDEO_HFR_2X[]; 21300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char VIDEO_HFR_3X[]; 21400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char VIDEO_HFR_4X[]; 21500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 21600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Redeye Reduction settings. 21700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char REDEYE_REDUCTION_ENABLE[]; 21800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char REDEYE_REDUCTION_DISABLE[]; 21900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for HDR settings. 22000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char HDR_ENABLE[]; 22100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char HDR_DISABLE[]; 22200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 22300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for Redeye Reduction settings. 22400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // static const char REDEYE_REDUCTION_ENABLE[]; 22500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // static const char REDEYE_REDUCTION_DISABLE[]; 22600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // Values for HDR settings. 22700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // static const char HDR_ENABLE[]; 22800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang // static const char HDR_DISABLE[]; 22900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 23000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 23100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang static const char KEY_SINGLE_ISP_OUTPUT_ENABLED[]; 23200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 23300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang enum { 23400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang CAMERA_ORIENTATION_UNKNOWN = 0, 23500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang CAMERA_ORIENTATION_PORTRAIT = 1, 23600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang CAMERA_ORIENTATION_LANDSCAPE = 2, 23700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang }; 23800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang int getOrientation() const; 23900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void setOrientation(int orientation); 24000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void getSupportedHfrSizes(Vector<Size> &sizes) const; 24100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void setPreviewFpsRange(int minFPS,int maxFPS); 24200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void setPreviewFrameRateMode(const char *mode); 24300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang const char *getPreviewFrameRateMode() const; 24400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void setTouchIndexAec(int x, int y); 24500bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void getTouchIndexAec(int *x, int *y) const; 24600bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void setTouchIndexAf(int x, int y); 24700bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void getTouchIndexAf(int *x, int *y) const; 24800bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang void getMeteringAreaCenter(int * x, int *y) const; 24900bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 25000bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang}; 25100bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 25200bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang}; // namespace android 25300bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang 25400bf2d2f8f42f81436d1eaa7e0672817eb834994Shuzhen Wang#endif 255