element: add method to get metadata
authorWim Taymans <wim.taymans@collabora.co.uk>
Fri, 20 May 2011 10:43:24 +0000 (12:43 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Fri, 20 May 2011 10:45:06 +0000 (12:45 +0200)
Add a method to get the metadata from a klass.

gst/gstelement.c
gst/gstelement.h

index a6157b8..b6a1adb 100644 (file)
@@ -1350,6 +1350,24 @@ gst_element_class_set_metadata (GstElementClass * klass,
 }
 
 /**
+ * gst_element_class_get_metadata:
+ * @klass: class to get metadata for
+ * @key: the key to get
+ *
+ * Get metadata with @key in @klass.
+ *
+ * Returns: the metadata for @key.
+ */
+G_CONST_RETURN gchar *
+gst_element_class_get_metadata (GstElementClass * klass, const gchar * key)
+{
+  g_return_val_if_fail (GST_IS_ELEMENT_CLASS (klass), NULL);
+  g_return_val_if_fail (key != NULL, NULL);
+
+  return gst_structure_get_string ((GstStructure *) klass->metadata, key);
+}
+
+/**
  * gst_element_class_get_pad_template_list:
  * @element_class: a #GstElementClass to get pad templates of.
  *
index 28b23ec..7cf8fda 100644 (file)
@@ -674,6 +674,8 @@ void                    gst_element_class_set_metadata          (GstElementClass
                                                                  const gchar     *author);
 void                    gst_element_class_add_metadata          (GstElementClass * klass,
                                                                  const gchar * key, const gchar * value);
+G_CONST_RETURN gchar *  gst_element_class_get_metadata          (GstElementClass * klass,
+                                                                 const gchar * key);
 
 
 /* element instance */