bufferpool: use quarks for structure fields
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 17 Feb 2011 16:29:27 +0000 (17:29 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Wed, 2 Mar 2011 10:23:21 +0000 (11:23 +0100)
gst/gstbufferpool.c
gst/gstquark.c
gst/gstquark.h

index 5d50629..5d4796b 100644 (file)
@@ -35,6 +35,7 @@
 #include <sys/types.h>
 
 #include "gstinfo.h"
+#include "gstquark.h"
 
 #include "gstbufferpool.h"
 
@@ -92,12 +93,13 @@ gst_buffer_pool_init (GstBufferPool * pool)
 {
   pool->priv = GST_BUFFER_POOL_GET_PRIVATE (pool);
 
-  pool->config = gst_structure_new ("GstBufferPoolConfig",
-      "size", G_TYPE_UINT, 0,
-      "min-buffers", G_TYPE_UINT, 0,
-      "max-buffers", G_TYPE_UINT, 0,
-      "prefix", G_TYPE_UINT, 0,
-      "postfix", G_TYPE_UINT, 0, "align", G_TYPE_UINT, 1, NULL);
+  pool->config = gst_structure_id_new (GST_QUARK (BUFFER_POOL_CONFIG),
+      GST_QUARK (SIZE), G_TYPE_UINT, 0,
+      GST_QUARK (MIN_BUFFERS), G_TYPE_UINT, 0,
+      GST_QUARK (MAX_BUFFERS), G_TYPE_UINT, 0,
+      GST_QUARK (PREFIX), G_TYPE_UINT, 0,
+      GST_QUARK (POSTFIX), G_TYPE_UINT, 0,
+      GST_QUARK (ALIGN), G_TYPE_UINT, 1, NULL);
   pool->poll = gst_poll_new_timer ();
   pool->queue = gst_atomic_queue_new (10);
   default_set_flushing (pool, TRUE);
@@ -289,12 +291,13 @@ gst_buffer_pool_config_set (GstStructure * config, guint size,
 {
   g_return_if_fail (config != NULL);
 
-  gst_structure_set (config,
-      "size", G_TYPE_UINT, size,
-      "min-buffers", G_TYPE_UINT, min_buffers,
-      "max-buffers", G_TYPE_UINT, max_buffers,
-      "prefix", G_TYPE_UINT, prefix,
-      "postfix", G_TYPE_UINT, postfix, "align", G_TYPE_UINT, align, NULL);
+  gst_structure_id_set (config,
+      GST_QUARK (SIZE), G_TYPE_UINT, size,
+      GST_QUARK (MIN_BUFFERS), G_TYPE_UINT, min_buffers,
+      GST_QUARK (MAX_BUFFERS), G_TYPE_UINT, max_buffers,
+      GST_QUARK (PREFIX), G_TYPE_UINT, prefix,
+      GST_QUARK (POSTFIX), G_TYPE_UINT, postfix,
+      GST_QUARK (ALIGN), G_TYPE_UINT, align, NULL);
 }
 
 /**
@@ -316,12 +319,13 @@ gst_buffer_pool_config_get (GstStructure * config, guint * size,
 {
   g_return_val_if_fail (config != NULL, FALSE);
 
-  return gst_structure_get (config,
-      "size", G_TYPE_UINT, size,
-      "min-buffers", G_TYPE_UINT, min_buffers,
-      "max-buffers", G_TYPE_UINT, max_buffers,
-      "prefix", G_TYPE_UINT, prefix,
-      "postfix", G_TYPE_UINT, postfix, "align", G_TYPE_UINT, align, NULL);
+  return gst_structure_id_get (config,
+      GST_QUARK (SIZE), G_TYPE_UINT, size,
+      GST_QUARK (MIN_BUFFERS), G_TYPE_UINT, min_buffers,
+      GST_QUARK (MAX_BUFFERS), G_TYPE_UINT, max_buffers,
+      GST_QUARK (PREFIX), G_TYPE_UINT, prefix,
+      GST_QUARK (POSTFIX), G_TYPE_UINT, postfix,
+      GST_QUARK (ALIGN), G_TYPE_UINT, align, NULL);
 }
 
 static GstFlowReturn
index 91a2012..45ce87b 100644 (file)
@@ -50,7 +50,8 @@ static const gchar *_quark_strings[] = {
   "intermediate", "GstMessageStepStart", "active", "eos", "sink-message",
   "message", "GstMessageQOS", "running-time", "stream-time", "jitter",
   "quality", "processed", "dropped", "buffering-ranges", "GstMessageProgress",
-  "code", "text", "percent", "timeout"
+  "code", "text", "percent", "timeout", "GstBufferPoolConfig", "size",
+  "min-buffers", "max-buffers", "prefix", "postfix", "align"
 };
 
 GQuark _priv_gst_quark_table[GST_QUARK_MAX];
index 6e16ee5..95f4489 100644 (file)
@@ -132,8 +132,15 @@ typedef enum _GstQuarkId
   GST_QUARK_TEXT = 103,
   GST_QUARK_PERCENT = 104,
   GST_QUARK_TIMEOUT = 105,
+  GST_QUARK_BUFFER_POOL_CONFIG = 106,
+  GST_QUARK_SIZE = 107,
+  GST_QUARK_MIN_BUFFERS = 108,
+  GST_QUARK_MAX_BUFFERS = 109,
+  GST_QUARK_PREFIX = 110,
+  GST_QUARK_POSTFIX = 111,
+  GST_QUARK_ALIGN = 112,
 
-  GST_QUARK_MAX = 106
+  GST_QUARK_MAX = 113
 } GstQuarkId;
 
 extern GQuark _priv_gst_quark_table[GST_QUARK_MAX];