Updating INI configuration file to work with most cameras.
[profile/ivi/camera.git] / include / CamDeviceCapacity.h
1 /*\r
2  * Copyright 2012  Samsung Electronics Co., Ltd\r
3  *\r
4  * Licensed under the Flora License, Version 1.0 (the "License");\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  *        http://www.tizenopensource.org/license\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an "AS IS" BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License.\r
15  */\r
16 \r
17 \r
18 #ifndef _CCAM_DEVICE_CAPACITY_H_\r
19 #define _CCAM_DEVICE_CAPACITY_H_\r
20 \r
21 #include "cam_property.h"\r
22 \r
23 class CCamDeviceCapacity\r
24 {\r
25         //===========================================================================\r
26         // Constructor & Destructor\r
27 public:\r
28 \r
29 protected:\r
30         CCamDeviceCapacity();\r
31         virtual ~CCamDeviceCapacity();\r
32 \r
33 \r
34         //===========================================================================\r
35         // Attributes\r
36 protected:\r
37         static CCamDeviceCapacity* m_pInstance;\r
38 \r
39         typedef struct _DevCapsSupported\r
40         {\r
41                 bool    bChecked;\r
42                 bool    bSupported;\r
43         }DevCapsSupported;\r
44 \r
45         typedef struct _DevCapsMinMax\r
46         {\r
47                 bool    bChecked;\r
48                 bool    bSupported;\r
49                 int     nMin;\r
50                 int     nMax;\r
51         }DevCapsMinMax;\r
52 \r
53         typedef struct _DevCapsRange\r
54         {\r
55                 bool bChecked;\r
56                 bool bSupported;\r
57                 unsigned int unCaps;\r
58         }DevCapsRange;\r
59 \r
60         DevCapsRange m_Effect;\r
61         DevCapsMinMax   m_Zoom;\r
62 \r
63         unsigned int m_uFuncCaps;\r
64         //===========================================================================\r
65         // Interfaces\r
66 public:\r
67 \r
68         static CCamDeviceCapacity*      GetInstance();\r
69         void                                    Destroy();\r
70         void                                    ResetCaps();\r
71 \r
72         void            GetCamDevFuncCaps(unsigned int *eType, void *user_data);\r
73         bool            GetCamDevEffectCaps(unsigned int *uCapacity, void *user_data);\r
74         bool            GetCamDevZoomCaps(int *min, int *max);\r
75 \r
76 private:\r
77         bool            IsSupported(unsigned int type, CamDeviceType deviceType, void *user_data);\r
78 };\r
79 \r
80 \r
81 #endif //_CCAM_DEVICE_CAPACITY_H_\r
82 \r