[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-multimedia
Subject:    Re: mcopclass files
From:       Stefan Westerfeld <stefan () space ! twc ! de>
Date:       2001-05-30 22:28:47
[Download RAW message or body]

   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

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic