Re: gEDA-user: External attribute read/write - how?
On Oct 22, 2008, at 7:31 PM, John Doty wrote: > > On Oct 22, 2008, at 10:01 AM, Peter TB Brett wrote: > >> On Wednesday 22 October 2008 16:36:47 Frank Miles wrote: >>> While a geda-newbie, over the years I've developed a set of >>> programs which >>> use a (Postgresql-based) database to update and error check >>> schematics >>> originating in a DOS-based OrCAD. I would like to have similar >>> capabilities in gschem/pcb. A key requirement is to be able to >>> read and >>> write component information (attributes) by external programs. >>> >>> ** Where/how can an external program read and/or write component >>> attributes?? ** >>> >> >> Your best bet is probably either: >> >> (1) Link against libgeda, or >> >> (2) Process the (pretty straightforward) file format yourself. >> > > or > > (3) write a gnetlist back end (not as hard as it looks): gnetlist is > effectively the tool for libgeda scripting. or (4) use Parse:GEDA:Gschem to read/modify/write attributes with a perl program on the model of demo/demo_geda-usch.pl included in the package. I am in the process of collecting a wish-lists about AML/PLM interaction in an effort to build and adapt such tool for broader audience for update and error check of schematics. Anyone interested please speak-up. Thanks, _jP ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
Thanks to everyone for their ideas for reading and writing component attributes. Unfortunately this may take some time (being eternally overloaded and unfamiliar with gaf code), but I have a strong interest in making something work. What form this takes is still to-be-determined. Complicating this is the need to have this work for hierarchical schematics, all the more since the gschem file spec seems to predate (i.e. not include) hierarchical info. Using libgeda was my initial guess as the best approach - though with a minor bit of investigation it seems harder to use (by an external program), and possibly less stable than simply parsing the sch file[s]. Using gnetlist hadn't occurred to me - I wasn't previously aware of its back- annotation capability. Unfortunately (at least based on the current docs) this seems limited to reference designator changes, which is clearly insufficient. Definitely worth looking at, though... thanks for pushing this, I'll have to see how difficult it would be to expand its capabilities. Generating my own sch reader/writer is still a possibility, though I'd rather not re-invent if possible. Again, thanks to everyone for their ideas. Frank Miles ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
Frank, First, there is the geda library libgeda. libgeda more or less defines the internal data structures and many of the methods for controling these data structures. However, libgeda is somewhat convoluted. It would be possible to write an application that makes use of libgeda and then extends it by including some sort of externally expossed api. Another option would be to have an external application that has access to your postgres database write a series of gschem scripts and run them as a batch against gnetlist. Another option would be to have an external application that has access to your postgres database connect to gnetlist and run gnetlist in interactive mode but have your new application take over the standard input/output. The same can be done against my modified version. Steve Meier Frank Miles wrote: > While a geda-newbie, over the years I've developed a set of programs which > use a (Postgresql-based) database to update and error check schematics > originating > in a DOS-based OrCAD. I would like to have similar capabilities in > gschem/pcb. > A key requirement is to be able to read and write component information > (attributes) > by external programs. > > ** Where/how can an external program read and/or write component attributes?? > ** > > I've done a moderate search in the geda documentation to find suitable > hooks/API/ > other mechanism which would allow this. doesn't do it - it provides > a nice mechanism for hand-entry, but doesn't (in my quick check) seem to > provide > any mechanism for program control. > > If anyone can provide pointers to the documents that I have sloppily > overlooked, > I'd appreciate it. Thanks! > > Frank Miles > > > ___ > geda-user mailing list > geda-user@moria.seul.org > http://www.seul.org/cgi-bin/mailman/listinfo/geda-user > > ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
On Oct 22, 2008, at 11:58 AM, al davis wrote: > On Wednesday 22 October 2008, John Doty wrote: >> (3) write a gnetlist back end (not as hard as it looks): >> gnetlist is effectively the tool for libgeda scripting. > > sorry he needs to go the other way. Hmm. Where's the barrier to mucking with the data structures and writing them back out from gnetlist? John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ [EMAIL PROTECTED] ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
On Wednesday 22 October 2008, John Doty wrote: > (3) write a gnetlist back end (not as hard as it looks): > gnetlist is effectively the tool for libgeda scripting. sorry he needs to go the other way. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
On Oct 22, 2008, at 10:01 AM, Peter TB Brett wrote: > On Wednesday 22 October 2008 16:36:47 Frank Miles wrote: >> While a geda-newbie, over the years I've developed a set of >> programs which >> use a (Postgresql-based) database to update and error check >> schematics >> originating in a DOS-based OrCAD. I would like to have similar >> capabilities in gschem/pcb. A key requirement is to be able to >> read and >> write component information (attributes) by external programs. >> >> ** Where/how can an external program read and/or write component >> attributes?? ** >> > > Your best bet is probably either: > > (1) Link against libgeda, or > > (2) Process the (pretty straightforward) file format yourself. > or (3) write a gnetlist back end (not as hard as it looks): gnetlist is effectively the tool for libgeda scripting. John Doty Noqsi Aerospace, Ltd. http://www.noqsi.com/ [EMAIL PROTECTED] ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
I'd like to second Franks request. Our company has an established internal parts database (mysql) from which I'd like to be able to use to stuff attributes with. I've looked at the raw schematic file format and it appears to be straight forward (except for auto placement on the schematic of the hidden text). Like gattrib, I see this database-attrib tool as a separate application. What functionality does libgeda possess toward this application that would compel me to use it? Some simple attrib parsing components? Thanks On Wed, 2008-10-22 at 17:01 +0100, Peter TB Brett wrote: > On Wednesday 22 October 2008 16:36:47 Frank Miles wrote: > > While a geda-newbie, over the years I've developed a set of programs which > > use a (Postgresql-based) database to update and error check schematics > > originating in a DOS-based OrCAD. I would like to have similar > > capabilities in gschem/pcb. A key requirement is to be able to read and > > write component information (attributes) by external programs. > > > > ** Where/how can an external program read and/or write component > > attributes?? ** > > > > Your best bet is probably either: > > (1) Link against libgeda, or > > (2) Process the (pretty straightforward) file format yourself. > >Peter > > > > ___ > geda-user mailing list > geda-user@moria.seul.org > http://www.seul.org/cgi-bin/mailman/listinfo/geda-user -- Mike home of the USB-Accelerometer http://www.gcdataconcepts.com/xlr8r-1.html ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
Re: gEDA-user: External attribute read/write - how?
On Wednesday 22 October 2008 16:36:47 Frank Miles wrote: > While a geda-newbie, over the years I've developed a set of programs which > use a (Postgresql-based) database to update and error check schematics > originating in a DOS-based OrCAD. I would like to have similar > capabilities in gschem/pcb. A key requirement is to be able to read and > write component information (attributes) by external programs. > > ** Where/how can an external program read and/or write component > attributes?? ** > Your best bet is probably either: (1) Link against libgeda, or (2) Process the (pretty straightforward) file format yourself. Peter -- Peter Brett Electronic Systems Engineer Integral Informatics Ltd signature.asc Description: This is a digitally signed message part. ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
gEDA-user: External attribute read/write - how?
While a geda-newbie, over the years I've developed a set of programs which use a (Postgresql-based) database to update and error check schematics originating in a DOS-based OrCAD. I would like to have similar capabilities in gschem/pcb. A key requirement is to be able to read and write component information (attributes) by external programs. ** Where/how can an external program read and/or write component attributes?? ** I've done a moderate search in the geda documentation to find suitable hooks/API/ other mechanism which would allow this. doesn't do it - it provides a nice mechanism for hand-entry, but doesn't (in my quick check) seem to provide any mechanism for program control. If anyone can provide pointers to the documents that I have sloppily overlooked, I'd appreciate it. Thanks! Frank Miles ___ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user