Merge "Applied Tizen coding rules" into tizen
[platform/core/location/lbs-location.git] / location / manager / location-signaling-util.h
1 /*
2  * libslp-location
3  *
4  * Copyright (c) 2010-2013 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Youngae Kang <youngae.kang@samsung.com>, Minjune Kim <sena06.kim@samsung.com>
7  *          Genie Kim <daejins.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 __LOCATION_SIGNALING_UTIL_H__
23 #define __LOCATION_SIGNALING_UTIL_H__
24
25 #include <location.h>
26 #include <location-ielement.h>
27
28 /**
29  * @file location-signaling.h
30  * @brief This file contains the signaling utils for LocationObject.
31  */
32
33 G_BEGIN_DECLS
34
35 void enable_signaling(LocationObject *obj, guint32 signals[LAST_SIGNAL], gboolean *prev_enabled, gboolean enabled, LocationStatus status);
36
37 void position_velocity_signaling(LocationObject *obj, guint32 signals[LAST_SIGNAL],
38                                                                 guint pos_interval,     guint vel_interval,     guint loc_interval,
39                                                                 guint *pos_updated_timestamp, guint *vel_updated_timestamp, guint *loc_updated_timestamp,
40                                                                 GList *prev_bound, LocationPosition *pos, LocationVelocity *vel, LocationAccuracy *acc);
41
42 void satellite_signaling(LocationObject *obj, guint32 signals[LAST_SIGNAL],
43                                                 gboolean *prev_enabled, int interval, gboolean emit,
44                                                 guint *updated_timestamp, LocationSatellite **pre_sat,
45                                                 LocationSatellite *sat);
46
47 void location_signaling(LocationObject *obj, guint32 signals[LAST_SIGNAL],
48                                                 gboolean enabled, GList *boundary_list,
49                                                 LocationPosition *cur_pos, LocationVelocity *cur_vel, LocationAccuracy *cur_acc,
50                                                 guint pos_interval, guint vel_interval, guint loc_interval,
51                                                 gboolean *prev_enabled, guint *prev_pos_timestamp, guint *prev_vel_timestamp, guint *prev_loc_timestamp,
52                                                 LocationPosition **prev_pos, LocationVelocity **prev_vel, LocationAccuracy **prev_acc);
53
54 void distance_based_position_signaling(LocationObject *obj, guint32 signals[LAST_SIGNAL],
55                                                                         gboolean enabled,
56                                                                         LocationPosition *cur_pos, LocationVelocity *cur_vel, LocationAccuracy *cur_acc,
57                                                                         guint min_interval, gdouble min_distance, gboolean *prev_enabled, guint *prev_dist_timestamp,
58                                                                         LocationPosition **prev_pos, LocationVelocity **prev_vel, LocationAccuracy **prev_acc);
59
60 G_END_DECLS
61
62 #endif