diff --git a/ChangeLog b/ChangeLog index edf16b17df..7015ab6fe6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2003-03-16 Christian Meyer + + * tools/gst-inspect.c + (print_prop): Modified to make compile compile with the new introduced + function. + * tools/gst-xmlinspect.c + (print_prop): ditto. + +2003-03-16 Christian Meyer + + * gst/gstprops.[ch]: Add function gst_props_get_type(). + * gst/gstprops.[ch], gst/gstutils.c, gst/registries/gstxmlregistry.c: + - Rename gst_props_entry_get_type() -> gst_props_entry_get_props_type(). + - Add gst_props_entry_get_type() (returning the GType). + * gst/gstcaps.[ch]: Add function gst_caps_get_type(). + + Applied patches from Martin Schulze. + 2003-01-09 Thomas Vander Stichele * first pass at changing _connect/_disconnect -> _link/_unlink diff --git a/gst/gstcaps.c b/gst/gstcaps.c index c30a7a5ed2..94e668c578 100644 --- a/gst/gstcaps.c +++ b/gst/gstcaps.c @@ -90,6 +90,12 @@ _gst_caps_initialize (void) #endif } +GType +gst_caps_get_type (void) +{ + return _gst_caps_type; +} + static guint16 get_type_for_mime (const gchar *mime) { diff --git a/gst/gstcaps.h b/gst/gstcaps.h index 2168bc9885..6d9e536f0c 100644 --- a/gst/gstcaps.h +++ b/gst/gstcaps.h @@ -120,6 +120,7 @@ factoryname (void) \ void _gst_caps_initialize (void); /* creating new caps */ +GType gst_caps_get_type (void); GstCaps* gst_caps_new (const gchar *name, const gchar *mime, GstProps *props); GstCaps* gst_caps_new_id (const gchar *name, const guint16 id, GstProps *props); /* replace pointer to caps, doing proper refcounting */ diff --git a/gst/gstprops.c b/gst/gstprops.c index bcec9dd5de..64c168e1d8 100644 --- a/gst/gstprops.c +++ b/gst/gstprops.c @@ -41,7 +41,7 @@ GType _gst_props_entry_type; struct _GstPropsEntry { GQuark propid; - GstPropsType propstype; + GstPropsType propstype; union { /* flat values */ @@ -84,7 +84,7 @@ transform_func (const GValue *src_value, if (props) { GList *propslist = props->properties; - while (propslist) { + while (propslist) { GstPropsEntry *entry = (GstPropsEntry *)propslist->data; const gchar *name = g_quark_to_string (entry->propid); @@ -108,7 +108,7 @@ transform_func (const GValue *src_value, default: break; } - + propslist = g_list_next (propslist); if (propslist) { g_string_append (result, "; "); @@ -119,16 +119,15 @@ transform_func (const GValue *src_value, g_string_free (result, FALSE); } - -void -_gst_props_initialize (void) +void +_gst_props_initialize (void) { - _gst_props_entries_chunk = gst_mem_chunk_new ("GstPropsEntries", - sizeof (GstPropsEntry), sizeof (GstPropsEntry) * 1024, + _gst_props_entries_chunk = gst_mem_chunk_new ("GstPropsEntries", + sizeof (GstPropsEntry), sizeof (GstPropsEntry) * 1024, G_ALLOC_AND_FREE); - _gst_props_chunk = gst_mem_chunk_new ("GstProps", - sizeof (GstProps), sizeof (GstProps) * 256, + _gst_props_chunk = gst_mem_chunk_new ("GstProps", + sizeof (GstProps), sizeof (GstProps) * 256, G_ALLOC_AND_FREE); _gst_props_type = g_boxed_type_register_static ("GstProps", @@ -199,9 +198,9 @@ gst_props_debug_entry (GstPropsEntry *entry) } } -static gint +static gint props_compare_func (gconstpointer a, - gconstpointer b) + gconstpointer b) { GstPropsEntry *entry1 = (GstPropsEntry *)a; GstPropsEntry *entry2 = (GstPropsEntry *)b; @@ -209,9 +208,9 @@ props_compare_func (gconstpointer a, return (entry1->propid - entry2->propid); } -static gint +static gint props_find_func (gconstpointer a, - gconstpointer b) + gconstpointer b) { GstPropsEntry *entry2 = (GstPropsEntry *)a; GQuark quark = (GQuark) GPOINTER_TO_INT (b); @@ -325,10 +324,10 @@ static void gst_props_entry_clean (GstPropsEntry *entry) { switch (entry->propstype) { - case GST_PROPS_STRING_TYPE: + case GST_PROPS_STRING_TYPE: g_free (entry->data.string_data.string); - break; - case GST_PROPS_LIST_TYPE: + break; + case GST_PROPS_LIST_TYPE: { GList *entries = entry->data.list_data.entries; @@ -339,8 +338,8 @@ gst_props_entry_clean (GstPropsEntry *entry) g_list_free (entry->data.list_data.entries); break; } - default: - break; + default: + break; } } @@ -363,6 +362,12 @@ gst_props_entry_destroy (GstPropsEntry *entry) #endif } +GType +gst_props_get_type (void) +{ + return _gst_props_type; +} + /** * gst_props_empty_new: * @@ -400,25 +405,25 @@ gst_props_empty_new (void) */ void gst_props_replace (GstProps **oldprops, GstProps *newprops) -{ +{ if (*oldprops != newprops) { if (newprops) gst_props_ref (newprops); if (*oldprops) gst_props_unref (*oldprops); *oldprops = newprops; } -} - +} + /** * gst_props_replace_sink: * @oldprops: the props to take replace * @newprops: the props to take replace * * Replace the pointer to the props and take ownership. - */ + */ void gst_props_replace_sink (GstProps **oldprops, GstProps *newprops) -{ +{ gst_props_replace (oldprops, newprops); gst_props_sink (newprops); } @@ -473,7 +478,7 @@ gst_props_remove_entry_by_name (GstProps *props, const gchar *name) g_return_if_fail (props != NULL); g_return_if_fail (name != NULL); - + quark = g_quark_from_string (name); lentry = g_list_find_custom (props->properties, GINT_TO_POINTER (quark), props_find_func); @@ -485,7 +490,7 @@ gst_props_remove_entry_by_name (GstProps *props, const gchar *name) /** * gst_props_new: * @firstname: the first property name - * @...: the property values + * @...: the property values * * Create a new property from the given key/value pairs * @@ -496,16 +501,15 @@ gst_props_new (const gchar *firstname, ...) { GstProps *props; va_list var_args; - + va_start (var_args, firstname); props = gst_props_newv (firstname, var_args); - - va_end (var_args); - - return props; -} + va_end (var_args); + + return props; +} /** * gst_props_debug: @@ -520,11 +524,11 @@ gst_props_debug (GstProps *props) GST_DEBUG (GST_CAT_PROPERTIES, "props %p, refcount %d, flags %d", props, props->refcount, props->flags); - while (propslist) { + while (propslist) { GstPropsEntry *entry = (GstPropsEntry *)propslist->data; gst_props_debug_entry (entry); - + propslist = g_list_next (propslist); } } @@ -636,6 +640,12 @@ gst_props_add_to_int_list (GList *entries, GstPropsEntry *newentry) return g_list_prepend (entries, newentry); } +GType +gst_props_entry_get_type (void) +{ + return _gst_props_entry_type; +} + static GstPropsEntry* gst_props_entry_newv (const gchar *name, va_list var_args) { @@ -662,7 +672,7 @@ gst_props_entry_new (const gchar *name, ...) { va_list var_args; GstPropsEntry *entry; - + va_start (var_args, name); entry = gst_props_entry_newv (name, var_args); va_end (var_args); @@ -709,7 +719,7 @@ gst_props_newv (const gchar *firstname, va_list var_args) /* properties */ while (prop_name) { GstPropsEntry *entry; - + entry = gst_props_alloc_entry (); entry->propid = g_quark_from_string (prop_name); GST_PROPS_ENTRY_FILL (entry, var_args); @@ -810,7 +820,7 @@ gst_props_set (GstProps *props, const gchar *name, ...) va_list var_args; g_return_val_if_fail (props != NULL, NULL); - + quark = g_quark_from_string (name); lentry = g_list_find_custom (props->properties, GINT_TO_POINTER (quark), props_find_func); @@ -848,7 +858,7 @@ gst_props_unref (GstProps *props) { if (props == NULL) return NULL; - + g_return_val_if_fail (props->refcount > 0, NULL); GST_DEBUG (GST_CAT_PROPERTIES, "unref %p (%d->%d)", props, props->refcount, props->refcount-1); @@ -879,7 +889,7 @@ gst_props_ref (GstProps *props) g_return_val_if_fail (props->refcount > 0, NULL); GST_DEBUG (GST_CAT_PROPERTIES, "ref %p (%d->%d)", props, props->refcount, props->refcount+1); - + props->refcount++; return props; @@ -920,7 +930,7 @@ gst_props_destroy (GstProps *props) if (props == NULL) return; - + entries = props->properties; while (entries) { @@ -935,7 +945,7 @@ gst_props_destroy (GstProps *props) #endif } -/** +/** * gst_props_entry_copy: * @entry: the entry to copy * @@ -976,7 +986,7 @@ gst_props_list_copy (GList *propslist) GstPropsEntry *entry = (GstPropsEntry *)propslist->data; new = g_list_prepend (new, gst_props_entry_copy (entry)); - + propslist = g_list_next (propslist); } new = g_list_reverse (new); @@ -1046,7 +1056,7 @@ gst_props_get_entry (GstProps *props, const gchar *name) { GList *lentry; GQuark quark; - + g_return_val_if_fail (props != NULL, NULL); g_return_val_if_fail (name != NULL, NULL); @@ -1104,7 +1114,7 @@ gst_props_has_property_typed (GstProps *props, const gchar *name, GstPropsType t * @props: the props to check * @name: the name of the key to find * - * Checks if a given props has a property with the given name that + * Checks if a given props has a property with the given name that * is also fixed, ie. is not a list or a range. * * Returns: TRUE if the property was found, FALSE otherwise. @@ -1115,22 +1125,22 @@ gst_props_has_fixed_property (GstProps *props, const gchar *name) const GstPropsEntry *entry; entry = gst_props_get_entry (props, name); - if (!entry) + if (!entry) return FALSE; return !GST_PROPS_ENTRY_IS_VARIABLE (entry); } /** - * gst_props_entry_get_type: + * gst_props_entry_get_props_type: * @entry: the props entry to query * - * Get the type of the given props entry. + * Get the type of the given props entry. * * Returns: The type of the props entry. */ GstPropsType -gst_props_entry_get_type (const GstPropsEntry *entry) +gst_props_entry_get_props_type (const GstPropsEntry *entry) { g_return_val_if_fail (entry != NULL, GST_PROPS_INVALID_TYPE); @@ -1255,7 +1265,7 @@ gst_props_get (GstProps *props, gchar *first_name, ...) va_start (var_args, first_name); ret = gst_props_getv (props, FALSE, first_name, var_args); va_end (var_args); - + return ret; } @@ -1278,7 +1288,7 @@ gst_props_get_safe (GstProps *props, gchar *first_name, ...) va_start (var_args, first_name); ret = gst_props_getv (props, TRUE, first_name, var_args); va_end (var_args); - + return ret; } @@ -1289,7 +1299,7 @@ gst_props_get_safe (GstProps *props, gchar *first_name, ...) * * Get the contents of the entry into the given gint. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1305,7 +1315,7 @@ gst_props_entry_get_int (const GstPropsEntry *entry, gint *val) * * Get the contents of the entry into the given gfloat. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1321,7 +1331,7 @@ gst_props_entry_get_float (const GstPropsEntry *entry, gfloat *val) * * Get the contents of the entry into the given guint32. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1337,7 +1347,7 @@ gst_props_entry_get_fourcc_int (const GstPropsEntry *entry, guint32 *val) * * Get the contents of the entry into the given gboolean. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1353,7 +1363,7 @@ gst_props_entry_get_boolean (const GstPropsEntry *entry, gboolean *val) * * Get the contents of the entry into the given gchar*. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1370,7 +1380,7 @@ gst_props_entry_get_string (const GstPropsEntry *entry, const gchar **val) * * Get the contents of the entry into the given gints. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1387,7 +1397,7 @@ gst_props_entry_get_int_range (const GstPropsEntry *entry, gint *min, gint *max) * * Get the contents of the entry into the given gfloats. * - * Returns: TRUE is the value could be fetched. FALSE if the + * Returns: TRUE is the value could be fetched. FALSE if the * entry is not of given type or did not exist. */ gboolean @@ -1436,7 +1446,7 @@ gst_props_merge (GstProps *props, GstProps *tomerge) GstPropsEntry *entry = (GstPropsEntry *)merge_props->data; gst_props_add_entry (props, entry); - + merge_props = g_list_next (merge_props); } @@ -1465,8 +1475,7 @@ gst_props_entry_check_list_compatibility (GstPropsEntry *entry1, GstPropsEntry * static gboolean gst_props_entry_check_compatibility (GstPropsEntry *entry1, GstPropsEntry *entry2) { - GST_DEBUG (GST_CAT_PROPERTIES,"compare: %s %s", g_quark_to_string (entry1->propid), - g_quark_to_string (entry2->propid)); + GST_DEBUG (GST_CAT_PROPERTIES,"compare: %s %s", g_quark_to_string (entry1->propid), g_quark_to_string (entry2->propid)); if (entry2->propstype == GST_PROPS_LIST_TYPE && entry1->propstype != GST_PROPS_LIST_TYPE) { return gst_props_entry_check_list_compatibility (entry1, entry2); @@ -1600,7 +1609,7 @@ gst_props_check_compatibility (GstProps *fromprops, GstProps *toprops) g_return_val_if_fail (fromprops != NULL, FALSE); g_return_val_if_fail (toprops != NULL, FALSE); - + sourcelist = fromprops->properties; sinklist = toprops->properties; @@ -1750,7 +1759,7 @@ gst_props_entry_intersect (GstPropsEntry *entry1, GstPropsEntry *entry2) break; } if (this->data.int_data >= entry1->data.int_range_data.min && - this->data.int_data <= entry1->data.int_range_data.max) + this->data.int_data <= entry1->data.int_range_data.max) { /* prepend and reverse at the end */ result->data.list_data.entries = g_list_prepend (result->data.list_data.entries, @@ -1875,7 +1884,7 @@ G_STMT_START { \ GST_PROPS_FLAG_UNSET ((props), GST_PROPS_FIXED); \ props->properties = g_list_prepend ((props)->properties, toadd); \ } G_STMT_END - + /** * gst_props_intersect: * @props1: a property @@ -1900,7 +1909,7 @@ gst_props_intersect (GstProps *props1, GstProps *props2) g_return_val_if_fail (props2 != NULL, NULL); intersection = gst_props_empty_new (); - + props1list = props1->properties; props2list = props2->properties; @@ -1915,7 +1924,7 @@ gst_props_intersect (GstProps *props1, GstProps *props2) gst_props_entry_add_sorted_prepend (intersection, gst_props_entry_copy (entry1)); props1list = g_list_next (props1list); - if (!props1list) + if (!props1list) goto end; entry1 = (GstPropsEntry *)props1list->data; @@ -1924,7 +1933,7 @@ gst_props_intersect (GstProps *props1, GstProps *props2) gst_props_entry_add_sorted_prepend (intersection, gst_props_entry_copy (entry2)); props2list = g_list_next (props2list); - if (!props2list) + if (!props2list) goto end; entry2 = (GstPropsEntry *)props2list->data; @@ -1951,7 +1960,7 @@ end: leftovers = props2list; while (leftovers) { - gst_props_entry_add_sorted_prepend (intersection, + gst_props_entry_add_sorted_prepend (intersection, gst_props_entry_copy ((GstPropsEntry *) leftovers->data)); leftovers = g_list_next (leftovers); } @@ -1977,7 +1986,7 @@ gst_props_normalize (GstProps *props) GList *entries; GList *result = NULL; - if (!props) + if (!props) return NULL; entries = props->properties; @@ -2011,7 +2020,7 @@ gst_props_normalize (GstProps *props) result = g_list_append (result, newprops); } - list_entries = g_list_next (list_entries); + list_entries = g_list_next (list_entries); } /* we break out of the loop because the other lists are * unrolled in the recursive call */ @@ -2037,14 +2046,14 @@ gst_props_save_thyself_func (GstPropsEntry *entry, xmlNodePtr parent) gchar *str; switch (entry->propstype) { - case GST_PROPS_INT_TYPE: + case GST_PROPS_INT_TYPE: subtree = xmlNewChild (parent, NULL, "int", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); str = g_strdup_printf ("%d", entry->data.int_data); xmlNewProp (subtree, "value", str); g_free(str); break; - case GST_PROPS_INT_RANGE_TYPE: + case GST_PROPS_INT_RANGE_TYPE: subtree = xmlNewChild (parent, NULL, "range", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); str = g_strdup_printf ("%d", entry->data.int_range_data.min); @@ -2054,14 +2063,14 @@ gst_props_save_thyself_func (GstPropsEntry *entry, xmlNodePtr parent) xmlNewProp (subtree, "max", str); g_free(str); break; - case GST_PROPS_FLOAT_TYPE: + case GST_PROPS_FLOAT_TYPE: subtree = xmlNewChild (parent, NULL, "float", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); str = g_strdup_printf ("%f", entry->data.float_data); xmlNewProp (subtree, "value", str); g_free(str); break; - case GST_PROPS_FLOAT_RANGE_TYPE: + case GST_PROPS_FLOAT_RANGE_TYPE: subtree = xmlNewChild (parent, NULL, "floatrange", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); str = g_strdup_printf ("%f", entry->data.float_range_data.min); @@ -2085,12 +2094,12 @@ gst_props_save_thyself_func (GstPropsEntry *entry, xmlNodePtr parent) xmlNewProp (subtree, "hexvalue", str); g_free(str); break; - case GST_PROPS_BOOLEAN_TYPE: + case GST_PROPS_BOOLEAN_TYPE: subtree = xmlNewChild (parent, NULL, "boolean", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); xmlNewProp (subtree, "value", (entry->data.bool_data ? "true" : "false")); break; - case GST_PROPS_STRING_TYPE: + case GST_PROPS_STRING_TYPE: subtree = xmlNewChild (parent, NULL, "string", NULL); xmlNewProp (subtree, "name", g_quark_to_string (entry->propid)); xmlNewProp (subtree, "value", entry->data.string_data.string); @@ -2137,7 +2146,7 @@ gst_props_save_thyself (GstProps *props, xmlNodePtr parent) proplist = g_list_next (proplist); } - + return parent; } @@ -2270,7 +2279,7 @@ gst_props_load_thyself (xmlNodePtr parent) entry = gst_props_load_thyself_func (field); - if (entry) + if (entry) gst_props_add_entry (props, entry); } field = field->next; diff --git a/gst/gstprops.h b/gst/gstprops.h index 11b355d90d..88c14522b9 100644 --- a/gst/gstprops.h +++ b/gst/gstprops.h @@ -115,6 +115,7 @@ struct _GstProps { void _gst_props_initialize (void); /* creating new properties */ +GType gst_props_get_type (void); GstProps* gst_props_new (const gchar *firstname, ...); GstProps* gst_props_newv (const gchar *firstname, va_list var_args); GstProps* gst_props_empty_new (void); @@ -161,11 +162,12 @@ void gst_props_remove_entry (GstProps *props, GstPropsEntry *entry); void gst_props_remove_entry_by_name (GstProps *props, const gchar *name); /* working with props entries */ +GType gst_props_entry_get_type (void); GstPropsEntry* gst_props_entry_new (const gchar *name, ...); void gst_props_entry_destroy (GstPropsEntry *entry); GstPropsEntry* gst_props_entry_copy (const GstPropsEntry *entry); -GstPropsType gst_props_entry_get_type (const GstPropsEntry *entry); +GstPropsType gst_props_entry_get_props_type (const GstPropsEntry *entry); const gchar* gst_props_entry_get_name (const GstPropsEntry *entry); gboolean gst_props_entry_is_fixed (const GstPropsEntry *entry); diff --git a/gst/gstutils.c b/gst/gstutils.c index 0d2e73f07b..d9c959080c 100644 --- a/gst/gstutils.c +++ b/gst/gstutils.c @@ -304,7 +304,7 @@ gst_print_props (GString *buf, gint indent, GList *props, gboolean showname) string_append_indent (buf, 2 + width - strlen (name)); } - type = gst_props_entry_get_type (prop); + type = gst_props_entry_get_props_type (prop); switch (type) { case GST_PROPS_INT_TYPE: { diff --git a/gst/registries/gstxmlregistry.c b/gst/registries/gstxmlregistry.c index ccdb088530..84fc0a9eec 100644 --- a/gst/registries/gstxmlregistry.c +++ b/gst/registries/gstxmlregistry.c @@ -1286,7 +1286,7 @@ gst_xml_registry_save_props_func (GstPropsEntry *entry, name = gst_props_entry_get_name (entry); - switch (gst_props_entry_get_type (entry)) { + switch (gst_props_entry_get_props_type (entry)) { case GST_PROPS_INT_TYPE: { gint value; @@ -1338,7 +1338,7 @@ gst_xml_registry_save_props_func (GstPropsEntry *entry, break; } default: - g_warning ("trying to save unknown property type %d", gst_props_entry_get_type (entry)); + g_warning ("trying to save unknown property type %d", gst_props_entry_get_props_type (entry)); return FALSE; } return TRUE; @@ -1354,7 +1354,7 @@ gst_xml_registry_save_props (GstXMLRegistry *xmlregistry, GstProps *props) while (proplist) { GstPropsEntry *entry = (GstPropsEntry *) proplist->data; - switch (gst_props_entry_get_type (entry)) { + switch (gst_props_entry_get_props_type (entry)) { case GST_PROPS_LIST_TYPE: { const GList *list; diff --git a/tools/gst-inspect.c b/tools/gst-inspect.c index 3dc38bce19..9281fa10c9 100644 --- a/tools/gst-inspect.c +++ b/tools/gst-inspect.c @@ -2,8 +2,8 @@ #include #include -static void -print_prop (GstPropsEntry *prop, gboolean showname, const gchar *pfx) +static void +print_prop (GstPropsEntry *prop, gboolean showname, const gchar *pfx) { GstPropsType type; @@ -12,7 +12,7 @@ print_prop (GstPropsEntry *prop, gboolean showname, const gchar *pfx) else g_print(pfx); - type = gst_props_entry_get_type (prop); + type = gst_props_entry_get_props_type (prop); switch (type) { case GST_PROPS_INT_TYPE: @@ -62,10 +62,10 @@ print_prop (GstPropsEntry *prop, gboolean showname, const gchar *pfx) guint32 val; gst_props_entry_get_fourcc_int (prop, &val); g_print("FourCC: '%c%c%c%c'\n", - (gchar)( val & 0xff), - (gchar)((val >> 8) & 0xff), - (gchar)((val >> 16) & 0xff), - (gchar)((val >> 24) & 0xff)); + (gchar)( val & 0xff), + (gchar)((val >> 8) & 0xff), + (gchar)((val >> 16) & 0xff), + (gchar)((val >> 24) & 0xff)); break; } case GST_PROPS_LIST_TYPE: @@ -92,8 +92,8 @@ print_prop (GstPropsEntry *prop, gboolean showname, const gchar *pfx) } } -static void -print_props (GstProps *properties, const gchar *pfx) +static void +print_props (GstProps *properties, const gchar *pfx) { GList *props; GstPropsEntry *prop; @@ -107,8 +107,8 @@ print_props (GstProps *properties, const gchar *pfx) } } -static void -print_caps (const GstCaps *caps, const gchar *pfx) +static void +print_caps (const GstCaps *caps, const gchar *pfx) { while (caps) { GstType *type; @@ -116,7 +116,7 @@ print_caps (const GstCaps *caps, const gchar *pfx) g_print ("%s'%s': (%sfixed)\n", pfx, caps->name, (GST_CAPS_IS_FIXED (caps) ? "" : "NOT ")); type = gst_type_find_by_id (caps->id); - if (type) + if (type) g_print ("%s MIME type: '%s':\n", pfx, type->mime); else g_print ("%s MIME type: 'unknown/unknown':\n", pfx); @@ -133,8 +133,8 @@ print_caps (const GstCaps *caps, const gchar *pfx) } } -static void -print_formats (const GstFormat *formats) +static void +print_formats (const GstFormat *formats) { while (formats && *formats) { const GstFormatDefinition *definition; @@ -142,7 +142,7 @@ print_formats (const GstFormat *formats) definition = gst_format_get_details (*formats); if (definition) g_print ("\t\t(%d):\t%s (%s)\n", *formats, - definition->nick, definition->description); + definition->nick, definition->description); else g_print ("\t\t(%d):\tUnknown format\n", *formats); @@ -150,8 +150,8 @@ print_formats (const GstFormat *formats) } } -static void -print_query_types (const GstQueryType *types) +static void +print_query_types (const GstQueryType *types) { while (types && *types) { const GstQueryTypeDefinition *definition; @@ -159,7 +159,7 @@ print_query_types (const GstQueryType *types) definition = gst_query_type_get_details (*types); if (definition) g_print ("\t\t(%d):\t%s (%s)\n", *types, - definition->nick, definition->description); + definition->nick, definition->description); else g_print ("\t\t(%d):\tUnknown query format\n", *types); @@ -167,8 +167,8 @@ print_query_types (const GstQueryType *types) } } -static void -print_event_masks (const GstEventMask *masks) +static void +print_event_masks (const GstEventMask *masks) { #ifndef GST_DISABLE_ENUMTYPES GType event_type; @@ -186,13 +186,13 @@ print_event_masks (const GstEventMask *masks) switch (masks->type) { case GST_EVENT_SEEK: flags = masks->flags; - event_flags = gst_seek_type_get_type (); - flags_class = (GFlagsClass *) g_type_class_ref (event_flags); + event_flags = gst_seek_type_get_type (); + flags_class = (GFlagsClass *) g_type_class_ref (event_flags); break; default: break; } - + value = g_enum_get_value (klass, masks->type); g_print ("\t\t%s ", value->value_nick); @@ -202,16 +202,16 @@ print_event_masks (const GstEventMask *masks) if (flags & 1) { value = g_flags_get_first_value (flags_class, 1 << index); - if (value) + if (value) g_print ("| %s ", value->value_nick); - else + else g_print ("| ? "); } flags >>= 1; index++; } g_print ("\n"); - + masks++; } #endif @@ -230,28 +230,28 @@ output_hierarchy (GType type, gint level, gint *maxlevel) if (parent) output_hierarchy (parent, level, maxlevel); - + for (i=1; i<*maxlevel-level; i++) g_print (" "); if (*maxlevel-level) g_print (" +----"); g_print ("%s\n", g_type_name (type)); - + if (level == 1) g_print ("\n"); } static void -print_element_properties (GstElement *element) +print_element_properties (GstElement *element) { GParamSpec **property_specs; gint num_properties,i; gboolean readable; - - property_specs = g_object_class_list_properties - (G_OBJECT_GET_CLASS (element), &num_properties); + + property_specs = g_object_class_list_properties + (G_OBJECT_GET_CLASS (element), &num_properties); g_print("\nElement Arguments:\n"); for (i = 0; i < num_properties; i++) { @@ -266,173 +266,175 @@ print_element_properties (GstElement *element) } g_print(" %-20s: %s\n", g_param_spec_get_name (param), - g_param_spec_get_blurb (param)); + g_param_spec_get_blurb (param)); switch (G_VALUE_TYPE (&value)) { - case G_TYPE_STRING: - g_print ("%-23.23s String. ", ""); - if (readable) g_print ("(Default \"%s\")", g_value_get_string (&value)); - break; - case G_TYPE_BOOLEAN: - g_print ("%-23.23s Boolean. ", ""); - if (readable) g_print ("(Default %s)", (g_value_get_boolean (&value) ? "true" : "false")); - break; - case G_TYPE_ULONG: + case G_TYPE_STRING: + g_print ("%-23.23s String. ", ""); + if (readable) g_print ("(Default \"%s\")", g_value_get_string (&value)); + break; + case G_TYPE_BOOLEAN: + g_print ("%-23.23s Boolean. ", ""); + if (readable) g_print ("(Default %s)", (g_value_get_boolean (&value) ? "true" : "false")); + break; + case G_TYPE_ULONG: { - GParamSpecULong *pulong = G_PARAM_SPEC_ULONG (param); - g_print("%-23.23s Unsigned Long. ", ""); - if (readable) g_print("Range: %lu - %lu (Default %lu)", - pulong->minimum, pulong->maximum, g_value_get_ulong (&value)); - break; + GParamSpecULong *pulong = G_PARAM_SPEC_ULONG (param); + g_print("%-23.23s Unsigned Long. ", ""); + if (readable) g_print("Range: %lu - %lu (Default %lu)", + pulong->minimum, pulong->maximum, g_value_get_ulong (&value)); + break; } - case G_TYPE_LONG: + case G_TYPE_LONG: { - GParamSpecLong *plong = G_PARAM_SPEC_LONG (param); - g_print("%-23.23s Long. ", ""); - if (readable) g_print("Range: %ld - %ld (Default %ld)", - plong->minimum, plong->maximum, g_value_get_long (&value)); - break; + GParamSpecLong *plong = G_PARAM_SPEC_LONG (param); + g_print("%-23.23s Long. ", ""); + if (readable) g_print("Range: %ld - %ld (Default %ld)", + plong->minimum, plong->maximum, g_value_get_long (&value)); + break; } - case G_TYPE_UINT: + case G_TYPE_UINT: { - GParamSpecUInt *puint = G_PARAM_SPEC_UINT (param); - g_print("%-23.23s Unsigned Integer. ", ""); - if (readable) g_print("Range: %u - %u (Default %u)", - puint->minimum, puint->maximum, g_value_get_uint (&value)); - break; + GParamSpecUInt *puint = G_PARAM_SPEC_UINT (param); + g_print("%-23.23s Unsigned Integer. ", ""); + if (readable) g_print("Range: %u - %u (Default %u)", + puint->minimum, puint->maximum, g_value_get_uint (&value)); + break; } - case G_TYPE_INT: + case G_TYPE_INT: { - GParamSpecInt *pint = G_PARAM_SPEC_INT (param); - g_print("%-23.23s Integer. ", ""); - if (readable) g_print("Range: %d - %d (Default %d)", - pint->minimum, pint->maximum, g_value_get_int (&value)); - break; + GParamSpecInt *pint = G_PARAM_SPEC_INT (param); + g_print("%-23.23s Integer. ", ""); + if (readable) g_print("Range: %d - %d (Default %d)", + pint->minimum, pint->maximum, g_value_get_int (&value)); + break; } - case G_TYPE_UINT64: + case G_TYPE_UINT64: { - GParamSpecUInt64 *puint64 = G_PARAM_SPEC_UINT64 (param); - g_print("%-23.23s Unsigned Integer64. ", ""); - if (readable) g_print("Range: %" G_GUINT64_FORMAT " - %" G_GUINT64_FORMAT " (Default %" G_GUINT64_FORMAT ")", - puint64->minimum, puint64->maximum, g_value_get_uint64 (&value)); - break; + GParamSpecUInt64 *puint64 = G_PARAM_SPEC_UINT64 (param); + g_print("%-23.23s Unsigned Integer64. ", ""); + if (readable) g_print("Range: %" G_GUINT64_FORMAT " - %" + G_GUINT64_FORMAT " (Default %" G_GUINT64_FORMAT ")", + puint64->minimum, puint64->maximum, + g_value_get_uint64 (&value)); + break; } - case G_TYPE_INT64: + case G_TYPE_INT64: { - GParamSpecInt64 *pint64 = G_PARAM_SPEC_INT64 (param); - g_print("%-23.23s Integer64. ", ""); - if (readable) g_print("Range: %" G_GINT64_FORMAT " - %" G_GINT64_FORMAT " (Default %" G_GINT64_FORMAT ")", - pint64->minimum, pint64->maximum, g_value_get_int64 (&value)); - break; + GParamSpecInt64 *pint64 = G_PARAM_SPEC_INT64 (param); + g_print("%-23.23s Integer64. ", ""); + if (readable) g_print("Range: %" G_GINT64_FORMAT " - %" G_GINT64_FORMAT " (Default %" G_GINT64_FORMAT ")", pint64->minimum, + pint64->maximum, g_value_get_int64 (&value)); + break; } - case G_TYPE_FLOAT: + case G_TYPE_FLOAT: { - GParamSpecFloat *pfloat = G_PARAM_SPEC_FLOAT (param); - g_print("%-23.23s Float. Default: %-8.8s %15.7g\n", "", "", - g_value_get_float (&value)); - g_print("%-23.23s Range: %15.7g - %15.7g", "", - pfloat->minimum, pfloat->maximum); - break; + GParamSpecFloat *pfloat = G_PARAM_SPEC_FLOAT (param); + g_print("%-23.23s Float. Default: %-8.8s %15.7g\n", "", "", + g_value_get_float (&value)); + g_print("%-23.23s Range: %15.7g - %15.7g", "", + pfloat->minimum, pfloat->maximum); + break; } - case G_TYPE_DOUBLE: + case G_TYPE_DOUBLE: { - GParamSpecDouble *pdouble = G_PARAM_SPEC_DOUBLE (param); - g_print("%-23.23s Double. Default: %-8.8s %15.7g\n", "", "", - g_value_get_double (&value)); - g_print("%-23.23s Range: %15.7g - %15.7g", "", - pdouble->minimum, pdouble->maximum); - break; + GParamSpecDouble *pdouble = G_PARAM_SPEC_DOUBLE (param); + g_print("%-23.23s Double. Default: %-8.8s %15.7g\n", "", "", + g_value_get_double (&value)); + g_print("%-23.23s Range: %15.7g - %15.7g", "", + pdouble->minimum, pdouble->maximum); + break; } default: if (param->value_type == GST_TYPE_URI) { g_print("%-23.23s URI", ""); - } + } if (param->value_type == GST_TYPE_CAPS) { GstCaps *caps = g_value_peek_pointer (&value); - if (!caps) + if (!caps) g_print("%-23.23s Caps (NULL)", ""); - else { + else { print_caps (caps, " "); - } - } + } + } else if (G_IS_PARAM_SPEC_ENUM (param)) { GEnumValue *values; - guint j = 0; - gint enum_value; + guint j = 0; + gint enum_value; - values = G_ENUM_CLASS (g_type_class_ref (param->value_type))->values; - enum_value = g_value_get_enum (&value); + values = G_ENUM_CLASS (g_type_class_ref (param->value_type))->values; + enum_value = g_value_get_enum (&value); - while (values[j].value_name) { - if (values[j].value == enum_value) - break; - j++; - } + while (values[j].value_name) { + if (values[j].value == enum_value) + break; + j++; + } - g_print ("%-23.23s Enum \"%s\" (default %d, \"%s\")", "", - g_type_name (G_VALUE_TYPE (&value)), - enum_value, values[j].value_nick); + g_print ("%-23.23s Enum \"%s\" (default %d, \"%s\")", "", + g_type_name (G_VALUE_TYPE (&value)), + enum_value, values[j].value_nick); - j = 0; - while (values[j].value_name) { - g_print("\n%-23.23s (%d): \t%s", "", - values[j].value, values[j].value_nick); - j++; - } - /* g_type_class_unref (ec); */ - } + j = 0; + while (values[j].value_name) { + g_print("\n%-23.23s (%d): \t%s", "", + values[j].value, values[j].value_nick); + j++; + } + /* g_type_class_unref (ec); */ + } else if (G_IS_PARAM_SPEC_FLAGS (param)) { GFlagsValue *values; - guint j = 0; - gint flags_value; - GString *flags = NULL; + guint j = 0; + gint flags_value; + GString *flags = NULL; - values = G_FLAGS_CLASS (g_type_class_ref (param->value_type))->values; - flags_value = g_value_get_flags (&value); + values = G_FLAGS_CLASS (g_type_class_ref (param->value_type))->values; + flags_value = g_value_get_flags (&value); - while (values[j].value_name) { - if (values[j].value & flags_value) { - if (flags) { - g_string_append_printf (flags, " | %s", values[j].value_nick); - } - else { - flags = g_string_new (values[j].value_nick); - } - } - j++; - } + while (values[j].value_name) { + if (values[j].value & flags_value) { + if (flags) { + g_string_append_printf (flags, " | %s", values[j].value_nick); + } + else { + flags = g_string_new (values[j].value_nick); + } + } + j++; + } - g_print ("%-23.23s Flags \"%s\" (default %d, \"%s\")", "", - g_type_name (G_VALUE_TYPE (&value)), - flags_value, (flags ? flags->str : "(none)")); + g_print("%-23.23s Flags \"%s\" (default %d, \"%s\")", "", + g_type_name (G_VALUE_TYPE (&value)), + flags_value, (flags ? flags->str : "(none)")); - j = 0; - while (values[j].value_name) { - g_print("\n%-23.23s (%d): \t%s", "", - values[j].value, values[j].value_nick); - j++; - } + j = 0; + while (values[j].value_name) { + g_print("\n%-23.23s (%d): \t%s", "", + values[j].value, values[j].value_nick); + j++; + } - if (flags) - g_string_free (flags, TRUE); - } - else if (G_IS_PARAM_SPEC_OBJECT (param)) { - g_print("%-23.23s Object of type \"%s\"", "", - g_type_name(param->value_type)); + if (flags) + g_string_free (flags, TRUE); + } + else if (G_IS_PARAM_SPEC_OBJECT (param)) { + g_print("%-23.23s Object of type \"%s\"", "", + g_type_name(param->value_type)); + } + else { + g_print ("%-23.23s Unknown type %ld \"%s\"", "", param->value_type, + g_type_name(param->value_type)); } - else { - g_print ("%-23.23s Unknown type %ld \"%s\"", "",param->value_type, - g_type_name(param->value_type)); - } break; } - if (!readable) + if (!readable) g_print (" Write only\n"); - else + else g_print ("\n"); } - if (num_properties == 0) + if (num_properties == 0) g_print (" none\n"); } @@ -500,7 +502,7 @@ print_element_info (GstElementFactory *factory) if (padtemplate->caps) { g_print (" Capabilities:\n"); - print_caps (padtemplate->caps, " "); + print_caps (padtemplate->caps, " "); } g_print ("\n"); @@ -554,7 +556,7 @@ print_element_info (GstElementFactory *factory) if (element->loopfunc) g_print (" loopfunc()-based element: %s\n", - GST_DEBUG_FUNCPTR_NAME (element->loopfunc)); + GST_DEBUG_FUNCPTR_NAME (element->loopfunc)); else g_print (" No loopfunc(), must be chain-based or not configured yet\n"); @@ -622,47 +624,47 @@ print_element_info (GstElementFactory *factory) g_print (" Implementation:\n"); if (realpad->chainfunc) g_print (" Has chainfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME (realpad->chainfunc)); + GST_DEBUG_FUNCPTR_NAME (realpad->chainfunc)); if (realpad->getfunc) g_print (" Has getfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME (realpad->getfunc)); + GST_DEBUG_FUNCPTR_NAME (realpad->getfunc)); if (realpad->formatsfunc != gst_pad_get_formats_default) { g_print (" Supports seeking/conversion/query formats:\n"); - print_formats (gst_pad_get_formats (GST_PAD (realpad))); + print_formats (gst_pad_get_formats (GST_PAD (realpad))); } if (realpad->convertfunc != gst_pad_convert_default) g_print (" Has custom convertfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME (realpad->convertfunc)); + GST_DEBUG_FUNCPTR_NAME (realpad->convertfunc)); if (realpad->eventfunc != gst_pad_event_default) g_print (" Has custom eventfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME (realpad->eventfunc)); + GST_DEBUG_FUNCPTR_NAME (realpad->eventfunc)); if (realpad->eventmaskfunc != gst_pad_get_event_masks_default) { g_print (" Provides event masks:\n"); - print_event_masks (gst_pad_get_event_masks (GST_PAD (realpad))); + print_event_masks (gst_pad_get_event_masks (GST_PAD (realpad))); } if (realpad->queryfunc != gst_pad_query_default) g_print (" Has custom queryfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME (realpad->queryfunc)); + GST_DEBUG_FUNCPTR_NAME (realpad->queryfunc)); if (realpad->querytypefunc != gst_pad_get_query_types_default) { g_print (" Provides query types:\n"); - print_query_types (gst_pad_get_query_types (GST_PAD (realpad))); + print_query_types (gst_pad_get_query_types (GST_PAD (realpad))); } if (realpad->intlinkfunc != gst_pad_get_internal_links_default) g_print (" Has custom intconnfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME(realpad->intlinkfunc)); + GST_DEBUG_FUNCPTR_NAME(realpad->intlinkfunc)); if (realpad->bufferpoolfunc) g_print (" Has bufferpoolfunc(): %s\n", - GST_DEBUG_FUNCPTR_NAME(realpad->bufferpoolfunc)); + GST_DEBUG_FUNCPTR_NAME(realpad->bufferpoolfunc)); if (pad->padtemplate) g_print (" Pad Template: '%s'\n", - pad->padtemplate->name_template); + pad->padtemplate->name_template); if (realpad->caps) { g_print (" Capabilities:\n"); - print_caps (realpad->caps, " "); + print_caps (realpad->caps, " "); } } } else @@ -675,7 +677,7 @@ print_element_info (GstElementFactory *factory) GstDParamManager* dpman; GParamSpec** specs; gint x; - + g_print ("\nDynamic Parameters:\n"); if((dpman = gst_dpman_get_manager (element))) { specs = gst_dpman_list_dparam_specs (dpman); @@ -683,23 +685,24 @@ print_element_info (GstElementFactory *factory) g_print (" %-20.20s: ", g_param_spec_get_name (specs[x])); switch (G_PARAM_SPEC_VALUE_TYPE (specs[x])) { - case G_TYPE_INT64: - g_print ("64 Bit Integer (Default %" G_GINT64_FORMAT ", Range %" G_GINT64_FORMAT " -> %" G_GINT64_FORMAT ")", + case G_TYPE_INT64: + g_print ("64 Bit Integer (Default %" G_GINT64_FORMAT ", Range %" + G_GINT64_FORMAT " -> %" G_GINT64_FORMAT ")", ((GParamSpecInt64 *) specs[x])->default_value, - ((GParamSpecInt64 *) specs[x])->minimum, + ((GParamSpecInt64 *) specs[x])->minimum, ((GParamSpecInt64 *) specs[x])->maximum); break; - case G_TYPE_INT: - g_print ("Integer (Default %d, Range %d -> %d)", + case G_TYPE_INT: + g_print ("Integer (Default %d, Range %d -> %d)", ((GParamSpecInt *) specs[x])->default_value, - ((GParamSpecInt *) specs[x])->minimum, + ((GParamSpecInt *) specs[x])->minimum, ((GParamSpecInt *) specs[x])->maximum); break; - case G_TYPE_FLOAT: - g_print ("Float. Default: %-8.8s %15.7g\n", "", + case G_TYPE_FLOAT: + g_print ("Float. Default: %-8.8s %15.7g\n", "", ((GParamSpecFloat *) specs[x])->default_value); - g_print ("%-23.23s Range: %15.7g - %15.7g", "", - ((GParamSpecFloat *) specs[x])->minimum, + g_print ("%-23.23s Range: %15.7g - %15.7g", "", + ((GParamSpecFloat *) specs[x])->minimum, ((GParamSpecFloat *) specs[x])->maximum); break; default: g_print ("unknown %ld", G_PARAM_SPEC_VALUE_TYPE (specs[x])); @@ -713,13 +716,13 @@ print_element_info (GstElementFactory *factory) } } - /* Signals/Actions Block */ + /* Signals/Actions Block */ { guint *signals; guint nsignals; gint i, k; GSignalQuery *query; - + signals = g_signal_list_ids (G_OBJECT_TYPE (element), &nsignals); for (k = 0; k < 2; k++) { gint counted = 0; @@ -734,43 +737,42 @@ print_element_info (GstElementFactory *factory) GType return_type; const GType *param_types; gint j; - + query = g_new0 (GSignalQuery,1); g_signal_query (signals[i], query); - if ((k == 0 && !(query->signal_flags & G_SIGNAL_ACTION)) || - (k == 1 && (query->signal_flags & G_SIGNAL_ACTION))) { + if ((k == 0 && !(query->signal_flags & G_SIGNAL_ACTION)) || + (k == 1 && (query->signal_flags & G_SIGNAL_ACTION))) { n_params = query->n_params; return_type = query->return_type; param_types = query->param_types; - g_print (" \"%s\" :\t %s user_function (%s* object", - query->signal_name, g_type_name (return_type), - g_type_name (G_OBJECT_TYPE (element))); + g_print (" \"%s\" :\t %s user_function (%s* object", + query->signal_name, g_type_name (return_type), + g_type_name (G_OBJECT_TYPE (element))); for (j = 0; j < n_params; j++) { - g_print (",\n \t\t\t\t%s arg%d", g_type_name (param_types[j]), j); + g_print (",\n \t\t\t\t%s arg%d", g_type_name(param_types[j]), j); } - if (k == 0) + if (k == 0) g_print (",\n \t\t\t\tgpointer user_data);\n"); - else + else g_print (");\n"); - counted++; - } + counted++; + } g_free (query); } if (counted == 0) g_print (" none\n"); } } - /* for compound elements */ if (GST_IS_BIN (element)) { g_print ("\nChildren:\n"); children = (GList *) gst_bin_get_list (GST_BIN (element)); - if (!children) + if (!children) g_print (" none\n"); else { while (children) { @@ -785,8 +787,8 @@ print_element_info (GstElementFactory *factory) return 0; } -static void -print_element_list (void) +static void +print_element_list (void) { GList *plugins; @@ -794,7 +796,7 @@ print_element_list (void) while (plugins) { GList *features; GstPlugin *plugin; - + plugin = (GstPlugin*)(plugins->data); plugins = g_list_next (plugins); @@ -808,16 +810,16 @@ print_element_list (void) GstElementFactory *factory; factory = GST_ELEMENT_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory) ,factory->details->longname); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory) ,factory->details->longname); } #ifndef GST_DISABLE_AUTOPLUG else if (GST_IS_AUTOPLUG_FACTORY (feature)) { GstAutoplugFactory *factory; factory = GST_AUTOPLUG_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #endif #ifndef GST_DISABLE_INDEX @@ -825,42 +827,42 @@ print_element_list (void) GstIndexFactory *factory; factory = GST_INDEX_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #endif else if (GST_IS_TYPE_FACTORY (feature)) { GstTypeFactory *factory; factory = GST_TYPE_FACTORY (feature); - g_print ("%s type: %s: %s\n", plugin->name, - factory->mime, factory->exts); + g_print ("%s type: %s: %s\n", plugin->name, + factory->mime, factory->exts); if (factory->typefindfunc) g_print (" Has typefind function: %s\n", - GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); + GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); } else if (GST_IS_SCHEDULER_FACTORY (feature)) { GstSchedulerFactory *factory; factory = GST_SCHEDULER_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #ifndef GST_DISABLE_URI else if (GST_IS_URI_HANDLER (feature)) { GstURIHandler *handler; handler = GST_URI_HANDLER (feature); - g_print ("%s: %s: \"%s\" (%s) element \"%s\" property \"%s\"\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (handler), handler->uri, handler->longdesc, - handler->element, handler->property); + g_print ("%s: %s: \"%s\" (%s) element \"%s\" property \"%s\"\n", + plugin->name, GST_PLUGIN_FEATURE_NAME (handler), handler->uri, + handler->longdesc, handler->element, handler->property); } #endif else { - g_print ("%s: %s (%s)\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (feature), - g_type_name (G_OBJECT_TYPE (feature))); + g_print ("%s: %s (%s)\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (feature), + g_type_name (G_OBJECT_TYPE (feature))); } features = g_list_next (features); @@ -879,7 +881,7 @@ print_plugin_info (GstPlugin *plugin) gint num_schedulers = 0; gint num_indexes = 0; gint num_other = 0; - + g_print ("Plugin Details:\n"); g_print (" Name:\t\t%s\n", plugin->name); g_print (" Long Name:\t%s\n", plugin->longname); @@ -898,7 +900,7 @@ print_plugin_info (GstPlugin *plugin) factory = GST_ELEMENT_FACTORY (feature); g_print (" %s: %s\n", GST_OBJECT_NAME (factory), - factory->details->longname); + factory->details->longname); num_elements++; } #ifndef GST_DISABLE_AUTOPLUG @@ -926,8 +928,8 @@ print_plugin_info (GstPlugin *plugin) g_print (" %s: %s\n", factory->mime, factory->exts); if (factory->typefindfunc) - g_print (" Has typefind function: %s\n", - GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); + g_print (" Has typefind function: %s\n", + GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); num_types++; } else if (GST_IS_SCHEDULER_FACTORY (feature)) { @@ -938,8 +940,8 @@ print_plugin_info (GstPlugin *plugin) num_schedulers++; } else { - g_print (" %s (%s)\n", gst_object_get_name (GST_OBJECT (feature)), - g_type_name (G_OBJECT_TYPE (feature))); + g_print (" %s (%s)\n", gst_object_get_name (GST_OBJECT (feature)), + g_type_name (G_OBJECT_TYPE (feature))); num_other++; } num_features++; @@ -958,28 +960,27 @@ print_plugin_info (GstPlugin *plugin) g_print (" +-- %d indexes\n", num_indexes); if (num_other > 0) g_print (" +-- %d other objects\n", num_other); - + g_print ("\n"); } - -int -main (int argc, char *argv[]) +int +main (int argc, char *argv[]) { GstElementFactory *factory; GstPlugin *plugin; gchar *so; struct poptOption options[] = { - {"gst-inspect-plugin", 'p', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, - "Show plugin details", NULL}, - {"gst-inspect-scheduler", 's', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, - "Show scheduler details", NULL}, + {"gst-inspect-plugin", 'p', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, + "Show plugin details", NULL}, + {"gst-inspect-scheduler", 's', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, + "Show scheduler details", NULL}, POPT_TABLEEND }; gst_init_with_popt_table (&argc, &argv, options); gst_control_init (&argc, &argv); - + /* if no arguments, print out list of elements */ if (argc == 1) { print_element_list(); @@ -991,7 +992,7 @@ main (int argc, char *argv[]) g_print ("Usage: %s\t\t\tList all registered elements\n",argv[0]); g_print (" %s element-name\tShow element details\n",argv[0]); g_print (" %s plugin-name[.so]\tShow information about plugin\n", - argv[0]); + argv[0]); return 0; } @@ -1003,39 +1004,44 @@ main (int argc, char *argv[]) if (factory) return print_element_info (factory); else { - GstPluginFeature* feature; + GstPluginFeature* feature; - /* FIXME implement other pretty print function for these */ - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_SCHEDULER_FACTORY); - if (feature) { + /* FIXME implement other pretty print function for these */ + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_SCHEDULER_FACTORY); + if (feature) { g_print ("%s: a scheduler\n", argv[1]); - return 0; - } + return 0; + } #ifndef GST_DISABLE_INDEX - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_INDEX_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_INDEX_FACTORY); + if (feature) { g_print ("%s: an index\n", argv[1]); - return 0; - } + return 0; + } #endif #ifndef GST_DISABLE_AUTOPLUG - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_AUTOPLUG_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_AUTOPLUG_FACTORY); + if (feature) { g_print ("%s: an autoplugger\n", argv[1]); - return 0; - } + return 0; + } #endif - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_TYPE_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_TYPE_FACTORY); + if (feature) { g_print ("%s: an type\n", argv[1]); - return 0; - } + return 0; + } #ifndef GST_DISABLE_URI - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_URI_HANDLER); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_URI_HANDLER); + if (feature) { g_print ("%s: an uri handler\n", argv[1]); - return 0; - } + return 0; + } #endif } } else { diff --git a/tools/gst-xmlinspect.c b/tools/gst-xmlinspect.c index 1fd665be8b..5b26c125a9 100644 --- a/tools/gst-xmlinspect.c +++ b/tools/gst-xmlinspect.c @@ -2,14 +2,14 @@ #include #include -#define PUT_START_TAG(pfx,tag) \ +#define PUT_START_TAG(pfx,tag) \ G_STMT_START{ \ - g_print ("%*.*s<%s>\n", pfx, pfx, "", tag); \ + g_print ("%*.*s<%s>\n", pfx, pfx, "", tag); \ }G_STMT_END -#define PUT_END_TAG(pfx,tag) \ +#define PUT_END_TAG(pfx,tag) \ G_STMT_START{ \ - g_print ("%*.*s\n", pfx, pfx, "", tag); \ + g_print ("%*.*s\n", pfx, pfx, "", tag); \ }G_STMT_END #define PUT_ESCAPED(pfx,tag,value) \ @@ -17,14 +17,14 @@ G_STMT_START{ \ const gchar *toconv = value; \ if (value) { \ gchar *v = g_markup_escape_text (toconv, strlen (toconv)); \ - g_print ("%*.*s<%s>%s\n", pfx, pfx, "", tag, v, tag); \ + g_print ("%*.*s<%s>%s\n", pfx, pfx, "", tag, v, tag); \ g_free (v); \ } \ }G_STMT_END #ifdef G_HAVE_ISO_VARARGS -#define PUT_STRING(pfx, ...) \ +#define PUT_STRING(pfx, ...) \ G_STMT_START{ \ gchar *ps_val = g_strdup_printf(__VA_ARGS__); \ g_print ("%*.*s%s\n", pfx, pfx, "", ps_val); \ @@ -33,76 +33,80 @@ G_STMT_START{ \ #elif defined(G_HAVE_GNUC_VARARGS) -#define PUT_STRING(pfx, str, a...) \ +#define PUT_STRING(pfx, str, a...) \ G_STMT_START{ \ - g_print ("%*.*s"str"\n", pfx, pfx, "", ##a); \ + g_print ("%*.*s"str"\n", pfx, pfx, "", ##a); \ }G_STMT_END #endif -static void -print_prop (GstPropsEntry *prop, gint pfx) +static void +print_prop (GstPropsEntry *prop, gint pfx) { GstPropsType type; - type = gst_props_entry_get_type (prop); + type = gst_props_entry_get_props_type (prop); switch (type) { case GST_PROPS_INT_TYPE: { gint val; gst_props_entry_get_int (prop, &val); - PUT_STRING (pfx, "", gst_props_entry_get_name (prop), val); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), val); break; } case GST_PROPS_INT_RANGE_TYPE: { gint min, max; gst_props_entry_get_int_range (prop, &min, &max); - PUT_STRING (pfx, "", - gst_props_entry_get_name (prop), min, max); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), min, max); break; } case GST_PROPS_FLOAT_TYPE: { gfloat val; gst_props_entry_get_float (prop, &val); - PUT_STRING (pfx, "", gst_props_entry_get_name (prop), val); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), val); break; } case GST_PROPS_FLOAT_RANGE_TYPE: { gfloat min, max; gst_props_entry_get_float_range (prop, &min, &max); - PUT_STRING (pfx, "", - gst_props_entry_get_name (prop), min, max); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), min, max); break; } case GST_PROPS_BOOLEAN_TYPE: { gboolean val; gst_props_entry_get_boolean (prop, &val); - PUT_STRING (pfx, "", - gst_props_entry_get_name (prop), val ? "true" : "false"); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), val ? "true" : "false"); break; } case GST_PROPS_STRING_TYPE: { const gchar *val; gst_props_entry_get_string (prop, &val); - PUT_STRING (pfx, "", gst_props_entry_get_name (prop), val); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), val); break; } case GST_PROPS_FOURCC_TYPE: { guint32 val; gst_props_entry_get_fourcc_int (prop, &val); - PUT_STRING (pfx, "", - (gchar)( val & 0xff), - (gchar)((val >> 8) & 0xff), - (gchar)((val >> 16) & 0xff), - (gchar)((val >> 24) & 0xff)); - PUT_STRING (pfx, "", gst_props_entry_get_name (prop), val); + PUT_STRING (pfx, "", + (gchar)( val & 0xff), + (gchar)((val >> 8) & 0xff), + (gchar)((val >> 16) & 0xff), + (gchar)((val >> 24) & 0xff)); + PUT_STRING (pfx, "", + gst_props_entry_get_name (prop), val); break; } case GST_PROPS_LIST_TYPE: @@ -110,7 +114,7 @@ print_prop (GstPropsEntry *prop, gint pfx) const GList *list; gst_props_entry_get_list (prop, &list); - PUT_STRING (pfx, "", gst_props_entry_get_name (prop)); + PUT_STRING (pfx, "", gst_props_entry_get_name (prop)); while (list) { GstPropsEntry *listentry; @@ -127,19 +131,19 @@ print_prop (GstPropsEntry *prop, gint pfx) } } -static void -print_props (GstProps *properties, gint pfx) +static void +print_props (GstProps *properties, gint pfx) { GList *props; GstPropsEntry *prop; props = properties->properties; - if (!props) + if (!props) return; PUT_START_TAG (pfx, "properties"); - + while (props) { prop = (GstPropsEntry*) (props->data); props = g_list_next (props); @@ -149,14 +153,14 @@ print_props (GstProps *properties, gint pfx) PUT_END_TAG (pfx, "properties"); } -static void -print_caps (const GstCaps *caps, gint pfx) +static void +print_caps (const GstCaps *caps, gint pfx) { if (!caps) return; PUT_START_TAG (pfx, "capscomp"); - + while (caps) { GstType *type; @@ -164,7 +168,7 @@ print_caps (const GstCaps *caps, gint pfx) PUT_ESCAPED (pfx + 2, "name", caps->name); type = gst_type_find_by_id (caps->id); - if (type) + if (type) PUT_ESCAPED (pfx + 2, "type", type->mime); else PUT_ESCAPED (pfx + 2, "type", "unkown/unknown"); @@ -179,8 +183,8 @@ print_caps (const GstCaps *caps, gint pfx) PUT_END_TAG (pfx, "capscomp"); } -static void -print_formats (const GstFormat *formats, gint pfx) +static void +print_formats (const GstFormat *formats, gint pfx) { while (formats && *formats) { const GstFormatDefinition *definition; @@ -188,7 +192,7 @@ print_formats (const GstFormat *formats, gint pfx) definition = gst_format_get_details (*formats); if (definition) PUT_STRING (pfx, "%s", - *formats, definition->nick, definition->description); + *formats, definition->nick, definition->description); else PUT_STRING (pfx, "unkown", *formats); @@ -197,8 +201,8 @@ print_formats (const GstFormat *formats, gint pfx) } } -static void -print_query_types (const GstQueryType *types, gint pfx) +static void +print_query_types (const GstQueryType *types, gint pfx) { while (types && *types) { const GstQueryTypeDefinition *definition; @@ -206,7 +210,7 @@ print_query_types (const GstQueryType *types, gint pfx) definition = gst_query_type_get_details (*types); if (definition) PUT_STRING (pfx, "%s", - *types, definition->nick, definition->description); + *types, definition->nick, definition->description); else PUT_STRING (pfx, "unkown", *types); @@ -215,8 +219,8 @@ print_query_types (const GstQueryType *types, gint pfx) } } -static void -print_event_masks (const GstEventMask *masks, gint pfx) +static void +print_event_masks (const GstEventMask *masks, gint pfx) { #ifndef GST_DISABLE_ENUMTYPES GType event_type; @@ -234,13 +238,13 @@ print_event_masks (const GstEventMask *masks, gint pfx) switch (masks->type) { case GST_EVENT_SEEK: flags = masks->flags; - event_flags = gst_seek_type_get_type (); - flags_class = (GFlagsClass *) g_type_class_ref (event_flags); + event_flags = gst_seek_type_get_type (); + flags_class = (GFlagsClass *) g_type_class_ref (event_flags); break; default: break; } - + value = g_enum_get_value (klass, masks->type); PUT_STRING (pfx, "", value->value_nick); @@ -251,16 +255,16 @@ print_event_masks (const GstEventMask *masks, gint pfx) if (flags & 1) { value = g_flags_get_first_value (flags_class, 1 << index); - if (value) + if (value) PUT_ESCAPED (pfx + 1, "flag", value->value_nick); - else + else PUT_ESCAPED (pfx + 1, "flag", "?"); } flags >>= 1; index++; } PUT_END_TAG (pfx, "event"); - + masks++; } #endif @@ -285,14 +289,14 @@ output_hierarchy (GType type, gint level, gint *maxlevel) } static void -print_element_properties (GstElement *element, gint pfx) +print_element_properties (GstElement *element, gint pfx) { GParamSpec **property_specs; gint num_properties,i; gboolean readable; - - property_specs = g_object_class_list_properties - (G_OBJECT_GET_CLASS (element), &num_properties); + + property_specs = g_object_class_list_properties + (G_OBJECT_GET_CLASS (element), &num_properties); PUT_START_TAG (pfx, "element-properties"); @@ -319,132 +323,132 @@ print_element_properties (GstElement *element, gint pfx) } switch (G_VALUE_TYPE (&value)) { - case G_TYPE_STRING: + case G_TYPE_STRING: PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; - case G_TYPE_BOOLEAN: + break; + case G_TYPE_BOOLEAN: PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; - case G_TYPE_ULONG: + break; + case G_TYPE_ULONG: { - GParamSpecULong *pulong = G_PARAM_SPEC_ULONG (param); - PUT_STRING (pfx + 2, "", - pulong->minimum, pulong->maximum); + GParamSpecULong *pulong = G_PARAM_SPEC_ULONG (param); + PUT_STRING (pfx + 2, "", + pulong->minimum, pulong->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_LONG: + case G_TYPE_LONG: { - GParamSpecLong *plong = G_PARAM_SPEC_LONG (param); - PUT_STRING (pfx + 2, "", - plong->minimum, plong->maximum); + GParamSpecLong *plong = G_PARAM_SPEC_LONG (param); + PUT_STRING (pfx + 2, "", + plong->minimum, plong->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_UINT: + case G_TYPE_UINT: { - GParamSpecUInt *puint = G_PARAM_SPEC_UINT (param); - PUT_STRING (pfx + 2, "", - puint->minimum, puint->maximum); + GParamSpecUInt *puint = G_PARAM_SPEC_UINT (param); + PUT_STRING (pfx + 2, "", + puint->minimum, puint->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_INT: + case G_TYPE_INT: { - GParamSpecInt *pint = G_PARAM_SPEC_INT (param); - PUT_STRING (pfx + 2, "", - pint->minimum, pint->maximum); + GParamSpecInt *pint = G_PARAM_SPEC_INT (param); + PUT_STRING (pfx + 2, "", + pint->minimum, pint->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_UINT64: + case G_TYPE_UINT64: { - GParamSpecUInt64 *puint64 = G_PARAM_SPEC_UINT64 (param); - PUT_STRING (pfx + 2, "", - puint64->minimum, puint64->maximum); + GParamSpecUInt64 *puint64 = G_PARAM_SPEC_UINT64 (param); + PUT_STRING (pfx + 2, "", + puint64->minimum, puint64->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_INT64: + case G_TYPE_INT64: { - GParamSpecInt64 *pint64 = G_PARAM_SPEC_INT64 (param); - PUT_STRING (pfx + 2, "", - pint64->minimum, pint64->maximum); + GParamSpecInt64 *pint64 = G_PARAM_SPEC_INT64 (param); + PUT_STRING (pfx + 2, "", + pint64->minimum, pint64->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_FLOAT: + case G_TYPE_FLOAT: { - GParamSpecFloat *pfloat = G_PARAM_SPEC_FLOAT (param); - PUT_STRING (pfx + 2, "", - pfloat->minimum, pfloat->maximum); + GParamSpecFloat *pfloat = G_PARAM_SPEC_FLOAT (param); + PUT_STRING (pfx + 2, "", + pfloat->minimum, pfloat->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } - case G_TYPE_DOUBLE: + case G_TYPE_DOUBLE: { - GParamSpecDouble *pdouble = G_PARAM_SPEC_DOUBLE (param); - PUT_STRING (pfx + 2, "", - pdouble->minimum, pdouble->maximum); + GParamSpecDouble *pdouble = G_PARAM_SPEC_DOUBLE (param); + PUT_STRING (pfx + 2, "", + pdouble->minimum, pdouble->maximum); PUT_ESCAPED (pfx + 2, "default", g_strdup_value_contents (&value)); - break; + break; } default: if (param->value_type == GST_TYPE_CAPS) { GstCaps *caps = g_value_peek_pointer (&value); - if (!caps) + if (!caps) PUT_ESCAPED (pfx + 2, "default", "NULL"); - else { + else { print_caps (caps, 2); - } - } + } + } else if (G_IS_PARAM_SPEC_ENUM (param)) { GEnumValue *values; - guint j = 0; - gint enum_value; + guint j = 0; + gint enum_value; - values = G_ENUM_CLASS (g_type_class_ref (param->value_type))->values; - enum_value = g_value_get_enum (&value); + values = G_ENUM_CLASS (g_type_class_ref (param->value_type))->values; + enum_value = g_value_get_enum (&value); - while (values[j].value_name) { - if (values[j].value == enum_value) - break; - j++; - } + while (values[j].value_name) { + if (values[j].value == enum_value) + break; + j++; + } PUT_STRING (pfx + 2, "%d", values[j].value); PUT_START_TAG (pfx + 2, "enum-values"); - j = 0; - while (values[j].value_name) { + j = 0; + while (values[j].value_name) { PUT_STRING (pfx + 3, "", - values[j].value, values[j].value_nick); - j++; - } + values[j].value, values[j].value_nick); + j++; + } PUT_END_TAG (pfx + 2, "enum-values"); - } + } else if (G_IS_PARAM_SPEC_FLAGS (param)) { GFlagsValue *values; - guint j = 0; - gint flags_value; + guint j = 0; + gint flags_value; - values = G_FLAGS_CLASS (g_type_class_ref (param->value_type))->values; - flags_value = g_value_get_flags (&value); + values = G_FLAGS_CLASS (g_type_class_ref (param->value_type))->values; + flags_value = g_value_get_flags (&value); PUT_STRING (pfx + 2, "%d", flags_value); PUT_START_TAG (pfx + 2, "flags"); - j = 0; - while (values[j].value_name) { + j = 0; + while (values[j].value_name) { PUT_STRING (pfx + 3, "", - values[j].value, values[j].value_nick); - j++; - } + values[j].value, values[j].value_nick); + j++; + } PUT_END_TAG (pfx + 2, "flags"); - } - else if (G_IS_PARAM_SPEC_OBJECT (param)) { - PUT_ESCAPED (pfx + 2, "object-type", - g_type_name(param->value_type)); + } + else if (G_IS_PARAM_SPEC_OBJECT (param)) { + PUT_ESCAPED (pfx + 2, "object-type", + g_type_name(param->value_type)); } break; } @@ -455,12 +459,12 @@ print_element_properties (GstElement *element, gint pfx) } static void -print_element_dynparamaters (GstElement *element, gint pfx) +print_element_dynparamaters (GstElement *element, gint pfx) { GstDParamManager* dpman; GParamSpec** specs; gint x; - + PUT_START_TAG (pfx, "dyn-params"); if((dpman = gst_dpman_get_manager (element))) { @@ -474,28 +478,28 @@ print_element_dynparamaters (GstElement *element, gint pfx) PUT_ESCAPED (pfx + 2, "blurb", g_param_spec_get_blurb (specs[x])); switch (G_PARAM_SPEC_VALUE_TYPE (specs[x])) { - case G_TYPE_INT64: - PUT_STRING (pfx + 2, "", - ((GParamSpecInt64 *) specs[x])->minimum, + case G_TYPE_INT64: + PUT_STRING (pfx + 2, "", + ((GParamSpecInt64 *) specs[x])->minimum, ((GParamSpecInt64 *) specs[x])->maximum); - PUT_STRING (pfx + 2, "%"G_GINT64_FORMAT"", + PUT_STRING (pfx + 2, "%"G_GINT64_FORMAT"", ((GParamSpecInt64 *) specs[x])->default_value); break; - case G_TYPE_INT: - PUT_STRING (pfx + 2, "", - ((GParamSpecInt *) specs[x])->minimum, + case G_TYPE_INT: + PUT_STRING (pfx + 2, "", + ((GParamSpecInt *) specs[x])->minimum, ((GParamSpecInt *) specs[x])->maximum); - PUT_STRING (pfx + 2, "%d", + PUT_STRING (pfx + 2, "%d", ((GParamSpecInt *) specs[x])->default_value); break; - case G_TYPE_FLOAT: - PUT_STRING (pfx + 2, "", - ((GParamSpecFloat *) specs[x])->minimum, + case G_TYPE_FLOAT: + PUT_STRING (pfx + 2, "", + ((GParamSpecFloat *) specs[x])->minimum, ((GParamSpecFloat *) specs[x])->maximum); - PUT_STRING (pfx + 2, "%f", + PUT_STRING (pfx + 2, "%f", ((GParamSpecFloat *) specs[x])->default_value); break; - default: + default: break; } PUT_END_TAG (pfx + 1, "dyn-param"); @@ -506,13 +510,13 @@ print_element_dynparamaters (GstElement *element, gint pfx) } static void -print_element_signals (GstElement *element, gint pfx) +print_element_signals (GstElement *element, gint pfx) { guint *signals; guint nsignals; gint i, k; GSignalQuery *query; - + signals = g_signal_list_ids (G_OBJECT_TYPE (element), &nsignals); for (k = 0; k < 2; k++) { gint counted = 0; @@ -527,12 +531,12 @@ print_element_signals (GstElement *element, gint pfx) GType return_type; const GType *param_types; gint j; - + query = g_new0 (GSignalQuery,1); g_signal_query (signals[i], query); if ((k == 0 && !(query->signal_flags & G_SIGNAL_ACTION)) || - (k == 1 && (query->signal_flags & G_SIGNAL_ACTION))) { + (k == 1 && (query->signal_flags & G_SIGNAL_ACTION))) { n_params = query->n_params; return_type = query->return_type; param_types = query->param_types; @@ -551,7 +555,7 @@ print_element_signals (GstElement *element, gint pfx) PUT_END_TAG (pfx + 1, "signal"); - counted++; + counted++; } g_free (query); @@ -562,7 +566,7 @@ print_element_signals (GstElement *element, gint pfx) PUT_END_TAG (pfx, "element-actions"); } } - + static gint print_element_info (GstElementFactory *factory) { @@ -589,13 +593,13 @@ print_element_info (GstElementFactory *factory) gstelement_class = GST_ELEMENT_CLASS (G_OBJECT_GET_CLASS (element)); PUT_START_TAG (1, "details"); - PUT_ESCAPED (2, "long-name", factory->details->longname); - PUT_ESCAPED (2, "class", factory->details->klass); - PUT_ESCAPED (2, "license", factory->details->license); - PUT_ESCAPED (2, "description", factory->details->description); - PUT_ESCAPED (2, "version", factory->details->version); - PUT_ESCAPED (2, "authors", factory->details->author); - PUT_ESCAPED (2, "copyright", factory->details->copyright); + PUT_ESCAPED (2, "long-name", factory->details->longname); + PUT_ESCAPED (2, "class", factory->details->klass); + PUT_ESCAPED (2, "license", factory->details->license); + PUT_ESCAPED (2, "description", factory->details->description); + PUT_ESCAPED (2, "version", factory->details->version); + PUT_ESCAPED (2, "authors", factory->details->author); + PUT_ESCAPED (2, "copyright", factory->details->copyright); PUT_END_TAG (1, "details"); output_hierarchy (G_OBJECT_TYPE (element), 0, &maxlevel); @@ -608,7 +612,7 @@ print_element_info (GstElementFactory *factory) pads = g_list_next(pads); PUT_START_TAG (2, "pad-template"); - PUT_ESCAPED (3, "name", padtemplate->name_template); + PUT_ESCAPED (3, "name", padtemplate->name_template); if (padtemplate->direction == GST_PAD_SRC) PUT_ESCAPED (3, "direction", "src"); @@ -624,13 +628,13 @@ print_element_info (GstElementFactory *factory) else if (padtemplate->presence == GST_PAD_REQUEST) { PUT_ESCAPED (3, "presence", "request"); PUT_ESCAPED (3, "request-function", - GST_DEBUG_FUNCPTR_NAME (gstelement_class->request_new_pad)); + GST_DEBUG_FUNCPTR_NAME (gstelement_class->request_new_pad)); } else PUT_ESCAPED (3, "presence", "unkown"); if (padtemplate->caps) { - print_caps (padtemplate->caps, 3); + print_caps (padtemplate->caps, 3); } PUT_END_TAG (2, "pad-template"); } @@ -670,16 +674,16 @@ print_element_info (GstElementFactory *factory) PUT_START_TAG (1, "element-implementation"); if (element->loopfunc) - PUT_STRING (2, "", - GST_DEBUG_FUNCPTR_NAME (element->loopfunc)); + PUT_STRING (2, "", + GST_DEBUG_FUNCPTR_NAME (element->loopfunc)); - PUT_STRING (2, "", + PUT_STRING (2, "", GST_DEBUG_FUNCPTR_NAME (gstelement_class->change_state)); #ifndef GST_DISABLE_LOADSAVE - PUT_STRING (2, "", + PUT_STRING (2, "", GST_DEBUG_FUNCPTR_NAME (gstobject_class->save_thyself)); - PUT_STRING (2, "", + PUT_STRING (2, "", GST_DEBUG_FUNCPTR_NAME (gstobject_class->restore_thyself)); #endif PUT_END_TAG (1, "element-implementation"); @@ -713,7 +717,7 @@ print_element_info (GstElementFactory *factory) realpad = GST_PAD_REALIZE (pad); PUT_START_TAG (2, "pad"); - PUT_ESCAPED (3, "name", gst_pad_get_name (pad)); + PUT_ESCAPED (3, "name", gst_pad_get_name (pad)); if (gst_pad_get_direction (pad) == GST_PAD_SRC) PUT_ESCAPED (3, "direction", "src"); @@ -726,55 +730,55 @@ print_element_info (GstElementFactory *factory) PUT_ESCAPED (3, "ghost", gst_pad_get_name (pad)); if (pad->padtemplate) - PUT_ESCAPED (3, "template", - pad->padtemplate->name_template); + PUT_ESCAPED (3, "template", + pad->padtemplate->name_template); PUT_START_TAG (3, "implementation"); if (realpad->chainfunc) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->chainfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->chainfunc)); if (realpad->getfunc) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->getfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->getfunc)); if (realpad->formatsfunc != gst_pad_get_formats_default) { - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->formatsfunc)); - print_formats (gst_pad_get_formats (GST_PAD (realpad)), 5); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->formatsfunc)); + print_formats (gst_pad_get_formats (GST_PAD (realpad)), 5); PUT_END_TAG (4, "formats-function"); } if (realpad->convertfunc != gst_pad_convert_default) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->convertfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->convertfunc)); if (realpad->eventfunc != gst_pad_event_default) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->eventfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->eventfunc)); if (realpad->eventmaskfunc != gst_pad_get_event_masks_default) { - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->eventmaskfunc)); - print_event_masks (gst_pad_get_event_masks (GST_PAD (realpad)), 5); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->eventmaskfunc)); + print_event_masks (gst_pad_get_event_masks (GST_PAD (realpad)), 5); PUT_END_TAG (4, "event-mask-func"); } if (realpad->queryfunc != gst_pad_query_default) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->queryfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->queryfunc)); if (realpad->querytypefunc != gst_pad_get_query_types_default) { - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME (realpad->querytypefunc)); - print_query_types (gst_pad_get_query_types (GST_PAD (realpad)), 5); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME (realpad->querytypefunc)); + print_query_types (gst_pad_get_query_types (GST_PAD (realpad)), 5); PUT_END_TAG (4, "query-type-func"); } if (realpad->intlinkfunc != gst_pad_get_internal_links_default) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME(realpad->intlinkfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME(realpad->intlinkfunc)); if (realpad->bufferpoolfunc) - PUT_STRING (4, "", - GST_DEBUG_FUNCPTR_NAME(realpad->bufferpoolfunc)); + PUT_STRING (4, "", + GST_DEBUG_FUNCPTR_NAME(realpad->bufferpoolfunc)); PUT_END_TAG (3, "implementation"); if (realpad->caps) { - print_caps (realpad->caps, 3); + print_caps (realpad->caps, 3); } PUT_END_TAG (2, "pad"); } @@ -802,8 +806,8 @@ print_element_info (GstElementFactory *factory) return 0; } -static void -print_element_list (void) +static void +print_element_list (void) { GList *plugins; @@ -811,7 +815,7 @@ print_element_list (void) while (plugins) { GList *features; GstPlugin *plugin; - + plugin = (GstPlugin*)(plugins->data); plugins = g_list_next (plugins); @@ -825,16 +829,16 @@ print_element_list (void) GstElementFactory *factory; factory = GST_ELEMENT_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory) ,factory->details->longname); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory) ,factory->details->longname); } #ifndef GST_DISABLE_AUTOPLUG else if (GST_IS_AUTOPLUG_FACTORY (feature)) { GstAutoplugFactory *factory; factory = GST_AUTOPLUG_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #endif #ifndef GST_DISABLE_INDEX @@ -842,42 +846,42 @@ print_element_list (void) GstIndexFactory *factory; factory = GST_INDEX_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #endif else if (GST_IS_TYPE_FACTORY (feature)) { GstTypeFactory *factory; factory = GST_TYPE_FACTORY (feature); - g_print ("%s type: %s: %s\n", plugin->name, - factory->mime, factory->exts); + g_print ("%s type: %s: %s\n", plugin->name, + factory->mime, factory->exts); if (factory->typefindfunc) g_print (" Has typefind function: %s\n", - GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); + GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); } else if (GST_IS_SCHEDULER_FACTORY (feature)) { GstSchedulerFactory *factory; factory = GST_SCHEDULER_FACTORY (feature); - g_print ("%s: %s: %s\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); + g_print ("%s: %s: %s\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (factory), factory->longdesc); } #ifndef GST_DISABLE_URI else if (GST_IS_URI_HANDLER (feature)) { GstURIHandler *handler; handler = GST_URI_HANDLER (feature); - g_print ("%s: %s: \"%s\" (%s) element \"%s\" property \"%s\"\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (handler), handler->uri, handler->longdesc, - handler->element, handler->property); + g_print ("%s: %s: \"%s\" (%s) element \"%s\" property \"%s\"\n", + plugin->name, GST_PLUGIN_FEATURE_NAME (handler), handler->uri, + handler->longdesc, handler->element, handler->property); } #endif else { - g_print ("%s: %s (%s)\n", plugin->name, - GST_PLUGIN_FEATURE_NAME (feature), - g_type_name (G_OBJECT_TYPE (feature))); + g_print ("%s: %s (%s)\n", plugin->name, + GST_PLUGIN_FEATURE_NAME (feature), + g_type_name (G_OBJECT_TYPE (feature))); } features = g_list_next (features); @@ -896,7 +900,7 @@ print_plugin_info (GstPlugin *plugin) gint num_schedulers = 0; gint num_indexes = 0; gint num_other = 0; - + g_print ("Plugin Details:\n"); g_print (" Name:\t\t%s\n", plugin->name); g_print (" Long Name:\t%s\n", plugin->longname); @@ -915,7 +919,7 @@ print_plugin_info (GstPlugin *plugin) factory = GST_ELEMENT_FACTORY (feature); g_print (" %s: %s\n", GST_OBJECT_NAME (factory), - factory->details->longname); + factory->details->longname); num_elements++; } #ifndef GST_DISABLE_AUTOPLUG @@ -943,8 +947,8 @@ print_plugin_info (GstPlugin *plugin) g_print (" %s: %s\n", factory->mime, factory->exts); if (factory->typefindfunc) - g_print (" Has typefind function: %s\n", - GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); + g_print (" Has typefind function: %s\n", + GST_DEBUG_FUNCPTR_NAME (factory->typefindfunc)); num_types++; } else if (GST_IS_SCHEDULER_FACTORY (feature)) { @@ -955,8 +959,8 @@ print_plugin_info (GstPlugin *plugin) num_schedulers++; } else { - g_print (" %s (%s)\n", gst_object_get_name (GST_OBJECT (feature)), - g_type_name (G_OBJECT_TYPE (feature))); + g_print (" %s (%s)\n", gst_object_get_name (GST_OBJECT (feature)), + g_type_name (G_OBJECT_TYPE (feature))); num_other++; } num_features++; @@ -975,28 +979,28 @@ print_plugin_info (GstPlugin *plugin) g_print (" +-- %d indexes\n", num_indexes); if (num_other > 0) g_print (" +-- %d other objects\n", num_other); - + g_print ("\n"); } -int -main (int argc, char *argv[]) +int +main (int argc, char *argv[]) { GstElementFactory *factory; GstPlugin *plugin; gchar *so; struct poptOption options[] = { - {"gst-inspect-plugin", 'p', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, - "Show plugin details", NULL}, - {"gst-inspect-scheduler", 's', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, - "Show scheduler details", NULL}, - POPT_TABLEEND + {"gst-inspect-plugin", 'p', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, + "Show plugin details", NULL}, + {"gst-inspect-scheduler", 's', POPT_ARG_STRING|POPT_ARGFLAG_STRIP, NULL, 0, + "Show scheduler details", NULL}, + POPT_TABLEEND }; gst_init_with_popt_table (&argc, &argv, options); gst_control_init (&argc, &argv); - + PUT_STRING (0, ""); /* if no arguments, print out list of elements */ @@ -1007,10 +1011,10 @@ main (int argc, char *argv[]) } else { /* first check for help */ if (strstr (argv[1], "-help")) { - g_print ("Usage: %s\t\t\tList all registered elements\n",argv[0]); - g_print (" %s element-name\tShow element details\n",argv[0]); + g_print ("Usage: %s\t\t\tList all registered elements\n", argv[0]); + g_print (" %s element-name\tShow element details\n", argv[0]); g_print (" %s plugin-name[.so]\tShow information about plugin\n", - argv[0]); + argv[0]); return 0; } @@ -1022,39 +1026,44 @@ main (int argc, char *argv[]) if (factory) return print_element_info (factory); else { - GstPluginFeature* feature; + GstPluginFeature* feature; - /* FIXME implement other pretty print function for these */ - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_SCHEDULER_FACTORY); - if (feature) { + /* FIXME implement other pretty print function for these */ + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_SCHEDULER_FACTORY); + if (feature) { g_print ("%s: a scheduler\n", argv[1]); - return 0; - } + return 0; + } #ifndef GST_DISABLE_INDEX - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_INDEX_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_INDEX_FACTORY); + if (feature) { g_print ("%s: an index\n", argv[1]); - return 0; - } + return 0; + } #endif #ifndef GST_DISABLE_AUTOPLUG - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_AUTOPLUG_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_AUTOPLUG_FACTORY); + if (feature) { g_print ("%s: an autoplugger\n", argv[1]); - return 0; - } + return 0; + } #endif - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_TYPE_FACTORY); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_TYPE_FACTORY); + if (feature) { g_print ("%s: an type\n", argv[1]); - return 0; - } + return 0; + } #ifndef GST_DISABLE_URI - feature = gst_registry_pool_find_feature (argv[1], GST_TYPE_URI_HANDLER); - if (feature) { + feature = gst_registry_pool_find_feature (argv[1], + GST_TYPE_URI_HANDLER); + if (feature) { g_print ("%s: an uri handler\n", argv[1]); - return 0; - } + return 0; + } #endif } } else { @@ -1070,7 +1079,6 @@ main (int argc, char *argv[]) if (plugin) { print_plugin_info (plugin); - } else { g_print("no such element or plugin '%s'\n", argv[1]); return -1;