On Sun, Apr 29, 2012 at 2:34 PM, Sune Vuorela <[email protected]> wrote: > On 2012-04-28, George Kiagiadakis <[email protected]> wrote: >> No, the classes that wrap GObjects do not need a d-pointer. All the >> calls are forwarded to the underlying GObject and if for any reason we >> ever need to save extra data on the wrapper class (which is highly >> unlikely), we should use the GObject qdata for that. Wrapper classes >> may be destroyed and re-allocated by QtGLib and therefore they >> shouldn't hold any data. > > aren't you this way also locking your self to always require just to > wrap the GObject classes and not actually have the possibility to do teh > implementation without the GObject classes at all ?
Yes, this is the design of QtGLib. Tbh, this was intended for use only in QtGStreamer, which couldn't ever possibly be separated from GObject, but it also ended up being used here. I'm not totally happy with it, but for the moment we can live with it. This is possibly going to change in the future. The API/ABI will need to break at some point anyway, as I will be doing adjustments in QtGLib/QtGStreamer to support Qt5 and GStreamer 1.0. Btw, Albert, there are indeed a couple of problems in certain classes and in the build system. I'll go through them in the next few days.
