tizen beta release
[framework/location/libslp-lbs-plugin-replay.git] / replay-plugin / include / setting.h
1 /*
2  * GPS manager replay plugin
3  *
4  * Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Youngae Kang <youngae.kang@samsung.com>, Yunhan Kim <yhan.kim@samsung.com>,
7  *          Genie Kim <daejins.kim@samsung.com>, Minjune Kim <sena06.kim@samsung.com>
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */
21
22 #ifndef _SETTING_H_
23 #define _SETTING_H_
24
25 #include <vconf.h>
26 #include <vconf-keys.h>
27
28 #define NMEA_FILE_PATH          "/opt/data/gps-manager/replay/"
29
30 #define LOCATION_SETTING_PATH   "db/location"
31
32 #define REPLAY_SETTING          LOCATION_SETTING_PATH"/replay"
33 #define REPLAY_ENABLED          REPLAY_SETTING"/ReplayEnabled"
34 #define REPLAY_MODE             REPLAY_SETTING"/ReplayMode"
35 #define NMEA_FILE_NAME          REPLAY_SETTING"/FileName"
36 #define MANUAL_LATITUDE         REPLAY_SETTING"/ManualLatitude"
37 #define MANUAL_LONGITUDE        REPLAY_SETTING"/ManualLongitude"
38 #define MANUAL_ALTITUDE         REPLAY_SETTING"/ManualAltitude"
39
40 typedef enum {
41         REPLAY_OFF = 0,
42         REPLAY_NMEA,
43         REPLAY_MANUAL,
44         REPLAY_MODE_MAX
45 } replay_mode_t;
46
47 typedef enum {
48         READ_ERROR       = -1,
49         READ_SUCCESS     = 0,
50         READ_NOT_FIXED   = 1,
51 } read_error_t;
52
53 int setting_get_int(const char *path, int *val);
54 int setting_get_double(const char *path, double *val);
55 char *setting_get_string(const char *path);
56
57 typedef void (*key_changed_cb) (keynode_t * key, void *data);
58
59 int setting_notify_key_changed(const char *path, void *key_changed_cb);
60 int setting_ignore_key_changed(const char *path, void *key_changed_cb);
61 #endif                          /* _SETTING_H_ */