From 5404a9565af8b1ea59982dbe79a495ba46ed684b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 28 May 2009 12:32:25 +0200 Subject: [PATCH] Don't assume all properties are writeable in any case --- elementgen/gst-xmlinspect.c | 13 +++++++++---- gstreamer-sharp/baseplugins/inspect/playbin.raw | 10 +++++----- gstreamer-sharp/baseplugins/inspect/playbin2.raw | 10 +++++----- gstreamer-sharp/baseplugins/inspect/xvimagesink.raw | 4 ++-- gstreamer-sharp/coreplugins/inspect/fakesink.raw | 4 ++-- gstreamer-sharp/coreplugins/inspect/fakesrc.raw | 2 +- gstreamer-sharp/coreplugins/inspect/fdsink.raw | 2 +- gstreamer-sharp/coreplugins/inspect/filesink.raw | 2 +- gstreamer-sharp/coreplugins/inspect/filesrc.raw | 2 +- gstreamer-sharp/coreplugins/inspect/identity.raw | 2 +- gstreamer-sharp/coreplugins/inspect/queue.raw | 6 +++--- gstreamer-sharp/coreplugins/inspect/tee.raw | 4 ++-- gstreamer-sharp/coreplugins/inspect/typefind.raw | 2 +- 13 files changed, 34 insertions(+), 29 deletions(-) diff --git a/elementgen/gst-xmlinspect.c b/elementgen/gst-xmlinspect.c index a1ed486eff..635d461d9e 100644 --- a/elementgen/gst-xmlinspect.c +++ b/elementgen/gst-xmlinspect.c @@ -223,7 +223,6 @@ print_element_properties (GstElement * element, gint pfx) GParamSpec **property_specs; guint num_properties; gint i; - gboolean readable; property_specs = g_object_class_list_properties (G_OBJECT_GET_CLASS (element), &num_properties); @@ -233,8 +232,9 @@ print_element_properties (GstElement * element, gint pfx) for (i = 0; i < num_properties; i++) { GValue value = { 0, }; GParamSpec *param = property_specs[i]; + gboolean readable, writeable; - readable = FALSE; + readable = writeable = FALSE; g_value_init (&value, param->value_type); if (param->flags & G_PARAM_READABLE) { @@ -242,6 +242,9 @@ print_element_properties (GstElement * element, gint pfx) readable = TRUE; } + if (param->flags & G_PARAM_WRITABLE) + writeable = TRUE; + /* Ignore GstObject, GstElement, GstBin, GstPipeline properties */ if (param->owner_type == GST_TYPE_OBJECT || param->owner_type == GST_TYPE_ELEMENT || @@ -254,9 +257,11 @@ print_element_properties (GstElement * element, gint pfx) PUT_ESCAPED (pfx + 2, "type", g_type_name (param->value_type)); PUT_ESCAPED (pfx + 2, "nick", g_param_spec_get_nick (param)); PUT_ESCAPED (pfx + 2, "blurb", g_param_spec_get_blurb (param)); - if (readable) { + if (readable && writeable) { PUT_ESCAPED (pfx + 2, "flags", "RW"); - } else { + } else if (readable) { + PUT_ESCAPED (pfx + 2, "flags", "R"); + } else if (writeable) { PUT_ESCAPED (pfx + 2, "flags", "W"); } diff --git a/gstreamer-sharp/baseplugins/inspect/playbin.raw b/gstreamer-sharp/baseplugins/inspect/playbin.raw index 096f14084a..20d0f64190 100644 --- a/gstreamer-sharp/baseplugins/inspect/playbin.raw +++ b/gstreamer-sharp/baseplugins/inspect/playbin.raw @@ -89,7 +89,7 @@ gint NStreams number of streams - RW + R 0 @@ -98,21 +98,21 @@ gpointer Stream info List of streaminfo - RW + R stream-info-value-array GValueArray StreamInfo GValueArray value array of streaminfo - RW + R source GstElement Source Source element - RW + R GstElement @@ -197,7 +197,7 @@ GstBuffer Frame The last frame (NULL = no video available) - RW + R subtitle-font-desc diff --git a/gstreamer-sharp/baseplugins/inspect/playbin2.raw b/gstreamer-sharp/baseplugins/inspect/playbin2.raw index 41b335bf13..4748dca3e2 100644 --- a/gstreamer-sharp/baseplugins/inspect/playbin2.raw +++ b/gstreamer-sharp/baseplugins/inspect/playbin2.raw @@ -60,7 +60,7 @@ GstElement Source Source element - RW + R GstElement @@ -85,7 +85,7 @@ gint Number Video Total number of video streams - RW + R 0 @@ -103,7 +103,7 @@ gint Number Audio Total number of audio streams - RW + R 0 @@ -121,7 +121,7 @@ gint Number Text Total number of text streams - RW + R 0 @@ -204,7 +204,7 @@ GstBuffer Frame The last frame (NULL = no video available) - RW + R subtitle-font-desc diff --git a/gstreamer-sharp/baseplugins/inspect/xvimagesink.raw b/gstreamer-sharp/baseplugins/inspect/xvimagesink.raw index cb0cfa356a..0ebd9177f4 100644 --- a/gstreamer-sharp/baseplugins/inspect/xvimagesink.raw +++ b/gstreamer-sharp/baseplugins/inspect/xvimagesink.raw @@ -111,7 +111,7 @@ GstBuffer Last Buffer The last buffer received in the sink - RW + R blocksize @@ -220,7 +220,7 @@ gchararray Adaptor name The name of the video adaptor - RW + R NULL diff --git a/gstreamer-sharp/coreplugins/inspect/fakesink.raw b/gstreamer-sharp/coreplugins/inspect/fakesink.raw index 82a68c17bc..995344c704 100644 --- a/gstreamer-sharp/coreplugins/inspect/fakesink.raw +++ b/gstreamer-sharp/coreplugins/inspect/fakesink.raw @@ -104,7 +104,7 @@ GstBuffer Last Buffer The last buffer received in the sink - RW + R blocksize @@ -170,7 +170,7 @@ gchararray Last Message The message describing current status - RW + R NULL diff --git a/gstreamer-sharp/coreplugins/inspect/fakesrc.raw b/gstreamer-sharp/coreplugins/inspect/fakesrc.raw index cbf5029d99..438426f383 100644 --- a/gstreamer-sharp/coreplugins/inspect/fakesrc.raw +++ b/gstreamer-sharp/coreplugins/inspect/fakesrc.raw @@ -203,7 +203,7 @@ gchararray last-message The last status message - RW + R NULL diff --git a/gstreamer-sharp/coreplugins/inspect/fdsink.raw b/gstreamer-sharp/coreplugins/inspect/fdsink.raw index 792ff9f191..97f189f7a8 100644 --- a/gstreamer-sharp/coreplugins/inspect/fdsink.raw +++ b/gstreamer-sharp/coreplugins/inspect/fdsink.raw @@ -106,7 +106,7 @@ GstBuffer Last Buffer The last buffer received in the sink - RW + R blocksize diff --git a/gstreamer-sharp/coreplugins/inspect/filesink.raw b/gstreamer-sharp/coreplugins/inspect/filesink.raw index d61e0e10ac..bcf2e745f0 100644 --- a/gstreamer-sharp/coreplugins/inspect/filesink.raw +++ b/gstreamer-sharp/coreplugins/inspect/filesink.raw @@ -106,7 +106,7 @@ GstBuffer Last Buffer The last buffer received in the sink - RW + R blocksize diff --git a/gstreamer-sharp/coreplugins/inspect/filesrc.raw b/gstreamer-sharp/coreplugins/inspect/filesrc.raw index 7cdf309d56..a2fb516e51 100644 --- a/gstreamer-sharp/coreplugins/inspect/filesrc.raw +++ b/gstreamer-sharp/coreplugins/inspect/filesrc.raw @@ -96,7 +96,7 @@ gint File-descriptor File-descriptor for the file being mmap()d - RW + R 0 diff --git a/gstreamer-sharp/coreplugins/inspect/identity.raw b/gstreamer-sharp/coreplugins/inspect/identity.raw index 2d0365ed8d..0c44779804 100644 --- a/gstreamer-sharp/coreplugins/inspect/identity.raw +++ b/gstreamer-sharp/coreplugins/inspect/identity.raw @@ -128,7 +128,7 @@ gchararray last-message last-message - RW + R NULL diff --git a/gstreamer-sharp/coreplugins/inspect/queue.raw b/gstreamer-sharp/coreplugins/inspect/queue.raw index a527ccb55e..39d1c65564 100644 --- a/gstreamer-sharp/coreplugins/inspect/queue.raw +++ b/gstreamer-sharp/coreplugins/inspect/queue.raw @@ -66,7 +66,7 @@ guint Current level (buffers) Current number of buffers in the queue - RW + R 0 @@ -75,7 +75,7 @@ guint Current level (kB) Current amount of data in the queue (bytes) - RW + R 0 @@ -84,7 +84,7 @@ guint64 Current level (ns) Current amount of data in the queue (in ns) - RW + R 0 diff --git a/gstreamer-sharp/coreplugins/inspect/tee.raw b/gstreamer-sharp/coreplugins/inspect/tee.raw index f0790bbeed..baa4b547ec 100644 --- a/gstreamer-sharp/coreplugins/inspect/tee.raw +++ b/gstreamer-sharp/coreplugins/inspect/tee.raw @@ -57,7 +57,7 @@ gint Num Src Pads The number of source pads - RW + R 0 @@ -90,7 +90,7 @@ gchararray Last Message The message describing current status - RW + R NULL diff --git a/gstreamer-sharp/coreplugins/inspect/typefind.raw b/gstreamer-sharp/coreplugins/inspect/typefind.raw index 853a1bc566..9dee1ac69f 100644 --- a/gstreamer-sharp/coreplugins/inspect/typefind.raw +++ b/gstreamer-sharp/coreplugins/inspect/typefind.raw @@ -66,7 +66,7 @@ GstCaps caps detected capabilities in stream - RW + R NULL