2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FMedia_CameraUtil.h
20 * @brief This header file contains the declarations of the utility fuctions of camera.
24 #ifndef _FMEDIA_INTERNAL_CAMERA_UTIL_H_
25 #define _FMEDIA_INTERNAL_CAMERA_UTIL_H_
28 #include <FGrpPixelFormat.h>
29 #include <FGrpDimension.h>
30 #include <FMediaTypes.h>
31 #include <FMediaCameraTypes.h>
32 #include <FGrp_BufferInfoImpl.h>
33 #include "FMedia_CameraTypes.h"
35 namespace Tizen { namespace Media
39 * @brief This class is utility for camera functionality.
43 : public Tizen::Base::Object
47 static void GetOspMediaPixelFormat(camera_pixel_format_e mmFormat, MediaPixelFormat& mediaFormat, double& sizeRatio);
48 static void GetOspMediaPixelFormat(Tizen::Graphics::PixelFormat grpFormat, MediaPixelFormat& mediaFormat, double& sizeRatio);
49 static result GetOspGrpPixelFormat(camera_pixel_format_e mmAttr, Tizen::Graphics::PixelFormat& value);
50 static result GetMmPixelFormat(Tizen::Graphics::PixelFormat value, camera_pixel_format_e& mmAttr);
52 static result GetOspCodecType(camera_pixel_format_e mmAttr, CodecType value);
54 static result GetMmFlip(CameraSelection selection, CameraFlipType value, camera_flip_e& mmAttr);
55 static result GetOspFlip(camera_flip_e mmAttr, CameraFlipType& value);
57 static result GetMmRotation(CameraRotation value, camera_rotation_e& mmAttr);
58 static result GetOspRotation(camera_rotation_e mmAttr, CameraRotation& value);
60 static result GetMmFps(int value, camera_attr_fps_e& mmAttr);
61 static result GetOspFps(camera_attr_fps_e mmAttr, int& value);
63 static result GetMmEffect(CameraEffect value, camera_attr_effect_mode_e& mmAttr);
64 static result GetOspEffect(camera_attr_effect_mode_e mmAttr, CameraEffect& vaue);
66 static result GetMmWhiteBalance(CameraWhiteBalance value, camera_attr_whitebalance_e& mmAttr);
67 static result GetOspWhiteBalance(camera_attr_whitebalance_e mmAttr, CameraWhiteBalance& value);
69 static result GetMmScene(_CameraSceneMode value, camera_attr_scene_mode_e& mmAttr);
70 static result GetOspScene(camera_attr_scene_mode_e mmAttr, _CameraSceneMode& value);
72 static result GetMmFocusMode(CameraFocusMode value, camera_attr_af_mode_e& mmAttr);
73 static result GetOspFocusMode(camera_attr_af_mode_e mmAttr, CameraFocusMode& value);
74 static result GetOspFocusMode(camera_attr_af_mode_e mmAttr, CameraFocusMode& value, bool& additionalMode, CameraFocusMode& additionalValue);
76 static result GetMmIso(CameraIsoLevel value, camera_attr_iso_e& mmAttr);
77 static result GetOspIso(camera_attr_iso_e mmAttr, CameraIsoLevel& value);
79 static result GetMmMeteringMode(CameraMeteringMode value, camera_attr_exposure_mode_e& mmAttr);
80 static result GetOspMeteringMode(camera_attr_exposure_mode_e mmAttr, CameraMeteringMode& value);
82 static result GetMmFlashMode(CameraFlashMode value, camera_attr_flash_mode_e& mmAttr);
83 static result GetOspFlashMode(camera_attr_flash_mode_e mmAttr, CameraFlashMode& value);
85 static result GetMmQuality(CameraQuality value, int& mmAttr);
86 static result GetOspQuality(int mmAttr, CameraQuality& value);
88 static result GetMmExifOrientation(CameraExifOrientation value, camera_attr_tag_orientation_e& mmAttr);
89 static result GetMmExifOrientation(CameraRotation value, camera_attr_tag_orientation_e& mmAttr);
90 static result GetOspExifOrientation(camera_attr_tag_orientation_e mmAttr, CameraExifOrientation& value);
92 static result GetDisplayRotation(CameraDirection physicalDirection, Tizen::Graphics::_BufferInfoImpl::Orientation orientation, CameraRotation& displayRotation);
93 static result GetDisplayRotation(CameraDirection physicalDirection, CameraRotation physicalRotation, Tizen::Graphics::_BufferInfoImpl::Orientation orientation, CameraRotation& displayRotation);
95 static _ResolutionType ConvertResolutionType(const Tizen::Graphics::Dimension &resolution);
97 static result ConvertColorScale(const Tizen::Base::ByteBuffer& srcBuf, Tizen::Base::ByteBuffer& dstBuf, const Tizen::Graphics::Dimension& dim);
103 _CameraUtil(const _CameraUtil& rhs);
104 _CameraUtil& operator =(const _CameraUtil& rhs);