removed wrong contacts, added authors
[platform/core/location/lbs-location.git] / location / manager / location-hybrid.h
1 /*
2  * libslp-location
3  *
4  * Copyright (c) 2010-2013 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18
19 #ifndef __LOCATION_HYBRID_MOBILE_H__
20 #define __LOCATION_HYBRID_MOBILE_H__
21
22 #include <glib-object.h>
23
24 /**
25  * @file location-hybrid-mobile.h
26  * @brief This file contains the internal definitions and structures related to Hybrid method.
27  */
28
29 G_BEGIN_DECLS
30
31 typedef struct _LocationHybrid                  LocationHybrid;
32 typedef struct _LocationHybridClass             LocationHybridClass;
33
34 #define LOCATION_TYPE_HYBRID                            (location_hybrid_get_type())
35 #define LOCATION_HYBRID(obj)                            (G_TYPE_CHECK_INSTANCE_CAST((obj), LOCATION_TYPE_HYBRID, LocationHybrid))
36 #define LOCATION_IS_HYBRID(obj)                         (G_TYPE_CHECK_INSTANCE_TYPE((obj), LOCATION_TYPE_HYBRID))
37 #define LOCATION_HYBRID_CLASS(klass)            (G_TYPE_CHECK_CLASS_CAST((klass), LOCATION_TYPE_HYBRID, LocationHybridClass))
38 #define LOCATION_IS_HYBRID_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE((klass), LOCATION_TYPE_HYBRID))
39 #define LOCATION_HYBRID_GET_CLASS(obj)          (G_TYPE_INSTANCE_GET_CLASS((obj), LOCATION_TYPE_HYBRID, LocationHybridClass))
40
41 struct _LocationHybrid {
42         GObject parent_instance;
43 };
44
45 struct _LocationHybridClass {
46         GObjectClass parent_class;
47
48         void (*enabled)(guint type);
49         void (*disabled)(guint type);
50         void (*service_updated)(gint type, gpointer data, gpointer velocity, gpointer accuracy);
51         void (*location_updated)(gint error, gpointer position, gpointer velocity, gpointer accuracy);
52         void (*zone_in)(gpointer boundary, gpointer position, gpointer accuracy);
53         void (*zone_out)(gpointer boundary, gpointer position, gpointer accuracy);
54         void (*status_changed)(guint type);
55 };
56
57 GType location_hybrid_get_type(void);
58
59 #define HYBRID_POSITION_EXPIRATION_TIME         9
60
61 G_END_DECLS
62
63 #endif