remove queryutils headers after moving the two used functions to gstquery. ...

remove queryutils headers after moving the two used functions to gstquery.  also fixes build problem for gstsiddec

Original commit message from CVS:
remove queryutils headers after moving the two used functions
to gstquery.  also fixes build problem for gstsiddec
parent 20d6576e
2005-09-26 Thomas Vander Stichele <thomas at apestaart dot org>
* gst/Makefile.am:
* gst/gst.h:
* gst/gstpad.h:
* gst/gstpadtemplate.h:
* gst/gstquery.c:
* gst/gstquery.h:
* gst/gstqueryutils.c:
* gst/gstqueryutils.h:
remove queryutils headers after moving the two used functions
to gstquery. also fixes build problem for gstsiddec
2005-09-26 Michael Smith <msmith@fluendo.com>
* tools/gst-launch.1.in:
......
......@@ -96,14 +96,13 @@ libgstreamer_@GST_MAJORMINOR@_la_SOURCES = \
gstplugin.c \
gstpluginfeature.c \
gstquery.c \
gstqueryutils.c \
gstqueue.c \
gstregistry.c \
gstregistryxml.c \
gststructure.c \
gstsystemclock.c \
gsttaglist.c \
gsttagsetter.c \
gsttagsetter.c \
gsttask.c \
$(GST_TRACE_SRC) \
gsttypefind.c \
......@@ -174,12 +173,11 @@ gst_headers = \
gstplugin.h \
gstpluginfeature.h \
gstquery.h \
gstqueryutils.h \
gstqueue.h \
gststructure.h \
gstsystemclock.h \
gsttaglist.h \
gsttagsetter.h \
gsttagsetter.h \
gsttask.h \
gsttrace.h \
gsttypefind.h \
......
......@@ -51,7 +51,6 @@
#include <gst/gstpipeline.h>
#include <gst/gstplugin.h>
#include <gst/gstquery.h>
#include <gst/gstqueryutils.h>
#include <gst/gstregistry.h>
#include <gst/gststructure.h>
#include <gst/gstsystemclock.h>
......
......@@ -31,7 +31,6 @@
#include <gst/gstcaps.h>
#include <gst/gstevent.h>
#include <gst/gstquery.h>
#include <gst/gstqueryutils.h>
#include <gst/gsttask.h>
G_BEGIN_DECLS
......
......@@ -31,7 +31,6 @@
#include <gst/gstcaps.h>
#include <gst/gstevent.h>
#include <gst/gstquery.h>
#include <gst/gstqueryutils.h>
#include <gst/gsttask.h>
G_BEGIN_DECLS
......
......@@ -25,7 +25,8 @@
* @short_description: Dynamically register new query types and parse results
* @see_also: #GstPad, #GstElement
*
* GstQuery functions are used to register a new query types to the gstreamer core.
* GstQuery functions are used to register a new query types to the gstreamer
* core.
* Query types can be used to perform queries on pads and elements.
*
* Query answer can be parsed using gst_query_parse_xxx() helpers.
......@@ -34,6 +35,7 @@
#include "gst_private.h"
#include "gstquery.h"
#include "gstvalue.h"
#include "gstenumtypes.h"
GST_DEBUG_CATEGORY_STATIC (gst_query_debug);
......@@ -599,3 +601,45 @@ gst_query_get_structure (GstQuery * query)
return query->structure;
}
void
gst_query_set_seeking (GstQuery * query, GstFormat format,
gboolean seekable, gint64 segment_start, gint64 segment_end)
{
GstStructure *structure;
g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_SEEKING);
structure = gst_query_get_structure (query);
gst_structure_set (structure,
"format", GST_TYPE_FORMAT, format,
"seekable", G_TYPE_BOOLEAN, seekable,
"segment-start", G_TYPE_INT64, segment_start,
"segment-end", G_TYPE_INT64, segment_end, NULL);
}
void
gst_query_set_formats (GstQuery * query, gint n_formats, ...)
{
va_list ap;
GValue list = { 0, };
GValue item = { 0, };
GstStructure *structure;
gint i;
g_value_init (&list, GST_TYPE_LIST);
va_start (ap, n_formats);
for (i = 0; i < n_formats; i++) {
g_value_init (&item, GST_TYPE_FORMAT);
g_value_set_enum (&item, va_arg (ap, GstFormat));
gst_value_list_append_value (&list, &item);
g_value_unset (&item);
}
va_end (ap);
structure = gst_query_get_structure (query);
gst_structure_set_value (structure, "formats", &list);
}
......@@ -167,6 +167,13 @@ GstQuery * gst_query_new_application (GstQueryType type,
GstStructure * gst_query_get_structure (GstQuery *query);
/* moved from old gstqueryutils.h */
void gst_query_set_seeking (GstQuery *query, GstFormat format,
gboolean seekable,
gint64 segment_start,
gint64 segment_end);
void gst_query_set_formats (GstQuery *query, gint n_formats, ...);
G_END_DECLS
#endif /* __GST_QUERY_H__ */
......
/* GStreamer
* Copyright (C) 2005 Andy Wingo <wingo@pobox.com>
*
* gstqueryutils.c: Utility functions for creating and parsing GstQueries.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <stdarg.h>
#include "gstqueryutils.h"
#include "gstenumtypes.h"
#include "gstvalue.h"
#include "gst_private.h"
/* some macros are just waiting to be defined here */
void
gst_query_parse_seeking_query (GstQuery * query, GstFormat * format)
{
GstStructure *structure;
g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_SEEKING);
structure = gst_query_get_structure (query);
if (format)
*format = g_value_get_enum (gst_structure_get_value (structure, "format"));
}
void
gst_query_set_seeking (GstQuery * query, GstFormat format,
gboolean seekable, gint64 segment_start, gint64 segment_end)
{
GstStructure *structure;
g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_SEEKING);
structure = gst_query_get_structure (query);
gst_structure_set (structure,
"format", GST_TYPE_FORMAT, format,
"seekable", G_TYPE_BOOLEAN, seekable,
"segment-start", G_TYPE_INT64, segment_start,
"segment-end", G_TYPE_INT64, segment_end, NULL);
}
void
gst_query_parse_seeking_response (GstQuery * query, GstFormat * format,
gboolean * seekable, gint64 * segment_start, gint64 * segment_end)
{
GstStructure *structure;
g_return_if_fail (GST_QUERY_TYPE (query) == GST_QUERY_SEEKING);
structure = gst_query_get_structure (query);
if (format)
*format = g_value_get_enum (gst_structure_get_value (structure, "format"));
if (seekable)
*seekable = g_value_get_boolean (gst_structure_get_value
(structure, "seekable"));
if (segment_start)
*segment_start = g_value_get_int64 (gst_structure_get_value
(structure, "segment-start"));
if (segment_end)
*segment_end = g_value_get_int64 (gst_structure_get_value
(structure, "segment-end"));
}
void
gst_query_set_formats (GstQuery * query, gint n_formats, ...)
{
va_list ap;
GValue list = { 0, };
GValue item = { 0, };
GstStructure *structure;
gint i;
g_value_init (&list, GST_TYPE_LIST);
va_start (ap, n_formats);
for (i = 0; i < n_formats; i++) {
g_value_init (&item, GST_TYPE_FORMAT);
g_value_set_enum (&item, va_arg (ap, GstFormat));
gst_value_list_append_value (&list, &item);
g_value_unset (&item);
}
va_end (ap);
structure = gst_query_get_structure (query);
gst_structure_set_value (structure, "formats", &list);
}
/* GStreamer
* Copyright (C) 2005 Andy Wingo <wingo@pobox.com>
*
* gstqueryutils.c: Utility functions for creating and parsing GstQueries.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include <glib.h>
#include <gst/gstformat.h>
#include <gst/gstquery.h>
void gst_query_parse_seeking_query (GstQuery *query, GstFormat *format);
void gst_query_set_seeking (GstQuery *query, GstFormat format,
gboolean seekable, gint64 segment_start,
gint64 segment_end);
void gst_query_parse_seeking_response (GstQuery *query, GstFormat *format,
gboolean *seekable,
gint64 *segment_start,
gint64 *segment_end);
void gst_query_set_formats (GstQuery *query, gint n_formats, ...);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment