GstFilter

GstFilter — A utility function to filter GLists.

Functions

Includes

#include <gst/gst.h>

Description

Example 12. Filtering a list

1
2
3
4
5
6
7
8
9
GList *node;
GstObject *result = NULL;

node = gst_filter_run (list, (GstFilterFunc) my_filter, TRUE, NULL);
if (node) {
  result = GST_OBJECT (node->data);
  gst_object_ref (result);
  g_list_free (node);
}

Functions

GstFilterFunc ()

gboolean
(*GstFilterFunc) (gpointer obj,
                  gpointer user_data);

GstFilterFunc is deprecated and should not be used in newly-written code.

Function prototype for a filter callback that can be use in gst_filter_run(). The function should apply its filtering to obj . Additional data passed to gst_filter_run() are in data .

Parameters

obj

the object

 

user_data

filter data

 

Returns

TRUE for success.


gst_filter_run ()

GList *
gst_filter_run (const GList *list,
                GstFilterFunc func,
                gboolean first,
                gpointer user_data);

gst_filter_run is deprecated and should not be used in newly-written code.

Iterates over the elements in list , calling func with the list item data for each item. If func returns TRUE, data is prepended to the list of results returned. If first is true, the search is halted after the first result is found.

Since gst_filter_run() knows nothing about the type of data , no reference will be taken (if data refers to an object) and no copy of data wil be made in any other way when prepending data to the list of results.

Parameters

list

a linked list

 

func

the function to execute for each item.

[scope call]

first

flag to stop execution after a successful item

 

user_data

user data.

[closure]

Returns

the list of results. Free with g_list_free() when no longer needed (the data contained in the list is a flat copy and does need to be unreferenced or freed).

[transfer container]

Types and Values