From kde-multimedia Fri Mar 17 23:02:45 2000 From: Stefan Westerfeld Date: Fri, 17 Mar 2000 23:02:45 +0000 To: kde-multimedia Subject: Re: Components, round II X-MARC-Message: https://marc.info/?l=kde-multimedia&m=95333416521087 Hi! > > If you allow > > > > Dispatcher dispatcher; > > > > SimpleSoundServer server("global:Arts_SimpleSoundServer"); > > server.play("/var/share/foo.wav"); > > > > you will have the problem to see whether the server is really connected. > > Perhaps a server._error() could solve that problem. (Or server::isNull() > > as below). > > I like the server::isNull() solution, so I'll implement it ASAP. It's true that > error detection was really missing, and I didn't want a global error() > function. What is still not available is the Object::_error() function, which tells you whether a communication error occured. While ::isNull() can only occur when you assigned a null reference, ::_error() can occur anytime for remote objects (for instance if the remote server crashes), but is non-destructive. That means the operations you perform on an object with an _error() will not do anything. But the main problem seems to be that most functionality offered by Object is still not properly available for new style api. (Look at object.cc a bit). > I was about to implement the 'default' keyword as well, for default streams. > But they would be usable only using the 'connect' function, and any > machine-generated code not use it. > Do you want the default streams at a lower level, or do you assume tat > artsbuilder won't need the default facility? Would be nice if artsbuilder would at least "see" which ports are default, so that artsbuilder can act accordingly. For instance SynthModule (or Object) could have a readonly sequence _defaultPorts; argument, which could contain the default ports. > P.S: I couldn't make the current cvs helloserver/client work. It 'cannot > connect to the object'. This is probably my bug. Cu.. Stefan