Index: gstcaps.c
===================================================================
RCS file: /cvsroot/gstreamer/gstreamer/gst/gstcaps.c,v
retrieving revision 1.69
diff -u -r1.69 gstcaps.c
--- gstcaps.c	29 Jun 2003 14:05:42 -0000	1.69
+++ gstcaps.c	1 Jul 2003 08:24:20 -0000
@@ -661,6 +661,66 @@
 }
 
 /**
+ * gst_caps_has_property:
+ * @caps: the caps to query
+ * @name: the name of the property to search for
+ *
+ * Figure out whether this caps contains the requested property.
+ *
+ * Returns: true if the caps contains the property.
+ */
+
+gboolean
+gst_caps_has_property (GstCaps *caps, const gchar *name)
+{
+  GstProps *props = gst_caps_get_props (caps);
+
+  return (props != NULL &&
+	  gst_props_has_property (props, name));
+}
+
+/**
+ * gst_caps_has_property_typed:
+ * @caps: the caps to query
+ * @name: the name of the property to search for
+ * @type: the type of the property to search for
+ *
+ * Figure out whether this caps contains the requested property,
+ * and whether this property is of the requested type.
+ *
+ * Returns: true if the caps contains the typed property.
+ */
+
+gboolean
+gst_caps_has_property_typed (GstCaps *caps, const gchar *name, GstPropsType type)
+{
+  GstProps *props = gst_caps_get_props (caps);
+
+  return (props != NULL &&
+	  gst_props_has_property_typed (props, name, type));
+}
+
+/**
+ * gst_caps_has_property_fixed:
+ * @caps: the caps to query
+ * @name: the name of the property to search for
+ *
+ * Figure out whether this caps contains the requested property,
+ * and whether this property is fixed.
+ *
+ * Returns: true if the caps contains the fixed property.
+ */
+
+gboolean
+gst_caps_has_property_fixed (GstCaps *caps, const gchar *name)
+{
+  GstProps *props = gst_caps_get_props (caps);
+
+  return (props != NULL &&
+	  gst_props_has_fixed_property (props, name));
+}
+
+/**
  * gst_caps_next:
  * @caps: the caps to query
  *
Index: gstcaps.h
===================================================================
RCS file: /cvsroot/gstreamer/gstreamer/gst/gstcaps.h,v
retrieving revision 1.52
diff -u -r1.52 gstcaps.h
--- gstcaps.h	13 Jun 2003 21:26:33 -0000	1.52
+++ gstcaps.h	1 Jul 2003 08:24:20 -0000
@@ -167,9 +167,9 @@
 #define		gst_caps_get_boolean(caps,name,res)	gst_props_entry_get_boolean(gst_props_get_entry((caps)->properties,name),res)
 #define		gst_caps_get_string(caps,name,res)	gst_props_entry_get_string(gst_props_get_entry((caps)->properties,name),res)
 
-#define		gst_caps_has_property(caps, name)	gst_props_has_property ((caps)->properties, name)
-#define		gst_caps_has_property_typed(caps, name, type)	gst_props_has_property_typed ((caps)->properties, name, type)
-#define		gst_caps_has_fixed_property(caps, name)	gst_props_has_fixed_property ((caps)->properties, name)
+gboolean	gst_caps_has_property			(GstCaps *caps, const gchar *name);
+gboolean	gst_caps_has_property_typed		(GstCaps *caps, const gchar *name, GstPropsType type);
+gboolean	gst_caps_has_property_fixed		(GstCaps *caps, const gchar *name);
 
 GstCaps*	gst_caps_get_by_name			(GstCaps *caps, const gchar *name);
 
