gstreamer/docs/design
Andy Wingo 8970bda4ba gst/gstquery.h
Original commit message from CVS:
2005-05-06  Andy Wingo  <wingo@pobox.com>

* gst/gstquery.h
* gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
GstData, init a memchunk.
(standard_definitions): Add a few query types, deprecate a few.
(gst_query_get_type): New proc.
(_gst_query_copy, _gst_query_free, gst_query_new): GstData
implementation.
(gst_query_new_application, gst_query_get_structure): New public
procs.

* docs/design/draft-query.txt: Removed LINKS from the query types,
because all the rest can be dispatched to other pads -- seemed
ugly to have a query that couldn't be dispatched. internal_links
is fine as a pad method.

* gst/gstpad.h: Add query2 as a pad method, add the new functions
in gstpad.c, but maintain binary compatibility for the moment.
Will fix before 0.9 is out.

* gst/gstqueryutils.c:
* gst/gstqueryutils.h: New files, implement 3 methods for each
query type: parse_query, parse_response, and set. Probably need an
allocator as well.

* gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.

* gst/elements/gstfilesink.c (gst_filesink_query2):
* gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
query_types, and formats methods.

* gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
(gst_pad_set_query2_function): New functions.
(gst_real_pad_init): Set query2_default as the default query2
function. Basically just dispatches to internally linked pads.

Needs review!

* gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
without using the atomic operations. Only one thread can possibly
be accessing the data at this point. Changed so as to avoid
gst_atomic operations.
2005-05-06 21:41:22 +00:00
..
draft-push-pull.txt Added draft for new query API. 2005-05-02 13:55:21 +00:00
draft-query.txt gst/gstquery.h 2005-05-06 21:41:22 +00:00
part-caps.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-clocks.txt Doc updates. 2005-03-10 12:51:45 +00:00
part-conventions.txt Docs updates, clean up some headers. 2005-03-08 14:38:06 +00:00
part-element-sink.txt Some more documentation. 2005-05-06 08:25:19 +00:00
part-element-source.txt Some more documentation. 2005-05-06 08:25:19 +00:00
part-events.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-gstbin.txt Docs updates 2005-03-22 11:32:59 +00:00
part-gstbus.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-gstelement.txt Added state change code. 2005-03-28 14:54:33 +00:00
part-gstobject.txt Doc updates. 2005-03-10 12:51:45 +00:00
part-gstpipeline.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-messages.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-MT-refcounting.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-negotiation.txt Added state change code. 2005-03-28 14:54:33 +00:00
part-preroll.txt Added state change code. 2005-03-28 14:54:33 +00:00
part-push-pull.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-query.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00
part-relations.txt Docs updates, clean up some headers. 2005-03-08 14:38:06 +00:00
part-scheduling.txt Added state change code. 2005-03-28 14:54:33 +00:00
part-standards.txt Doc updates. 2005-03-10 12:51:45 +00:00
part-states.txt Added state change code. 2005-03-28 14:54:33 +00:00
part-TODO.txt docs/design/: Some more docs. 2005-04-21 09:37:34 +00:00