diff options
author | Guido Günther <agx@sigxcpu.org> | 2014-03-10 23:15:54 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2014-03-10 23:15:54 +0100 |
commit | 4ed442ce09a161a0dc92f26e87d3194a1ab7630a (patch) | |
tree | f6fdcd3e4832527326b1c0077d9be1c8ba22d7d3 /libplanfahr | |
parent | 79e2834af9af2ef6eef297c66c8d5fed6c680ec7 (diff) |
Add lpf_provider_free_trips
to make unrefing the whole data structure simple
Diffstat (limited to 'libplanfahr')
-rw-r--r-- | libplanfahr/libplanfahr.sym | 2 | ||||
-rw-r--r-- | libplanfahr/lpf-provider.c | 13 | ||||
-rw-r--r-- | libplanfahr/lpf-provider.h | 6 |
3 files changed, 20 insertions, 1 deletions
diff --git a/libplanfahr/libplanfahr.sym b/libplanfahr/libplanfahr.sym index 7b72b02..2e1a694 100644 --- a/libplanfahr/libplanfahr.sym +++ b/libplanfahr/libplanfahr.sym @@ -11,6 +11,8 @@ LIBPLANFAHR_0.0.0 { lpf_provider_activate; lpf_provider_deactivate; lpf_provider_error_quark; + lpf_provider_free_locs; + lpf_provider_free_trips; lpf_provider_get_locs; lpf_provider_get_name; lpf_provider_get_trips; diff --git a/libplanfahr/lpf-provider.c b/libplanfahr/lpf-provider.c index 6f7802b..567c745 100644 --- a/libplanfahr/lpf-provider.c +++ b/libplanfahr/lpf-provider.c @@ -168,6 +168,19 @@ lpf_provider_default_init (LpfProviderInterface *iface) G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); } +/** + * lpf_provider_free_trips: + * @self: a #LpfProvider + * @trips: (element-type LpfTrips): A linked list of trips + * + * Free the trips list + */ +void +lpf_provider_free_trips(LpfProvider *self, GSList *trips) +{ + g_slist_free_full (trips, g_object_unref); +} + /** * lpf_provider_create: (skip) diff --git a/libplanfahr/lpf-provider.h b/libplanfahr/lpf-provider.h index 81d18c0..bc61903 100644 --- a/libplanfahr/lpf-provider.h +++ b/libplanfahr/lpf-provider.h @@ -89,10 +89,14 @@ const char* lpf_provider_get_name (LpfProvider *self); void lpf_provider_activate (LpfProvider *self, GObject *obj); void lpf_provider_deactivate (LpfProvider *self, GObject *obj); GQuark lpf_provider_error_quark (void); + gint lpf_provider_get_locs (LpfProvider *self, const gchar* match, LpfProviderGotLocsNotify callback, gpointer user_data); -gint lpf_provider_get_trips (LpfProvider *self, LpfLoc *start, LpfLoc *end, GDateTime *date, guint64 flags, LpfProviderGotLocsNotify callback, gpointer user_data); void lpf_provider_free_locs (LpfProvider *self, GSList *locs); +gint lpf_provider_get_trips (LpfProvider *self, LpfLoc *start, LpfLoc *end, GDateTime *date, guint64 flags, LpfProviderGotLocsNotify callback, gpointer user_data); +void lpf_provider_free_trips (LpfProvider *self, GSList *trips); + + G_END_DECLS #endif /* _LPF_PROVIDER */ |