From 24e2c881807724c6c8b4604e5aa8c4c9d353edca Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Wed, 1 Oct 2014 09:53:44 +0200 Subject: [PATCH] track-element: Add an API to list all set ControlBinding API: ges_track_element_get_all_control_bindings --- docs/libs/ges-sections.txt | 1 + ges/ges-internal.h | 3 --- ges/ges-track-element.c | 9 ++++++++- ges/ges-track-element.h | 2 ++ ges/ges-xml-formatter.c | 3 ++- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/docs/libs/ges-sections.txt b/docs/libs/ges-sections.txt index 26b821af7e..15c8482697 100644 --- a/docs/libs/ges-sections.txt +++ b/docs/libs/ges-sections.txt @@ -146,6 +146,7 @@ ges_track_element_get_child_property_by_pspec ges_track_element_edit ges_track_element_set_control_source ges_track_element_get_control_binding +ges_track_element_get_all_control_bindings GESTrackElementPrivate ges_track_element_set_track diff --git a/ges/ges-internal.h b/ges/ges-internal.h index f9b9e91995..6e30f507e0 100644 --- a/ges/ges-internal.h +++ b/ges/ges-internal.h @@ -120,9 +120,6 @@ ges_asset_cache_put (GESAsset * asset, GSimpleAsyncResult *res); G_GNUC_INTERNAL gboolean ges_asset_cache_set_loaded(GType extractable_type, const gchar * id, GError *error); -G_GNUC_INTERNAL GHashTable * -ges_track_element_get_bindings_hashtable(GESTrackElement *element); - GESAsset* ges_asset_cache_lookup(GType extractable_type, const gchar * id); diff --git a/ges/ges-track-element.c b/ges/ges-track-element.c index dbfe65673f..2fabb4f536 100644 --- a/ges/ges-track-element.c +++ b/ges/ges-track-element.c @@ -912,8 +912,15 @@ ges_track_element_set_track (GESTrackElement * object, GESTrack * track) return ret; } +/** + * ges_track_element_get_all_control_bindings + * @trackelement: The #TrackElement from which to get all set bindings + * + * Returns: (element-type gchar* GstControlBinding)(transfer none): A + * #GHashTable containing all property_name: GstControlBinding + */ GHashTable * -ges_track_element_get_bindings_hashtable (GESTrackElement * trackelement) +ges_track_element_get_all_control_bindings (GESTrackElement * trackelement) { GESTrackElementPrivate *priv = GES_TRACK_ELEMENT (trackelement)->priv; diff --git a/ges/ges-track-element.h b/ges/ges-track-element.h index 5f2cfb7c1b..17409e71f6 100644 --- a/ges/ges-track-element.h +++ b/ges/ges-track-element.h @@ -191,5 +191,7 @@ ges_track_element_add_children_props (GESTrackElement *self, const gchar ** wanted_categories, const gchar **blacklist, const gchar **whitelist); +GHashTable * +ges_track_element_get_all_control_bindings (GESTrackElement * trackelement); G_END_DECLS #endif /* _GES_TRACK_ELEMENT */ diff --git a/ges/ges-xml-formatter.c b/ges/ges-xml-formatter.c index 3d9b560ac1..3bccc682f4 100644 --- a/ges/ges-xml-formatter.c +++ b/ges/ges-xml-formatter.c @@ -927,7 +927,8 @@ _save_keyframes (GString * str, GESTrackElement * trackelement, gint index) GHashTableIter iter; gpointer key, value; - bindings_hashtable = ges_track_element_get_bindings_hashtable (trackelement); + bindings_hashtable = + ges_track_element_get_all_control_bindings (trackelement); g_hash_table_iter_init (&iter, bindings_hashtable);