#sbs-git:slp/api/geofence-manager capi-geofence-manager 0.1.0 d1ee09a32e8bc0e9ed48ece37c641a7393c086c5
Name: capi-geofence-manager
Summary: A Geofence Manager library in Tizen Native API
-Version: 0.3.2
+Version: 0.3.3
Release: 1
Group: Location/Libraries
License: Apache-2.0
}
switch (action) {
- case GEOFENCE_MANAGE_FENCE_STARTED: {
- geofence_info_s *fence_info = (geofence_info_s *)malloc(sizeof(geofence_info_s));
- if (fence_info == NULL)
- break;
- fence_info->info = NULL;
- fence_info->state = GEOFENCE_STATE_UNCERTAIN;
- fence_info->last_updated_time = (g_get_real_time() / 1000000);
- g_hash_table_insert(fence_map, GINT_TO_POINTER(geofence_id), (gpointer)fence_info);
- /* Inserting the fence in the tracking list */
- tracking_list = g_list_append(tracking_list, GINT_TO_POINTER(geofence_id));
- }
- break;
- case GEOFENCE_MANAGE_FENCE_STOPPED: {
- geofence_info_s *info = (geofence_info_s *)g_hash_table_lookup(fence_map, GINT_TO_POINTER(geofence_id));
- if (info != NULL) {
- g_hash_table_remove(fence_map, GINT_TO_POINTER(geofence_id));
- free(info);
- }
- /* Removing the fence in the tracking list */
- tracking_list = g_list_remove(tracking_list, GINT_TO_POINTER(geofence_id));
+ case GEOFENCE_MANAGE_FENCE_STARTED: {
+ geofence_info_s *fence_info = (geofence_info_s *)malloc(sizeof(geofence_info_s));
+ if (fence_info == NULL)
+ break;
+ fence_info->info = NULL;
+ fence_info->state = GEOFENCE_STATE_UNCERTAIN;
+ fence_info->last_updated_time = (g_get_real_time() / 1000000);
+ g_hash_table_insert(fence_map, GINT_TO_POINTER(geofence_id), (gpointer)fence_info);
+ /* Inserting the fence in the tracking list */
+ tracking_list = g_list_append(tracking_list, GINT_TO_POINTER(geofence_id));
+ }
+ break;
+ case GEOFENCE_MANAGE_FENCE_STOPPED: {
+ geofence_info_s *info = (geofence_info_s *)g_hash_table_lookup(fence_map, GINT_TO_POINTER(geofence_id));
+ if (info != NULL) {
+ g_hash_table_remove(fence_map, GINT_TO_POINTER(geofence_id));
+ free(info);
}
- break;
- default:
- break;
+ /* Removing the fence in the tracking list */
+ tracking_list = g_list_remove(tracking_list, GINT_TO_POINTER(geofence_id));
+ }
+ break;
+ default:
+ break;
}
}
handle->sig_id[_GEOFENCE_SIGNAL_PROXIMITY] = g_signal_connect(handle->object, "geofence-proximity", G_CALLBACK(__cb_fence_proximity), handle);
ret = geofence_ielement_create(GEOFENCE_IELEMENT(handle->object));
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(GEOFENCE_MANAGER_ERROR_EXCEPTION);
- }
/* Initialize the hashmaps to store the fence and place info */
fence_map = g_hash_table_new(g_direct_hash, g_direct_equal);
if (fence_map == NULL)
}
ret = geofence_ielement_destroy(GEOFENCE_IELEMENT(handle->object));
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(GEOFENCE_MANAGER_ERROR_EXCEPTION);
- }
/* destroy the hashtables */
g_hash_table_destroy(fence_map);
geofence_manager_s *handle = (geofence_manager_s *) manager;
int ret = GEOFENCE_MANAGER_ERROR_NONE;
- if (__is_fence_started(geofence_id) == true) {
+ if (__is_fence_started(geofence_id) == true)
return __print_error_code(GEOFENCE_MANAGER_ERROR_ALREADY_STARTED);
- }
ret = geofence_ielement_start(GEOFENCE_IELEMENT(handle->object), geofence_id);
if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
return __print_error_code(GEOFENCE_MANAGER_ERROR_EXCEPTION);
}
ret = geofence_ielement_stop(GEOFENCE_IELEMENT(handle->object), geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) GEOFENCE_LOGD("Fail to stop. Error [%d]", ret);
-
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
+
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_add(GEOFENCE_IELEMENT(handle->object), (geofence_s *) params, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_add_place(GEOFENCE_IELEMENT(handle->object), place_name, place_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_update_place(GEOFENCE_IELEMENT(handle->object), place_name, place_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_remove(GEOFENCE_IELEMENT(handle->object), geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
+
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_remove_place(GEOFENCE_IELEMENT(handle->object), place_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
return GEOFENCE_MANAGER_ERROR_NONE;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = geofence_ielement_get_place_name(GEOFENCE_IELEMENT(handle->object), place_id, place_name);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
+
return GEOFENCE_MANAGER_ERROR_NONE;
}
geofence_s *params = NULL;
ret = geofence_ielement_get_fence_list(GEOFENCE_IELEMENT(handle->object), -1, &fence_amount, &fence_ids, ¶ms);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
if (fence_amount == 0) {
if (callback)
}
int iterations = fence_amount;
- while (iterations-- > 0) {
+ while (iterations-- > 0)
geofence_parameter_free((geofence_s *)(params++));
- }
g_slice_free1(sizeof(int)*fence_amount, fence_ids);
GEOFENCE_LOGD("place_id: %d", place_id);
ret = geofence_ielement_get_fence_list(GEOFENCE_IELEMENT(handle->object), place_id, &fence_amount, &fence_ids, ¶ms);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
if (fence_amount == 0) {
callback(0, NULL, 0, 0, user_data);
GEOFENCE_LOGD("Fence id: %d, lat: %lf, lon: %lf, rad: %d, address: %s, bssid: %s, ssid: %s", fence_ids[i], params[i].latitude, params[i].longitude, params[i].radius, params[i].address, params[i].bssid, params[i].ssid);
}
int iterations = fence_amount;
- while (iterations-- > 0) {
+ while (iterations-- > 0)
geofence_parameter_free((geofence_s *)(params++));
- }
g_slice_free1(sizeof(int)*fence_amount, fence_ids);
place_s *params = NULL;
ret = geofence_ielement_get_place_list(GEOFENCE_IELEMENT(handle->object), &place_amount, &place_ids, ¶ms);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
return __print_error_code(ret);
- }
+
if (place_amount == 0) {
callback(0, NULL, 0, 0, user_data);
return GEOFENCE_MANAGER_ERROR_NONE;
}
int i = 0;
- for (i = 0; i < place_amount; i++) {
+ for (i = 0; i < place_amount; i++)
callback(place_ids[i], ((const place_s *)(params + i))->place_name, (i + 1), place_amount, user_data);
- }
int iterations = place_amount;
- while (iterations-- > 0) {
+ while (iterations-- > 0)
g_slice_free(place_s, (params++));
- }
g_slice_free1(sizeof(int)*place_amount, place_ids);
#include "geofence-ielement.h"
static void _glib_log(const gchar *log_domain, GLogLevelFlags log_level,
- const gchar *msg, gpointer user_data)
+ const gchar *msg, gpointer user_data)
{
GEOFENCE_LOGD("GLIB[%d] : %s", log_level, msg);
if (!iface_type) {
static const GTypeInfo info = {
sizeof(GeofenceIElementInterface), /* class_size */
- NULL, /* base_init */
- NULL /* base_finalize */
+ NULL, /* base_init */
+ NULL /* base_finalize */
};
- iface_type = g_type_register_static(G_TYPE_INTERFACE, /* parent-type */
- "GeofenceIElement", /* type name */
- &info, /* info */
- 0); /* flags */
+ iface_type = g_type_register_static(G_TYPE_INTERFACE, /* parent-type */
+ "GeofenceIElement", /* type name */
+ &info, /* info */
+ 0); /* flags */
}
return iface_type;
LAST_SIGNAL
};
-#define GEOFENCE_TYPE_IELEMENT (geofence_ielement_get_type ())
-#define GEOFENCE_IELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEOFENCE_TYPE_IELEMENT, GeofenceIElement))
-#define GEOFENCE_IS_IELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEOFENCE_TYPE_IELEMENT))
-#define GEOFENCE_IELEMENT_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEOFENCE_TYPE_IELEMENT, GeofenceIElementInterface))
+#define GEOFENCE_TYPE_IELEMENT (geofence_ielement_get_type())
+#define GEOFENCE_IELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GEOFENCE_TYPE_IELEMENT, GeofenceIElement))
+#define GEOFENCE_IS_IELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GEOFENCE_TYPE_IELEMENT))
+#define GEOFENCE_IELEMENT_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE((obj), GEOFENCE_TYPE_IELEMENT, GeofenceIElementInterface))
typedef struct _GeofenceIElement GeofenceIElement;
typedef struct _GeofenceIElementInterface GeofenceIElementInterface;
typedef struct _GeofenceInternalPrivate {
GeofenceInternalMod *mod;
- GMutex mutex;
- geofence_s *params;
+ GMutex mutex;
+ geofence_s *params;
} GeofenceInternalPrivate;
enum {
- PROP_0,
- PROP_GEOFENCE_PARAMS,
- PROP_MAX
+ PROP_0,
+ PROP_GEOFENCE_PARAMS,
+ PROP_MAX
};
static guint32 signals[LAST_SIGNAL] = { 0, };
G_DEFINE_TYPE_WITH_CODE(GeofenceInternal, geofence_internal, G_TYPE_OBJECT,
- G_IMPLEMENT_INTERFACE(GEOFENCE_TYPE_IELEMENT,
- geofence_ielement_interface_init));
+ G_IMPLEMENT_INTERFACE(GEOFENCE_TYPE_IELEMENT,
+ geofence_ielement_interface_init));
/*
static void geofence_parameter_set_property (GObject *object,
}
static void geofence_internal_get_property(GObject *object,
- guint property_id,
- GValue *value,
- GParamSpec *pspec)
+ guint property_id,
+ GValue *value,
+ GParamSpec *pspec)
{
GEOFENCE_LOGD("geofence_internal_get_property");
GeofenceInternalPrivate *priv = GET_PRIVATE(object);
g_return_if_fail(priv->mod->handler);
switch (property_id) {
- case PROP_GEOFENCE_PARAMS:
- g_value_set_boxed(value, priv->params);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
- break;
+ case PROP_GEOFENCE_PARAMS:
+ g_value_set_boxed(value, priv->params);
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
+ break;
}
}
}
void geofence_event_signaling(GeofenceObject *obj,
- guint32 signals[LAST_SIGNAL],
- guint place_id,
- guint fence_id,
- guint error,
- guint state)
+ guint32 signals[LAST_SIGNAL],
+ guint place_id,
+ guint fence_id,
+ guint error,
+ guint state)
{
GEOFENCE_LOGD("geofence_event_signaling");
g_return_if_fail(obj);
if (gIsCreated == 0) {
ret = priv->mod->ops.create(priv->mod->handler, _state_cb, _proximity_cb, _geofence_event_cb, self);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to create. Error[%d]", ret);
- }
+
gIsCreated = 1;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.destroy(priv->mod->handler);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to destroy. Error[%d]", ret);
- }
- if (gIsCreated == 1) {
+ if (gIsCreated == 1)
gIsCreated = 0;
- }
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.enable_service(priv->mod->handler, geofence_id, enable);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to enable the geofence. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.start_geofence(priv->mod->handler, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to start geofence. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.stop_geofence(priv->mod->handler, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to stop. Error[%d]", ret);
- }
+
return ret;
}
if (priv->params->type == GEOFENCE_TYPE_GEOPOINT) {
ret = priv->mod->ops.add_geopoint(priv->mod->handler, priv->params->place_id, priv->params->latitude, priv->params->longitude, priv->params->radius, priv->params->address, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to add geofence. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to add geofence. Error[%d]", ret);
- }
} else {
ret = priv->mod->ops.add_bssid(priv->mod->handler, priv->params->place_id, priv->params->bssid, priv->params->ssid, priv->params->type, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to add geofence. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to add geofence. Error[%d]", ret);
- }
}
return ret;
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.remove_geofence(priv->mod->handler, geofence_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to remove geofence. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.get_geofences(priv->mod->handler, place_id, fence_amount, fence_ids, params);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to get list. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.add_place(priv->mod->handler, place_name, place_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to add place. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to add place. Error[%d]", ret);
- }
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.update_place(priv->mod->handler, place_id, place_name);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Fail to update place. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to update place. Error[%d]", ret);
- }
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.remove_place(priv->mod->handler, place_id);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to remove place. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to remove place. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.get_place_name(priv->mod->handler, place_id, place_name);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to get the place name. Error[%d]", ret);
- } else {
+ else
GEOFENCE_LOGE("Success to get the place name. Error[%d]", ret);
- }
+
return ret;
}
int ret = GEOFENCE_MANAGER_ERROR_NONE;
ret = priv->mod->ops.get_places(priv->mod->handler, place_amount, place_ids, params);
- if (ret != GEOFENCE_MANAGER_ERROR_NONE) {
+ if (ret != GEOFENCE_MANAGER_ERROR_NONE)
GEOFENCE_LOGE("Failed to get place list. Error[%d]", ret);
- }
+
return ret;
}
g_type_class_add_private(klass, sizeof(GeofenceInternalPrivate));
signals[ZONE_IN] = g_signal_new("zone-in",
- G_TYPE_FROM_CLASS(klass),
- G_SIGNAL_RUN_FIRST |
- G_SIGNAL_NO_RECURSE,
- G_STRUCT_OFFSET(GeofenceInternalClass, zone_in),
- NULL, NULL,
- geofence_VOID__UINT,
- G_TYPE_NONE, 1,
- G_TYPE_UINT);
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_FIRST |
+ G_SIGNAL_NO_RECURSE,
+ G_STRUCT_OFFSET(GeofenceInternalClass, zone_in),
+ NULL, NULL,
+ geofence_VOID__UINT,
+ G_TYPE_NONE, 1,
+ G_TYPE_UINT);
signals[ZONE_OUT] = g_signal_new("zone-out",
- G_TYPE_FROM_CLASS(klass),
- G_SIGNAL_RUN_FIRST |
- G_SIGNAL_NO_RECURSE,
- G_STRUCT_OFFSET(GeofenceInternalClass, zone_out),
- NULL, NULL,
- geofence_VOID__UINT,
- G_TYPE_NONE, 1,
- G_TYPE_UINT);
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_FIRST |
+ G_SIGNAL_NO_RECURSE,
+ G_STRUCT_OFFSET(GeofenceInternalClass, zone_out),
+ NULL, NULL,
+ geofence_VOID__UINT,
+ G_TYPE_NONE, 1,
+ G_TYPE_UINT);
signals[GEOFENCE_PROXIMITY] = g_signal_new("geofence-proximity",
G_TYPE_FROM_CLASS(klass),
G_TYPE_UINT);
signals[GEOFENCE_EVENT] = g_signal_new("geofence-event",
- G_TYPE_FROM_CLASS(klass),
- G_SIGNAL_RUN_FIRST |
- G_SIGNAL_NO_RECURSE,
- G_STRUCT_OFFSET(GeofenceInternalClass, geofence_event),
- NULL, NULL,
- g_cclosure_marshal_generic,
- G_TYPE_NONE, 4,
- G_TYPE_UINT,
- G_TYPE_UINT,
- G_TYPE_UINT,
- G_TYPE_UINT);
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_FIRST |
+ G_SIGNAL_NO_RECURSE,
+ G_STRUCT_OFFSET(GeofenceInternalClass, geofence_event),
+ NULL, NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_NONE, 4,
+ G_TYPE_UINT,
+ G_TYPE_UINT,
+ G_TYPE_UINT,
+ G_TYPE_UINT);
properties[PROP_GEOFENCE_PARAMS] = g_param_spec_boxed("geofence-parameter",
- "geofence parameter prop",
- "geofence parameter data",
- GEOFENCE_PRAMETER,
- G_PARAM_READABLE);
+ "geofence parameter prop",
+ "geofence parameter data",
+ GEOFENCE_PRAMETER,
+ G_PARAM_READABLE);
g_object_class_install_properties(gobject_class,
- PROP_MAX,
- properties);
+ PROP_MAX,
+ properties);
}
G_BEGIN_DECLS
-#define GEOFENCE_TYPE_INTERNAL (geofence_internal_get_type ())
-#define GEOFENCE_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEOFENCE_TYPE_INTERNAL, GeofenceInternal))
-#define GEOFENCE_IS_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEOFENCE_TYPE_INTERNAL))
-#define GEOFENCE_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEOFENCE_TYPE_INTERNAL, GeofenceInternalClass))
-#define GEOFENCE_IS_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEOFENCE_TYPE_INTERNAL))
-#define GEOFENCE_INTERNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEOFENCE_TYPE_INTERNAL, GeofenceInternalClass))
+#define GEOFENCE_TYPE_INTERNAL (geofence_internal_get_type())
+#define GEOFENCE_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GEOFENCE_TYPE_INTERNAL, GeofenceInternal))
+#define GEOFENCE_IS_INTERNAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GEOFENCE_TYPE_INTERNAL))
+#define GEOFENCE_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GEOFENCE_TYPE_INTERNAL, GeofenceInternalClass))
+#define GEOFENCE_IS_INTERNAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GEOFENCE_TYPE_INTERNAL))
+#define GEOFENCE_INTERNAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GEOFENCE_TYPE_INTERNAL, GeofenceInternalClass))
typedef struct _GeofenceInternal GeofenceInternal;
typedef struct _GeofenceInternalClass GeofenceInternalClass;
struct _GeofenceInternalClass {
GObjectClass parent_class;
- void (* zone_in)(guint geofence_id);
- void (* zone_out)(guint geofence_id);
- void (* geofence_proximity)(guint geofence_id, guint proximity_state, guint provider);
- void (* geofence_event)(guint place_id, guint geofence_id, guint error, guint state);
+ void (*zone_in)(guint geofence_id);
+ void (*zone_out)(guint geofence_id);
+ void (*geofence_proximity)(guint geofence_id, guint proximity_state, guint provider);
+ void (*geofence_event)(guint place_id, guint geofence_id, guint error, guint state);
};
/*typedef void (*service_status_cb) (int status, void *user_data); */
int ret = GEOFENCE_MANAGER_ERROR_NONE;
char *msg = "GEOFENCE_MANAGER_ERROR_NONE";
switch (code) {
- case GEOFENCE_MANAGER_ERROR_NONE:
- ret = GEOFENCE_MANAGER_ERROR_NONE;
- msg = "GEOFENCE_MANAGER_ERROR_NONE";
- break;
- case GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED:
- ret = GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED;
- msg = "GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED";
- break;
- case GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED:
- ret = GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED;
- msg = "GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED";
- break;
- case GEOFENCE_MANAGER_ERROR_INVALID_ID:
- ret = GEOFENCE_MANAGER_ERROR_INVALID_ID;
- msg = "GEOFENCE_MANAGER_ERROR_INVALID_ID";
- break;
- case GEOFENCE_MANAGER_ERROR_EXCEPTION:
- ret = GEOFENCE_MANAGER_ERROR_EXCEPTION;
- msg = "GEOFENCE_MANAGER_ERROR_EXCEPTION";
- break;
- case GEOFENCE_MANAGER_ERROR_ALREADY_STARTED:
- ret = GEOFENCE_MANAGER_ERROR_ALREADY_STARTED;
- msg = "GEOFENCE_MANAGER_ERROR_ALREADY_STARTED";
- break;
- case GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE:
- ret = GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE;
- msg = "GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE";
- break;
- case GEOFENCE_MANAGER_ERROR_IPC:
- ret = GEOFENCE_MANAGER_ERROR_IPC;
- msg = "GEOFENCE_MANAGER_ERROR_IPC";
- break;
- case GEOFENCE_MANAGER_ERROR_DATABASE:
- ret = GEOFENCE_MANAGER_ERROR_DATABASE;
- msg = "GEOFENCE_MANAGER_ERROR_DATABASE";
- break;
- case GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED:
- ret = GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED;
- msg = "GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED";
- break;
- case GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED:
- ret = GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED;
- msg = "GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED";
- break;
- default:
- msg = "GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED";
- ret = GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED;
+ case GEOFENCE_MANAGER_ERROR_NONE:
+ ret = GEOFENCE_MANAGER_ERROR_NONE;
+ msg = "GEOFENCE_MANAGER_ERROR_NONE";
+ break;
+ case GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED:
+ ret = GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED;
+ msg = "GEOFENCE_MANAGER_ERROR_PERMISSION_DENIED";
+ break;
+ case GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED:
+ ret = GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED;
+ msg = "GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED";
+ break;
+ case GEOFENCE_MANAGER_ERROR_INVALID_ID:
+ ret = GEOFENCE_MANAGER_ERROR_INVALID_ID;
+ msg = "GEOFENCE_MANAGER_ERROR_INVALID_ID";
+ break;
+ case GEOFENCE_MANAGER_ERROR_EXCEPTION:
+ ret = GEOFENCE_MANAGER_ERROR_EXCEPTION;
+ msg = "GEOFENCE_MANAGER_ERROR_EXCEPTION";
+ break;
+ case GEOFENCE_MANAGER_ERROR_ALREADY_STARTED:
+ ret = GEOFENCE_MANAGER_ERROR_ALREADY_STARTED;
+ msg = "GEOFENCE_MANAGER_ERROR_ALREADY_STARTED";
+ break;
+ case GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE:
+ ret = GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE;
+ msg = "GEOFENCE_MANAGER_ERROR_TOO_MANY_GEOFENCE";
+ break;
+ case GEOFENCE_MANAGER_ERROR_IPC:
+ ret = GEOFENCE_MANAGER_ERROR_IPC;
+ msg = "GEOFENCE_MANAGER_ERROR_IPC";
+ break;
+ case GEOFENCE_MANAGER_ERROR_DATABASE:
+ ret = GEOFENCE_MANAGER_ERROR_DATABASE;
+ msg = "GEOFENCE_MANAGER_ERROR_DATABASE";
+ break;
+ case GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED:
+ ret = GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED;
+ msg = "GEOFENCE_MANAGER_ERROR_PLACE_ACCESS_DENIED";
+ break;
+ case GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED:
+ ret = GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED;
+ msg = "GEOFENCE_MANAGER_ERROR_GEOFENCE_ACCESS_DENIED";
+ break;
+ default:
+ msg = "GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED";
+ ret = GEOFENCE_MANAGER_ERROR_NOT_INITIALIZED;
}
GEOFENCE_LOGE("ERROR : %s(0x%08x)", msg, ret);
return ret;
* Internal Macros
*/
-#define GEOFENCE_LOGD(fmt,args...) LOGD(fmt, ##args)
-#define GEOFENCE_LOGW(fmt,args...) LOGW(fmt, ##args)
-#define GEOFENCE_LOGI(fmt,args...) LOGI(fmt, ##args)
-#define GEOFENCE_LOGE(fmt,args...) LOGE(fmt, ##args)
+#define GEOFENCE_LOGD(fmt, args...) LOGD(fmt, ##args)
+#define GEOFENCE_LOGW(fmt, args...) LOGW(fmt, ##args)
+#define GEOFENCE_LOGI(fmt, args...) LOGI(fmt, ##args)
+#define GEOFENCE_LOGE(fmt, args...) LOGE(fmt, ##args)
#define GEOFENCE_CHECK_CONDITION(condition, error, msg) \
do { \
#define GEOFENCE_NULL_ARG_CHECK(arg) \
- GEOFENCE_CHECK_CONDITION((arg != NULL),GEOFENCE_MANAGER_ERROR_INVALID_PARAMETER,"GEOFENCE_MANAGER_ERROR_INVALID_PARAMETER") \
+ GEOFENCE_CHECK_CONDITION((arg != NULL), GEOFENCE_MANAGER_ERROR_INVALID_PARAMETER, "GEOFENCE_MANAGER_ERROR_INVALID_PARAMETER") \
int __print_error_code(int code);
G_BEGIN_DECLS
GType geofence_parameter_get_type(void);
-#define GEOFENCE_PRAMETER (geofence_parameter_get_type ())
+#define GEOFENCE_PRAMETER (geofence_parameter_get_type())
geofence_s *geofence_parameter_new(gint place_id, guint type, gdouble latitude, gdouble longitude, guint radius, const gchar *address, const gchar *bssid, const gchar *ssid);
geofence_s *geofence_parameter_copy(const geofence_s *params);
gboolean supported = FALSE;
- if (module_is_supported("geofence")) {
+ if (module_is_supported("geofence"))
supported = TRUE;
- }
return supported;
}
if (0 == g_strcmp0(module_name, "geofence")) {
GeofenceInternalMod *_mod = (GeofenceInternalMod *) mod;
- if (_mod->shutdown && _mod->handler) {
+ if (_mod->shutdown && _mod->handler)
_mod->shutdown(_mod->handler);
- }
_mod->handler = NULL;
_mod->init = NULL;
_mod->shutdown = NULL;
{
GMod *gmod = NULL;
gmod = gmod_new(module_name, FALSE);
- if (!gmod) {
+ if (!gmod)
return FALSE;
- }
gmod_free(gmod);
return TRUE;
char name[256];
gpointer mod = NULL;
- if (0 >= g_snprintf(name, 256, "%s", module_name)) {
+ if (0 >= g_snprintf(name, 256, "%s", module_name))
GEOFENCE_LOGW("module name(%s) is wrong", name);
- }
mod = mod_new(name);
- if (mod) {
+
+ if (mod)
GEOFENCE_LOGW("module (%s) open success", name);
- } else {
+ else
GEOFENCE_LOGW("module (%s) open failed", name);
- }
+
return mod;
}
char name[256] = { 0, };
for (index = -1; index < MAX_MODULE_INDEX; index++) {
- if (index >= 0) {
+ if (index >= 0)
g_snprintf(name, 256, "%s%d", module_name, index);
- } else {
+ else
g_snprintf(name, 256, "%s", module_name);
- }
ret = mod_is_supported(name);
if (ret == TRUE) {