GstIterator

GstIterator

Functions

Types and Values

Includes

#include <gst/gst.h>

Description

Functions

GstIteratorCopyFunction ()

void
(*GstIteratorCopyFunction) (const GstIterator *it,
                            GstIterator *copy);

GstIteratorNextFunction ()

GstIteratorResult
(*GstIteratorNextFunction) (GstIterator *it,
                            GValue *result);

GstIteratorItemFunction ()

GstIteratorItem
(*GstIteratorItemFunction) (GstIterator *it,
                            const GValue *item);

GstIteratorResyncFunction ()

void
(*GstIteratorResyncFunction) (GstIterator *it);

GstIteratorFreeFunction ()

void
(*GstIteratorFreeFunction) (GstIterator *it);

GstIteratorForeachFunction ()

void
(*GstIteratorForeachFunction) (const GValue *item,
                               gpointer user_data);

GstIteratorFoldFunction ()

gboolean
(*GstIteratorFoldFunction) (const GValue *item,
                            GValue *ret,
                            gpointer user_data);

GST_ITERATOR()

#define GST_ITERATOR(it)                ((GstIterator*)(it))

GST_ITERATOR_LOCK()

#define GST_ITERATOR_LOCK(it)           (GST_ITERATOR(it)->lock)

GST_ITERATOR_COOKIE()

#define GST_ITERATOR_COOKIE(it)         (GST_ITERATOR(it)->cookie)

GST_ITERATOR_ORIG_COOKIE()

#define GST_ITERATOR_ORIG_COOKIE(it)    (GST_ITERATOR(it)->master_cookie)

gst_iterator_new ()

GstIterator *
gst_iterator_new (guint size,
                  GType type,
                  GMutex *lock,
                  guint32 *master_cookie,
                  GstIteratorCopyFunction copy,
                  GstIteratorNextFunction next,
                  GstIteratorItemFunction item,
                  GstIteratorResyncFunction resync,
                  GstIteratorFreeFunction free);

gst_iterator_new_list ()

GstIterator *
gst_iterator_new_list (GType type,
                       GMutex *lock,
                       guint32 *master_cookie,
                       GList **list,
                       GObject *owner,
                       GstIteratorItemFunction item);

gst_iterator_new_single ()

GstIterator *
gst_iterator_new_single (GType type,
                         const GValue *object);

gst_iterator_copy ()

GstIterator *
gst_iterator_copy (const GstIterator *it);

gst_iterator_free ()

void
gst_iterator_free (GstIterator *it);

gst_iterator_next ()

GstIteratorResult
gst_iterator_next (GstIterator *it,
                   GValue *elem);

gst_iterator_resync ()

void
gst_iterator_resync (GstIterator *it);

gst_iterator_push ()

void
gst_iterator_push (GstIterator *it,
                   GstIterator *other);

gst_iterator_filter ()

GstIterator *
gst_iterator_filter (GstIterator *it,
                     GCompareFunc func,
                     const GValue *user_data);

gst_iterator_fold ()

GstIteratorResult
gst_iterator_fold (GstIterator *it,
                   GstIteratorFoldFunction func,
                   GValue *ret,
                   gpointer user_data);

gst_iterator_foreach ()

GstIteratorResult
gst_iterator_foreach (GstIterator *it,
                      GstIteratorForeachFunction func,
                      gpointer user_data);

gst_iterator_find_custom ()

gboolean
gst_iterator_find_custom (GstIterator *it,
                          GCompareFunc func,
                          GValue *elem,
                          gpointer user_data);

Types and Values

struct GstIterator

struct GstIterator {
};

enum GstIteratorItem

Members

GST_ITERATOR_ITEM_SKIP

   

GST_ITERATOR_ITEM_PASS

   

GST_ITERATOR_ITEM_END

   

enum GstIteratorResult

Members

GST_ITERATOR_DONE

   

GST_ITERATOR_OK

   

GST_ITERATOR_RESYNC

   

GST_ITERATOR_ERROR