From kde-multimedia Wed May 30 22:28:47 2001 From: Stefan Westerfeld Date: Wed, 30 May 2001 22:28:47 +0000 To: kde-multimedia Subject: Re: mcopclass files X-MARC-Message: https://marc.info/?l=kde-multimedia&m=99126192421381 Hi! On Wed, May 30, 2001 at 02:25:51PM +0200, Jeroen Jacobs wrote: > > There are two things you need to know: > > > > 1. there are two kinds of mcopclass files > > * one type is being autogenerated by mcopidl and contains an index to > > the types described in the .idl file and stored in the .mcoptype file > > these files have a Type= line > > > > * the other type is being handwritten, and tells aRts which components > > exist, and how they can be created > > these files have a Language= line > > > > 2. the handwritten component descriptions are named after the component > > they implement - i.e. if you implement Arts::StereoEffectStack, the file > > has to be called $KDEDIR/lib/mcop/Arts/StereoEffectStack.mcopclass, because > > thats what the name of the interface it implements is > > Well.. I took a look at your WavePlayObject mcopclass files and discovered > that both (mcop/WAVPlayObject and mcop/Arts/WavPlayObject) are the same. Why > does mcopidl generate a mcopclass file ? It seems like nobody uses this... Arts::InterfaceRepo accesses the generated data. If you ask for an interface (or type) that is not known anyway (because the corresponding library is already loaded), then the InterfaceRepo will dynamically load the informations about that type using these files. See kdelibs/arts/mcop/ifacerepo_impl.cc. This feature, in turn, is used by artsbuilder to know which ports to show for modules that it doesn't know yet, but it might also be used by bindings to scripting languages one day, to find out which methods/attributes an object has. mcop/WAVPlayObject and mcop/Arts/WavPlayObject are different, they are both *not* type files but describe implementations of different wave players, one is being provided by mpeglib, the other is being provided by aRts itself. The interfaces are WAVPlayObject (the mpeglib one, from kdemultimedia/mpeglib_artsplug) Arts::WavPlayObject (the aRts one, from kdelibs/arts/soundserver) Cu... Stefan -- -* Stefan Westerfeld, stefan@space.twc.de (PGP!), Hamburg/Germany KDE Developer, project infos at http://space.twc.de/~stefan/kde *- _______________________________________________ Kde-multimedia mailing list Kde-multimedia@master.kde.org http://master.kde.org/mailman/listinfo/kde-multimedia