[farsight2/master] Added fs_element_added_notifier_set_properties_from_file and python binding

Louis-Francis Ratté-Boulianne louis-francis.ratte-boulianne at collabora.co.uk
Tue Jul 14 09:51:01 PDT 2009


---
 docs/libs/farsight2-libs-sections.txt             |    1 +
 gst-libs/gst/farsight/fs-element-added-notifier.c |   30 +++++++++++++++++++++
 gst-libs/gst/farsight/fs-element-added-notifier.h |    5 +++
 python/pyfarsight.defs                            |   10 +++++++
 4 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/docs/libs/farsight2-libs-sections.txt b/docs/libs/farsight2-libs-sections.txt
index b31fbb0..b879e9d 100644
--- a/docs/libs/farsight2-libs-sections.txt
+++ b/docs/libs/farsight2-libs-sections.txt
@@ -238,6 +238,7 @@ fs_element_added_notifier_new
 fs_element_added_notifier_add
 fs_element_added_notifier_remove
 fs_element_added_notifier_set_properties_from_keyfile
+fs_element_added_notifier_set_properties_from_file
 <SUBSECTION Standard>
 FsElementAddedNotifierClass
 FsElementAddedNotifierPrivate
diff --git a/gst-libs/gst/farsight/fs-element-added-notifier.c b/gst-libs/gst/farsight/fs-element-added-notifier.c
index 9ff8cad..6f698cb 100644
--- a/gst-libs/gst/farsight/fs-element-added-notifier.c
+++ b/gst-libs/gst/farsight/fs-element-added-notifier.c
@@ -402,6 +402,36 @@ fs_element_added_notifier_set_properties_from_keyfile (
 }
 
 
+/**
+ * fs_element_added_notifier_set_properties_from_file:
+ * @notifier: a #FsElementAddedNotifier
+ * @filename: The name of the keyfile to use
+ * @error: location of a #GError, or %NULL if no error occured
+ *
+ * Same as fs_element_added_notifier_set_properties_from_keyfile() but using
+ * the name of the file to load instead of the #GKeyFile directly.
+ *
+ * Returns: %TRUE if the file was successfully loaded, %FALSE otherwise
+ */
+gboolean
+fs_element_added_notifier_set_properties_from_file (
+    FsElementAddedNotifier *notifier,
+    const gchar *filename,
+    GError **error)
+{
+  GKeyFile *keyfile = g_key_file_new ();
+
+  if (!g_key_file_load_from_file (keyfile, filename, G_KEY_FILE_NONE, error))
+  {
+    g_key_file_free (keyfile);
+    return FALSE;
+  }
+
+  fs_element_added_notifier_set_properties_from_keyfile(notifier, keyfile);
+
+  return TRUE;
+}
+
 static void
 _element_added_callback (GstBin *parent, GstElement *element,
     gpointer user_data)
diff --git a/gst-libs/gst/farsight/fs-element-added-notifier.h b/gst-libs/gst/farsight/fs-element-added-notifier.h
index 69681d2..26a7db4 100644
--- a/gst-libs/gst/farsight/fs-element-added-notifier.h
+++ b/gst-libs/gst/farsight/fs-element-added-notifier.h
@@ -92,6 +92,11 @@ void fs_element_added_notifier_set_properties_from_keyfile (
     FsElementAddedNotifier *notifier,
     GKeyFile *keyfile);
 
+gboolean fs_element_added_notifier_set_properties_from_file (
+    FsElementAddedNotifier *notifier,
+    const gchar *filename,
+    GError **error);
+
 G_END_DECLS
 
 #endif /* __FS_ELEMENT_ADDED_NOTIFIER_H__ */
diff --git a/python/pyfarsight.defs b/python/pyfarsight.defs
index 3c155ec..8c25164 100644
--- a/python/pyfarsight.defs
+++ b/python/pyfarsight.defs
@@ -668,6 +668,16 @@
   )
 )
 
+(define-method set_properties_from_file
+  (of-object "FsElementAddedNotifier")
+  (c-name "fs_element_added_notifier_set_properties_from_file")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "filename")
+    '("GError**" "error")
+  )
+)
+
 
 ;; -*- scheme -*-
 ; object definitions ...
-- 
1.5.6.5




More information about the farsight-commits mailing list