gstreamer/gst
Andy Wingo 4b908e33e0 gst/gstutils.c: RPAD fixes all around.
Original commit message from CVS:
2005-06-08  Andy Wingo  <wingo@pobox.com>

* gst/gstutils.c: RPAD fixes all around.
(gst_element_link_pads): Refcounting fixes.

* tools/gst-inspect.c:
* tools/gst-xmlinspect.c:
* parse/grammar.y:
* gst/base/gsttypefindhelper.c:
* gst/base/gstbasesink.c:
* gst/gstqueue.c: RPAD fixes.

* gst/gstghostpad.h:
* gst/gstghostpad.c: New ghost pad implementation as full proxy
pads. The tricky thing is they provide both source and sink
interfaces, since they proxy the internal pad for the external
pad, and vice versa. Implement with lower-level ProxyPad objects,
with the interior proxy pad as a child of the exterior ghost pad.
Should write a doc on this.

* gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
(gst_pad_set_name, gst_pad_set_parent): Macros removed, use
gst_object API.

* gst/gstpad.c: Big changes. No more stub base GstPad, now all
pads are real pads. No ghost pads in this file. Not documenting
the myriad s/RPAD/PAD/ and REALIZE fixes.
(gst_pad_class_init): Add properties for "direction" and
"template". Both are construct-only, so they can't change during
the life of the pad. Fixes properly deriving from GstPad.
(gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
derived objects, just set properties when creating the objects via
g_object_new.
(gst_pad_get_parent): Implement as a function, return NULL if the
parent is not an element.
(gst_pad_get_real_parent, gst_pad_add_ghost_pad)
(gst_pad_remove_ghost_pad, gst_pad_realize): Removed.

* gst/gstobject.c (gst_object_class_init): Make name a construct
property. Don't set it in the object init.

* gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
with UNKNOWN direction.
(gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
(gst_element_remove_pad): Remove ghost-pad special cases.
(gst_element_pads_activate): Remove rpad cruft.

* gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
catch the pad's-parent-not-an-element case.

* gst/gst.h: Include gstghostpad.h.

* gst/gst.c (init_post): No more real, ghost pads.

* gst/Makefile.am: Add gstghostpad.[ch].

* check/Makefile.am:
* check/gst/gstbin.c:
* check/gst/gstghostpad.c (test_ghost_pads): Check that linking
into a bin creates ghost pads, and that the refcounts are right.
Partly moved from gstbin.c.
2005-06-08 22:16:27 +00:00
..
base gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
elements gst/elements/gstcapsfilter.c: Free existing caps if the capsfilter changes. Add a FIXME about setting those caps on t... 2005-06-02 15:45:16 +00:00
indexers GCC 4 fixen. 2005-05-04 21:29:44 +00:00
parse gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
registries GCC 4 fixen. 2005-05-04 21:29:44 +00:00
schedulers gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function. 2005-05-25 11:50:11 +00:00
.gitignore keep this up to date, since I seem to be the only one who cares about not missing files on commits 2004-07-21 21:37:31 +00:00
cothreads.c gst/: Aplied part of patch #157127: Cleanup of issues reported by sparse. 2004-11-02 15:02:12 +00:00
cothreads.h gst/: implement gst_pad_collect as replacement for gst_pad_select. 2004-04-04 02:36:12 +00:00
gettext.h adding i18n tested with nl, seems to work fine 2004-01-13 11:30:00 +00:00
gst-i18n-app.h Enable NLS under Windows 2004-06-12 10:45:54 +00:00
gst-i18n-lib.h A bunch of portability fixes, derived from Steve Lhomme's MSVC 2004-04-28 23:26:06 +00:00
gst.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gst.h gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gst_private.h Bump version number, we're now 0.9.0 2005-03-09 11:08:18 +00:00
gstarch.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gstbin.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstbin.h Next big merge. 2005-03-21 17:34:02 +00:00
gstbuffer.c white space fixes 2005-06-08 13:40:46 +00:00
gstbuffer.h white space fixes 2005-06-08 13:40:46 +00:00
gstbus.c gst/gstbus.*: Implement a real GSource and use g_main_context_wakeup() to signal new messages instead of the socketpair. 2005-05-26 10:48:53 +00:00
gstbus.h gst/gstbus.*: Implement a real GSource and use g_main_context_wakeup() to signal new messages instead of the socketpair. 2005-05-26 10:48:53 +00:00
gstcaps.c GCC 4 fixen. 2005-05-04 21:29:44 +00:00
gstcaps.h Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic. 2005-04-24 22:49:45 +00:00
gstclock.c gst/: Fix name lookup in GstBin. 2005-05-05 09:28:01 +00:00
gstclock.h Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic. 2005-04-24 22:49:45 +00:00
gstcompat.h First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstconfig.h.in merges from 0.8 for 64 bit issues 2005-05-02 15:20:30 +00:00
gstelement.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstelement.h gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstelementfactory.c add a debug line 2005-06-08 13:41:05 +00:00
gstelementfactory.h gst/: Move elementfactory methods to separate .h file. 2005-05-30 15:51:40 +00:00
gsterror.c added params for deprecation guards documented some more enums 2005-01-21 17:52:50 +00:00
gsterror.h flesh out error descriptions 2005-02-11 09:58:31 +00:00
gstevent.c check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstevent.h check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstfilter.c Changes to handle compilers that don't have variadic macro support. In particular, glib headers define some inlines ... 2004-05-07 02:36:28 +00:00
gstfilter.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gstformat.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstformat.h First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstghostpad.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstghostpad.h gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstindex.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstindex.h fix for #150242 2004-08-16 10:35:36 +00:00
gstinfo.c Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic. 2005-04-24 22:49:45 +00:00
gstinfo.h Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic. 2005-04-24 22:49:45 +00:00
gstinterface.c remove gst_info remove gstlog.h, fold back to gstinfo.h update translations 2004-05-03 16:03:24 +00:00
gstinterface.h put symbols in the sections.txt into the right sections (so that we dont get wrong undocumented symbols) added TITLE ... 2004-07-21 11:32:09 +00:00
gstiterator.c Added GstBin test. 2005-03-09 16:10:59 +00:00
gstiterator.h gst/gstiterator.h: Add some includes. 2005-05-09 06:21:10 +00:00
gstmacros.h A bunch of portability fixes, derived from Steve Lhomme's MSVC 2004-04-28 23:26:06 +00:00
gstmarshal.list check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstmemchunk.c pkgconfig/: New files. 2005-04-06 11:08:07 +00:00
gstmemchunk.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gstmessage.c gst/: Make subbufer unref the parent in finalize. some more debugging info. 2005-05-19 16:26:50 +00:00
gstmessage.h check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstminiobject.c gst/gstminiobject.c (gst_value_mini_object_collect): Use gst_value_set_mini_object so as to add a ref on the object (... 2005-05-27 09:27:35 +00:00
gstminiobject.h add a 'plugins' dir to the PLUGIN_PATH in the uninstalled script to drop random other plugin-having projects in 2005-06-08 13:42:52 +00:00
gstobject.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstobject.h OBJECT acts on obj not caps 2005-06-08 13:41:31 +00:00
gstpad.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstpad.h gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstparse.c gst/gstparse.c: Free the GString used in _gst_parse_escape() 2004-04-21 22:56:59 +00:00
gstparse.h put symbols in the sections.txt into the right sections (so that we dont get wrong undocumented symbols) added TITLE ... 2004-07-21 11:32:09 +00:00
gstpipeline.c gst/gstpipeline.c: Take snapshot of state without blocking. 2005-06-02 09:39:21 +00:00
gstpipeline.h Next big merge. 2005-03-21 17:34:02 +00:00
gstplugin.c gst/gstplugin.c: apply patch from #172526 to make register work on MacOSX 2005-05-03 12:46:47 +00:00
gstplugin.h gst/: Remove gst_library_load as it does more harm than good with the new g_module flags. 2005-04-25 13:00:47 +00:00
gstpluginfeature.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstpluginfeature.h First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gstprobe.c check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstprobe.h check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstquery.c check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstquery.h check/Makefile.am: remove GstData checks 2005-05-16 20:21:55 +00:00
gstqueryutils.c Remove old query functions. Ported old code. 2005-05-09 10:53:13 +00:00
gstqueryutils.h Remove old query functions. Ported old code. 2005-05-09 10:53:13 +00:00
gstqueue.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstqueue.h gst/: Fix state changes for non sinks. We now change sinks, then elements with unconnected srcpads, then the rest. 2005-05-25 19:33:39 +00:00
gstregistry.c gst/gstregistry.c: refuse to add plugins when a plugin with same name is already registered. Fixes a bunch of "How to... 2004-05-10 00:35:59 +00:00
gstregistry.h gst/: Fix macro's for Mingw (fixes #162276). 2005-01-05 11:15:04 +00:00
gstregistrypool.c remove gst_info remove gstlog.h, fold back to gstinfo.h update translations 2004-05-03 16:03:24 +00:00
gstregistrypool.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gstscheduler.c Next big merge. 2005-03-21 17:34:02 +00:00
gstscheduler.h Next big merge. 2005-03-21 17:34:02 +00:00
gststructure.c gst/gstiterator.h: Add some includes. 2005-05-09 06:21:10 +00:00
gststructure.h Convert everything from GstAtomicInt to g_atomic_int_*, and remove gstatomic. 2005-04-24 22:49:45 +00:00
gstsystemclock.c gst/: Better debugging of clocking info. 2005-04-28 16:28:28 +00:00
gstsystemclock.h Small typo fixes, doc updates. 2005-05-30 15:48:45 +00:00
gsttag.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gsttag.h added docs for the TAG defines 2005-01-18 14:15:30 +00:00
gsttaginterface.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gsttaginterface.h Next big merge. 2005-03-21 17:34:02 +00:00
gsttaglist.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gsttaglist.h added docs for the TAG defines 2005-01-18 14:15:30 +00:00
gsttagsetter.c First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... 2005-03-07 18:27:42 +00:00
gsttagsetter.h Next big merge. 2005-03-21 17:34:02 +00:00
gsttask.c gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function. 2005-05-25 11:50:11 +00:00
gsttask.h gst/: Implement gst_pad_pause/start/stop_task(), take STREAM lock in task function. 2005-05-25 11:50:11 +00:00
gsttrace.c gst/gstinfo.h: Add missing inline function. 2004-05-10 18:07:24 +00:00
gsttrace.h gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler 2004-07-03 04:59:12 +00:00
gsttrashstack.c Changes to handle compilers that don't have variadic macro support. In particular, glib headers define some inlines ... 2004-05-07 02:36:28 +00:00
gsttrashstack.h gst/gsttrashstack.h: Ooohh. a nasty one! After having a failed pop() from the stack, it's possible that the stack is ... 2005-04-26 18:07:45 +00:00
gsttypefind.c gst/: Make gst_caps_replace() work like other _replace() functions. 2005-04-20 09:10:42 +00:00
gsttypefind.h docs/gst/Makefile.am: Disable a bunch of headers from being scanned 2004-03-30 07:36:19 +00:00
gsttypes.h gst/: Move elementfactory methods to separate .h file. 2005-05-30 15:51:40 +00:00
gsturi.c gst/gsturi.c (gst_uri_get_location): unescape string escape string. 2004-10-11 09:44:05 +00:00
gsturi.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gsturitype.c GST_DEBUG reorganization containing loads of stuff: 2003-06-29 14:05:49 +00:00
gsturitype.h Revert again, this time without post-commit reindent hooks to put back the indentation :-) 2004-03-15 14:43:35 +00:00
gstutils.c gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00
gstutils.h gst/base/gstbasesrc.c: Don't go in pull mode for non-seekable sources. 2005-05-25 15:57:57 +00:00
gstvalue.c remove stupid printf 2005-05-10 14:51:49 +00:00
gstvalue.h gst/gstvalue.h: Mark _gst_reserved[] as private 2005-01-06 01:08:23 +00:00
gstversion.h.in gst/gstversion.h.in: Protect header. 2004-12-09 13:37:18 +00:00
gstxml.c GCC 4 fixen. 2005-05-04 21:29:44 +00:00
gstxml.h docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331) 2004-08-18 21:46:55 +00:00
Makefile.am gst/gstutils.c: RPAD fixes all around. 2005-06-08 22:16:27 +00:00