GNOME Bugzilla – Bug 108132
Make gstmm a little more compilable (incomplete)
Last modified: 2004-12-22 21:47:04 UTC
This patch will fix some compilation errors. It is incomplete. And I know there are errors. Please review.
Created attachment 14934 [details] [review] First patch.
Created attachment 14935 [details] [review] New file.
Created attachment 14936 [details] New file. caps.hg
Created attachment 14937 [details] New file. clock.hg
Created attachment 14938 [details] New file. event.hg
Created attachment 14939 [details] New file. event.ccg
Created attachment 14940 [details] New file. pluginfeature.ccg
Created attachment 14941 [details] New file. pluginfeature.hg
Created attachment 14942 [details] New file. scheduler.hg
I will look into this tomorrow. Martin.
I committed "First Patch" along with other changes of my own. Changes I left out: _CLASS_GTK_OBJECT -> _CLASS_GOBJECT: pointer -> Glib::RefPtr<>: I'd like to try this seperately. But don't have the time right now. Index: configure.in ! GTKMM_PREFIX=`pkg-config --variable=prefix glibmm-2.0` Wrong. Build requires gtkmmproc which is part of gtkmm-2.0 not glibmm-2.0. Index: gst/src/pad.hg ! _WRAP_METHOD(const GstEventMask* get_event_masks() const, gst_pad_get_event_masks) Why not EventMask ? Index: gst/src/pad.hg ! _WRAP_METHOD(const GstQueryType* get_query_types() const, gst_pad_get_query_types) Why not QueryType ? Index: gst/src/pad.hg + class PadTemplate : Gst::Object { + _CLASS_GTKOBJECT(PadTemplate,GstPadTemplate,GST_PAD_TEMPLATE,Gst::PadTemplate,GstPadTemplate) }; I added new files pad_template.{ccg,hg} for this. (Sorry, I wrote them some time ago and didn't have the time to make them compilable now.) The change I like most :) Index: gst/src/pad.hg ! virtual ButterPool* get_buffer_pool_vfunc() const; Hm, I must have been very hungry when I wrote this :-)
I've had a look at your files Peter. I downloaded them on my local disk but I won't upload them to cvs until Martin/I has/have fixed the caps-m4 error (see my mail). event class: I don't like to have 2 classes in one file. That's IMHO a not-so-nice feature in C++. Please write ONE file for ONE class. Please change _CLASS_GTKOBJECT to _CLASS_GOBJECT.
Re caps-m4 error: This is fixed now. gtkmmproc still doesn't pass everything because of the outdated gst_methods.defs. We have to regenerate this file. I'm working on it.
Thanks Martin. I don't know how I did that last time. Otherwise I'd tell you.
The .defs files are up-to-date now. I'll be working on element.hg. After that we have to make fixes to gstreamer so that the generated files would compile.
I added all new files. "make" passes in "gst/src". Next step: Report and fix gstreamer get_type() madness. However, I won't do this until tomorrow. Peter: Thanks for your efforts and sorry for the delay. I think gstmm is now in a more sane state so that you could work on some of the currently empty wrappers if you like.
I reported the missing gst_*_get_type() functions (#108514). Along with my recent commits, only missing constructors and Glib::ArrayHandle/ListHandle related problems are stopping gstmm from compiling, now.
I've succesfully applied Martin's patches. I also had to modfify two other files, it works now.
Thank you, Martin and Christian for sorting these things out. I'l try it out tonight. More work will be submitted as new bug reports.
I meant that the patches didn't make gstreamer non-compilable. I haven't tried to compile gstmm again, because I don't have gstreamer 0.7 on my machine and hence lack of time. Maybe I can arrange something to get these changes included in gstreamer 0.6.1.
We should open other bug reports for every class which isn't easy to fix .