[gst-devel] Why wrapping GLib interfaces?

Ronald Bultje rbultje at ronald.bitfreak.net
Tue Oct 14 02:36:02 CEST 2003


On Tue, 2003-10-14 at 10:03, Murray.Cumming at Comneon.com wrote:
> > From: Ronald Bultje [mailto:rbultje at ronald.bitfreak.net] 
> > Please, look at the code. It's very obvious once you look at 
> > the code, and you'll see how simple this it.
> 
> Can you give me a lxr or bonsai link to whatever code is actually being
> discussed here?

interface-per-instance layer:
http://cvs.sourceforge.net/viewcvs.py/gstreamer/gstreamer/gst/gstinterface.h?rev=1.3&view=markup
http://cvs.sourceforge.net/viewcvs.py/gstreamer/gstreamer/gst/gstinterface.c?rev=1.3&view=markup

interface example:
http://cvs.sourceforge.net/viewcvs.py/gstreamer/gst-plugins/gst-libs/gst/mixer/mixer.c?rev=1.4&view=markup
(note the prerequisite in the _get_type() function)
http://cvs.sourceforge.net/viewcvs.py/gstreamer/gst-plugins/gst-libs/gst/mixer/mixer.h?rev=1.5&view=markup
(note that the case/castcheck aren't the standard glib ones - instead,
they're our per-instace-checkers)

app example that shows why this is easy:
http://cvs.sourceforge.net/viewcvs.py/gstreamer/gst-sandbox/gst-mixer/src/mixer.c?rev=1.7&view=markup
(note the if (!GST_IS_MIXER (..)) continue;, our *only* code to check
for this - it's extremely easy)

Ronald

-- 
Ronald Bultje <rbultje at ronald.bitfreak.net>
Linux Video/Multimedia developer





More information about the gstreamer-devel mailing list