[FEATURE] Implement kernel -> user connection
[platform/core/system/swap-manager.git] / daemon / device_vconf.c
1 /*
2  *  DA manager
3  *
4  * Copyright (c) 2000 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact:
7  *
8  * Jaewon Lim           <jaewon81.lim@samsung.com>
9  * Woojin Jung          <woojin2.jung@samsung.com>
10  * Juyoung Kim          <j0.kim@samsung.com>
11  * Nikita Kalyazin      <n.kalyazin@samsung.com>
12  *
13  * Licensed under the Apache License, Version 2.0 (the "License");
14  * you may not use this file except in compliance with the License.
15  * You may obtain a copy of the License at
16  *
17  * http://www.apache.org/licenses/LICENSE-2.0
18  *
19  * Unless required by applicable law or agreed to in writing, software
20  * distributed under the License is distributed on an "AS IS" BASIS,
21  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22  * See the License for the specific language governing permissions and
23  * limitations under the License.
24  *
25  * Contributors:
26  * - S-Core Co., Ltd
27  * - Samsung RnD Institute Russia
28  *
29  */
30
31
32 #include <vconf.h>
33 #include "debug.h"
34 #include "device_vconf.h"
35
36 int get_wifi_status(void)
37 {
38         int wifi_status = 0;
39         int res = 0;
40
41         res = vconf_get_int(VCONFKEY_WIFI_STATE, &wifi_status);
42         if (res < 0) {
43                 LOG_ONCE_W("get error #%d\n", res);
44                 wifi_status = VCONFKEY_WIFI_OFF;
45         }
46
47         return wifi_status;
48 }
49
50 int get_bt_status(void)
51 {
52         int bt_status = 0;
53         int res = 0;
54
55         res = vconf_get_int(VCONFKEY_BT_STATUS, &bt_status);
56         if (res < 0) {
57                 LOG_ONCE_W("get error #%d\n", res);
58                 bt_status = VCONFKEY_BT_STATUS_OFF;
59         }
60
61         return bt_status;
62 }
63
64 int get_gps_status(void)
65 {
66         int gps_status = 0;
67         int res = 0;
68
69         res = vconf_get_int(VCONFKEY_LOCATION_ENABLED, &gps_status);
70         if (res < 0) {
71                 LOG_ONCE_W("get error #%d\n", res);
72                 gps_status = VCONFKEY_LOCATION_GPS_OFF;
73         } else if (gps_status != 0) {
74                 res = vconf_get_int(VCONFKEY_LOCATION_GPS_STATE, &gps_status);
75                 if (res < 0) {
76                         LOG_ONCE_W("get error #%d\n", res);
77                         gps_status = VCONFKEY_LOCATION_GPS_OFF;
78                 }
79         }
80
81         return gps_status;
82 }
83
84 int get_rssi_status(void)
85 {
86
87         int flightmode_status;
88         int res = 0;
89
90         int rssi_status;
91         res = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE,
92                                         &flightmode_status);
93         if (res < 0) {
94                 LOG_ONCE_W("get err #%d <%s>\n", res,
95                          VCONFKEY_TELEPHONY_FLIGHT_MODE);
96                 flightmode_status = 0;
97         }
98
99         if (!flightmode_status) {
100                 res = vconf_get_int(VCONFKEY_TELEPHONY_RSSI, &rssi_status);
101                 if (res < 0) {
102                         LOG_ONCE_W("rssi get err #%d\n", res);
103                         rssi_status = VCONFKEY_TELEPHONY_RSSI_0;
104                 }
105         } else {
106                 rssi_status = VCONFKEY_TELEPHONY_RSSI_0;
107         }
108
109         return rssi_status;
110
111         return 0;
112 }
113
114 int get_call_status(void)
115 {
116         int call_status = 0;
117         int res = 0;
118
119         res = vconf_get_int(VCONFKEY_CALL_STATE, &call_status);
120         if (res < 0) {
121                 LOG_ONCE_W("get err #%d\n", res);
122                 call_status = VCONFKEY_CALL_OFF;
123         }
124
125         return call_status;
126 }
127
128 int get_dnet_status(void)
129 {
130         int dnet_status = 0;
131         int res = 0;
132
133         res = vconf_get_int(VCONFKEY_DNET_STATE, &dnet_status);
134         if (res < 0) {
135                 LOG_ONCE_W("get err #%d <%s>\n", res, VCONFKEY_DNET_STATE);
136                 dnet_status = VCONFKEY_DNET_OFF;
137         }
138
139         return dnet_status;
140 }
141
142 int get_camera_status(void)
143 {
144         int camera_status = 0;
145
146         if (vconf_get_int(VCONFKEY_CAMERA_STATE, &camera_status) < 0) {
147                 camera_status = VCONFKEY_CAMERA_STATE_NULL;
148         }
149
150         return camera_status;
151 }
152
153 int get_sound_status(void)
154 {
155         int sound_status = 0;
156         int res = 0;
157
158         res = vconf_get_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
159                              &sound_status);
160         if (res < 0) {
161                 LOG_ONCE_W("get err #%d\n", res);
162                 sound_status = 0;
163         }
164
165         return sound_status;
166 }
167
168 int get_audio_status(void)
169 {
170         int audio_state = 0;
171         int res = 0;
172
173         res = vconf_get_int(VCONFKEY_SOUND_STATUS,
174                             &audio_state);
175         if (res < 0) {
176                 LOG_ONCE_W("get err #%d\n", res);
177                 audio_state = 0;
178         }
179
180         return !!audio_state;
181 }
182
183 int get_vibration_status(void)
184 {
185         int vibration_status = 0;
186         int res = 0;
187
188         res = vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL,
189                                         &vibration_status);
190         if (res < 0) {
191                 LOG_ONCE_W("get err #%d\n", res);
192                 vibration_status = 0;
193         }
194
195         return vibration_status;
196 }