adapter: make internals private
authorWim Taymans <wim.taymans@collabora.co.uk>
Tue, 1 May 2012 07:25:25 +0000 (09:25 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Tue, 1 May 2012 07:32:45 +0000 (09:32 +0200)
Make the adapter fields private.

libs/gst/base/gstadapter.c
libs/gst/base/gstadapter.h

index 4183b81..9354674 100644 (file)
@@ -124,11 +124,21 @@ static void gst_adapter_flush_unchecked (GstAdapter * adapter, gsize flush);
 GST_DEBUG_CATEGORY_STATIC (gst_adapter_debug);
 #define GST_CAT_DEFAULT gst_adapter_debug
 
-#define GST_ADAPTER_GET_PRIVATE(obj)  \
-   (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GST_TYPE_ADAPTER, GstAdapterPrivate))
-
-struct _GstAdapterPrivate
+struct _GstAdapter
 {
+  GObject object;
+
+  /*< private > */
+  GSList *buflist;
+  GSList *buflist_end;
+  gsize size;
+  gsize skip;
+
+  /* we keep state of assembled pieces */
+  gpointer assembled_data;
+  gsize assembled_size;
+  gsize assembled_len;
+
   GstClockTime pts;
   guint64 pts_distance;
   GstClockTime dts;
@@ -140,6 +150,11 @@ struct _GstAdapterPrivate
   GstMapInfo info;
 };
 
+struct _GstAdapterClass
+{
+  GObjectClass parent_class;
+};
+
 #define _do_init \
   GST_DEBUG_CATEGORY_INIT (gst_adapter_debug, "adapter", 0, "object to splice and merge buffers to desired size")
 #define gst_adapter_parent_class parent_class
@@ -153,8 +168,6 @@ gst_adapter_class_init (GstAdapterClass * klass)
 {
   GObjectClass *object = G_OBJECT_CLASS (klass);
 
-  g_type_class_add_private (klass, sizeof (GstAdapterPrivate));
-
   object->dispose = gst_adapter_dispose;
   object->finalize = gst_adapter_finalize;
 }
@@ -162,13 +175,12 @@ gst_adapter_class_init (GstAdapterClass * klass)
 static void
 gst_adapter_init (GstAdapter * adapter)
 {
-  adapter->priv = GST_ADAPTER_GET_PRIVATE (adapter);
   adapter->assembled_data = g_malloc (DEFAULT_SIZE);
   adapter->assembled_size = DEFAULT_SIZE;
-  adapter->priv->pts = GST_CLOCK_TIME_NONE;
-  adapter->priv->pts_distance = 0;
-  adapter->priv->dts = GST_CLOCK_TIME_NONE;
-  adapter->priv->dts_distance = 0;
+  adapter->pts = GST_CLOCK_TIME_NONE;
+  adapter->pts_distance = 0;
+  adapter->dts = GST_CLOCK_TIME_NONE;
+  adapter->dts_distance = 0;
 }
 
 static void
@@ -213,13 +225,9 @@ gst_adapter_new (void)
 void
 gst_adapter_clear (GstAdapter * adapter)
 {
-  GstAdapterPrivate *priv;
-
   g_return_if_fail (GST_IS_ADAPTER (adapter));
 
-  priv = adapter->priv;
-
-  if (priv->info.memory)
+  if (adapter->info.memory)
     gst_adapter_unmap (adapter);
 
   g_slist_foreach (adapter->buflist, (GFunc) gst_mini_object_unref, NULL);
@@ -229,12 +237,12 @@ gst_adapter_clear (GstAdapter * adapter)
   adapter->size = 0;
   adapter->skip = 0;
   adapter->assembled_len = 0;
-  priv->pts = GST_CLOCK_TIME_NONE;
-  priv->pts_distance = 0;
-  priv->dts = GST_CLOCK_TIME_NONE;
-  priv->dts_distance = 0;
-  priv->scan_offset = 0;
-  priv->scan_entry = NULL;
+  adapter->pts = GST_CLOCK_TIME_NONE;
+  adapter->pts_distance = 0;
+  adapter->dts = GST_CLOCK_TIME_NONE;
+  adapter->dts_distance = 0;
+  adapter->scan_offset = 0;
+  adapter->scan_entry = NULL;
 }
 
 static inline void
@@ -245,14 +253,14 @@ update_timestamps (GstAdapter * adapter, GstBuffer * buf)
   pts = GST_BUFFER_PTS (buf);
   if (GST_CLOCK_TIME_IS_VALID (pts)) {
     GST_LOG_OBJECT (adapter, "new pts %" GST_TIME_FORMAT, GST_TIME_ARGS (pts));
-    adapter->priv->pts = pts;
-    adapter->priv->pts_distance = 0;
+    adapter->pts = pts;
+    adapter->pts_distance = 0;
   }
   dts = GST_BUFFER_DTS (buf);
   if (GST_CLOCK_TIME_IS_VALID (dts)) {
     GST_LOG_OBJECT (adapter, "new dts %" GST_TIME_FORMAT, GST_TIME_ARGS (dts));
-    adapter->priv->dts = dts;
-    adapter->priv->dts_distance = 0;
+    adapter->dts = dts;
+    adapter->dts_distance = 0;
   }
 }
 
@@ -267,9 +275,9 @@ copy_into_unchecked (GstAdapter * adapter, guint8 * dest, gsize skip,
 
   /* first step, do skipping */
   /* we might well be copying where we were scanning */
-  if (adapter->priv->scan_entry && (adapter->priv->scan_offset <= skip)) {
-    g = adapter->priv->scan_entry;
-    skip -= adapter->priv->scan_offset;
+  if (adapter->scan_entry && (adapter->scan_offset <= skip)) {
+    g = adapter->scan_entry;
+    skip -= adapter->scan_offset;
   } else {
     g = adapter->buflist;
   }
@@ -388,8 +396,8 @@ gst_adapter_try_to_merge_up (GstAdapter * adapter, gsize size)
     g->data = head;
 
     /* invalidate scan position */
-    adapter->priv->scan_offset = 0;
-    adapter->priv->scan_entry = NULL;
+    adapter->scan_offset = 0;
+    adapter->scan_entry = NULL;
 
     g = g_slist_next (g);
   }
@@ -422,7 +430,6 @@ gst_adapter_try_to_merge_up (GstAdapter * adapter, gsize size)
 gconstpointer
 gst_adapter_map (GstAdapter * adapter, gsize size)
 {
-  GstAdapterPrivate *priv;
   GstBuffer *cur;
   gsize skip, csize;
   gsize toreuse, tocopy;
@@ -431,9 +438,7 @@ gst_adapter_map (GstAdapter * adapter, gsize size)
   g_return_val_if_fail (GST_IS_ADAPTER (adapter), NULL);
   g_return_val_if_fail (size > 0, NULL);
 
-  priv = adapter->priv;
-
-  if (priv->info.memory)
+  if (adapter->info.memory)
     gst_adapter_unmap (adapter);
 
   /* we don't have enough data, return NULL. This is unlikely
@@ -452,10 +457,10 @@ gst_adapter_map (GstAdapter * adapter, gsize size)
 
     csize = gst_buffer_get_size (cur);
     if (csize >= size + skip) {
-      if (!gst_buffer_map (cur, &priv->info, GST_MAP_READ))
+      if (!gst_buffer_map (cur, &adapter->info, GST_MAP_READ))
         return FALSE;
 
-      return (guint8 *) priv->info.data + skip;
+      return (guint8 *) adapter->info.data + skip;
     }
     /* We may be able to efficiently merge buffers in our pool to
      * gather a big enough chunk to return it from the head buffer directly */
@@ -503,17 +508,13 @@ gst_adapter_map (GstAdapter * adapter, gsize size)
 void
 gst_adapter_unmap (GstAdapter * adapter)
 {
-  GstAdapterPrivate *priv;
-
   g_return_if_fail (GST_IS_ADAPTER (adapter));
 
-  priv = adapter->priv;
-
-  if (priv->info.memory) {
+  if (adapter->info.memory) {
     GstBuffer *cur = adapter->buflist->data;
     GST_LOG_OBJECT (adapter, "unmap memory buffer %p", cur);
-    gst_buffer_unmap (cur, &priv->info);
-    priv->info.memory = NULL;
+    gst_buffer_unmap (cur, &adapter->info);
+    adapter->info.memory = NULL;
   }
 }
 
@@ -558,14 +559,11 @@ gst_adapter_flush_unchecked (GstAdapter * adapter, gsize flush)
 {
   GstBuffer *cur;
   gsize size;
-  GstAdapterPrivate *priv;
   GSList *g;
 
   GST_LOG_OBJECT (adapter, "flushing %" G_GSIZE_FORMAT " bytes", flush);
 
-  priv = adapter->priv;
-
-  if (priv->info.memory)
+  if (adapter->info.memory)
     gst_adapter_unmap (adapter);
 
   /* clear state */
@@ -575,8 +573,8 @@ gst_adapter_flush_unchecked (GstAdapter * adapter, gsize flush)
   /* take skip into account */
   flush += adapter->skip;
   /* distance is always at least the amount of skipped bytes */
-  priv->pts_distance -= adapter->skip;
-  priv->dts_distance -= adapter->skip;
+  adapter->pts_distance -= adapter->skip;
+  adapter->dts_distance -= adapter->skip;
 
   g = adapter->buflist;
   cur = g->data;
@@ -584,8 +582,8 @@ gst_adapter_flush_unchecked (GstAdapter * adapter, gsize flush)
   while (flush >= size) {
     /* can skip whole buffer */
     GST_LOG_OBJECT (adapter, "flushing out head buffer");
-    priv->pts_distance += size;
-    priv->dts_distance += size;
+    adapter->pts_distance += size;
+    adapter->dts_distance += size;
     flush -= size;
 
     gst_buffer_unref (cur);
@@ -604,11 +602,11 @@ gst_adapter_flush_unchecked (GstAdapter * adapter, gsize flush)
   adapter->buflist = g;
   /* account for the remaining bytes */
   adapter->skip = flush;
-  adapter->priv->pts_distance += flush;
-  adapter->priv->dts_distance += flush;
+  adapter->pts_distance += flush;
+  adapter->dts_distance += flush;
   /* invalidate scan position */
-  priv->scan_offset = 0;
-  priv->scan_entry = NULL;
+  adapter->scan_offset = 0;
+  adapter->scan_entry = NULL;
 }
 
 void
@@ -909,9 +907,9 @@ gst_adapter_prev_pts (GstAdapter * adapter, guint64 * distance)
   g_return_val_if_fail (GST_IS_ADAPTER (adapter), GST_CLOCK_TIME_NONE);
 
   if (distance)
-    *distance = adapter->priv->pts_distance;
+    *distance = adapter->pts_distance;
 
-  return adapter->priv->pts;
+  return adapter->pts;
 }
 
 /**
@@ -936,9 +934,9 @@ gst_adapter_prev_dts (GstAdapter * adapter, guint64 * distance)
   g_return_val_if_fail (GST_IS_ADAPTER (adapter), GST_CLOCK_TIME_NONE);
 
   if (distance)
-    *distance = adapter->priv->dts_distance;
+    *distance = adapter->dts_distance;
 
-  return adapter->priv->dts;
+  return adapter->dts;
 }
 
 /**
@@ -989,21 +987,21 @@ gst_adapter_masked_scan_uint32_peek (GstAdapter * adapter, guint32 mask,
 
   /* first step, do skipping and position on the first buffer */
   /* optimistically assume scanning continues sequentially */
-  if (adapter->priv->scan_entry && (adapter->priv->scan_offset <= skip)) {
-    g = adapter->priv->scan_entry;
-    skip -= adapter->priv->scan_offset;
+  if (adapter->scan_entry && (adapter->scan_offset <= skip)) {
+    g = adapter->scan_entry;
+    skip -= adapter->scan_offset;
   } else {
     g = adapter->buflist;
-    adapter->priv->scan_offset = 0;
-    adapter->priv->scan_entry = NULL;
+    adapter->scan_offset = 0;
+    adapter->scan_entry = NULL;
   }
   buf = g->data;
   bsize = gst_buffer_get_size (buf);
   while (G_UNLIKELY (skip >= bsize)) {
     skip -= bsize;
     g = g_slist_next (g);
-    adapter->priv->scan_offset += bsize;
-    adapter->priv->scan_entry = g;
+    adapter->scan_offset += bsize;
+    adapter->scan_entry = g;
     buf = g->data;
     bsize = gst_buffer_get_size (buf);
   }
@@ -1041,8 +1039,8 @@ gst_adapter_masked_scan_uint32_peek (GstAdapter * adapter, guint32 mask,
     /* nothing found yet, go to next buffer */
     skip += bsize;
     g = g_slist_next (g);
-    adapter->priv->scan_offset += info.size;
-    adapter->priv->scan_entry = g;
+    adapter->scan_offset += info.size;
+    adapter->scan_entry = g;
     gst_buffer_unmap (buf, &info);
     buf = g->data;
 
index 17bf323..5b89744 100644 (file)
@@ -38,40 +38,13 @@ G_BEGIN_DECLS
 #define GST_IS_ADAPTER_CLASS(klass) \
   (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_ADAPTER))
 
-typedef struct _GstAdapter GstAdapter;
-typedef struct _GstAdapterClass GstAdapterClass;
-typedef struct _GstAdapterPrivate GstAdapterPrivate;
-
 /**
  * GstAdapter:
  *
  * The opaque #GstAdapter data structure.
  */
-struct _GstAdapter {
-  GObject       object;
-
-  /*< private >*/
-  GSList *      buflist;
-  GSList *      buflist_end;
-  gsize         size;
-  gsize         skip;
-
-  /* we keep state of assembled pieces */
-  gpointer      assembled_data;
-  gsize         assembled_size;
-  gsize         assembled_len;
-
-  GstAdapterPrivate *priv;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstAdapterClass {
-  GObjectClass  parent_class;
-
-  /*< private >*/
-  gpointer _gst_reserved[GST_PADDING];
-};
+typedef struct _GstAdapter GstAdapter;
+typedef struct _GstAdapterClass GstAdapterClass;
 
 GType                   gst_adapter_get_type            (void);