gEDA-dev: IPC, HIDs and main loops
John Griessen
john_g at cibolo.com
Tue Oct 3 10:20:16 EDT 2006
Peter TB Brett wrote:
> Hi folks,
>
> One of the little things that Peter C and I are working on is a HID that
> adds "proper" IPC support to PCB.
>
> We're having some problems though -- the recommended C bindings for D-Bus
> require GLib & GObject, and, more importantly, they require a GLib main loop.
> There is a low-level C library, but that's meant only to be used when
> implementing a higher-level binding, and not only would using that require
> writing a couple of thousand lines of code unmaintainable by anyone but a
> D-Bus guru, but we would also have great difficulty ensuring that it works
> with all the other various D-Bus bindings
-----------
This seems like solving a too-hard problem. Engineering tools don't need to be
able to communicate with mainstream office automation apps so well as all that
effort. Also, from the teaching viewpoint, if you make an engineering lab
exercise seem so mistake proof as to prevent overwriting files that two people
are both trying to edit without making their own copy and arranging their data
so they know where it is, you will be graduating disorganized helpless
engineers! Engineering requires a constant vigilance for time wasting mistakes
always since it is innovation. New ground always has unknowns to be vigilant
for as they pop up.
Sockets seem low overhead, if not server based. A specific solution with pipes
will not allow unknown new apps to communicate -- it will require new code for
any new communication, and why not? The new code will be small and much easier
to maintain than adding a main loop to break out of, and more dependencies and
more manuals to read to comply with DBUS gurus that want a following.
Can a socket to gschem be created with the idea that designs are top down and
gschem is the controlling program? Then any new additions like pcb
communicating to another pcb would go through gschem only. If gattrib becomes
able to forward annotate instantly, it would do so through gschem, etc.
I think a more reasonable discussion right now would be about the form of a
project file that connects several schematics, layouts, simulations together,
and how gschem, gsch2pcb, pcb, gattrib would use it.
More information about the geda-dev
mailing list