On Thursday June 26 2003 10:42, David Boddie wrote: > On Thursday 26 June 2003 01:40, Jim Bublitz wrote: > > On Wednesday June 25 2003 16:43, David Boddie wrote: > > > Is it possible to create IOSlaves using Python and PyKDE? > > [...] > > > I'm not familiar with the actual mechanics of the slave > > itself - I'd look for a documented KDE example with C++ code > > and work from that if possible.
> There are quite a few small examples in the kioslave > subdirectory in kdebase, including the minimal "about" slave. > As usual, a direct translation reveals some differences > between the way these things work in different environments. There are a couple of tutorials at: http://www.heise.de/ct/english/01/05/242/ http://developer.kde.org/documentation/design/kde/ioslaves/framework.html http://developer.kde.org/documentation/design/kde/ioslaves/introduction.html The second is older and may be a little obsolete. If they don't help, they should at least give you an idea where to dig through the KDE source code (eg KIO::Job, KIO::Scheduler). The KIO::Scheduler docs also have a little more info. (I assume you have the KDE Libs Class Ref - if not you should get a copy. You can find it on www.kde.org under Documentation in the Developers sections). KIO::Job is in jobclasses.[h, cpp], along with a large number of KIO::Job subclasses. > All the IOSlaves I've seen (in the kdebase/kioslaves > directory) all appear to compile to .so libraries with > associated .la linking files. I don't know how flexible the > mechanism is for loading IOSlaves so it may be possible to > substitute an executable there instead; a .py file won't work, > it seems. I'm not sure if there's some sort of registration procedure. Just from the bits and pieces I've read, there are limits on the number of slaves, and they can be re-used. There does appear to be a requirement for a 'Protocol" file. It appears there are several different ways to access slaves, and some of this may be mixing up the different methods. > I link in the libkdecorecmodule and libkiocmodule at compile > time and they appear to be able to find what they need at run > time. Certainly, I don't experience ImportErrors as a result > of missing libraries or anything of that nature. That would seem to indicate you DON'T have a linking problem (like needing to expose symbols globally or some such, which is the main problem I've had with similar stuff). > I may have to send you what I've written but it'll require > modifying to work on another system because I've not used > autoconf for the project (I was just prototyping). I'm really short of time at the moment and not very knowledgeable about this anyway. A couple things I would suggest: a. google on "IOSlave" - it turns up some links both to docs and to people who have written IOSlaves. Might be worth contacting some of them to see if they can help. I've generally found people helpful for inquiries like this. Even if you have to get it working in C++ first, it might be worthwhile. b. Try some of the KDE lists - I'm not sure which (and there are quite a few). You can get to them via www.kde.org and then look around the "Developers" section. Despite the fact I'm not being of much help, I'd appreciate if you could post any successes or info to this list as I'm sure it will come up again in the future. I'd also like to be sure that PyKDE is providing everything needed to handle slaves. It seems like a nice application to do in Python. > I've since tried experimenting with DCOP and Python in the > hope that I can use an alternative approach to my problem > should this one fail. I'm currently running into issues with > QDataStream, but that's another story. _______________________________________________ PyKDE mailing list [EMAIL PROTECTED] http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
