Hi, @Ales: Thanks for the statement, alone the certainty helped me a lot, really.
@Steve: Thank you very much for your interest (sorry for my late reply, I've been experiencing trouble with my email account). I am still very interested in a non standard netlister, although I already solved my problem another way (see below). The whole matter is a bit tricky to describe, since I'm not dealing with "normal" electric circuits, but I am using gEDA for a special task roughly located in the area of dataflow programming. I think it's best I mail you some more details, because I don't want to annoy the whole mailing list here. Unfortunately I lost all my gEDA-user mails due to the mentioned trouble with my email account, and email addresses are hidden in the web archive, so could you please send me an email? Oliver --------------------------------------------------------------------------------- /** You may stop reading here, unless you're interested in a solution of the very same problem **/ However, let me give another short overview of my problem, so that people might understand the below solution better: As should be clear by now, I've got a hierarchical design, and there are "subsheet symbols" that represent a certain subsheet by carrying a "source" attribute pointing to the subsheet .sch file. (Keep in mind that I am dealing with a special task, not standard electric circuits, so don't wonder _why_ I want to do something. Explaining that would require a very, very long discussion, believe me.) 1) I need to get the attributes attached to the subsheet symbol, attributes like "source" and some special ones specific to my task. This can be done with hierarchy traversal disabled, because that way the netlister backend can "see" the subsheet symbols and therefore query attributes. 2) On the other hand, I need to process all the components, the ones in the subsheet as well, as possible with hierarchy traversal on. And I was hoping I could combine both somehow, so that I could do all the work straightforward in one single call of the gnetlister. But as Ales confirmed, this is not possible. => Here goes my solution: I disabled the hierarchy traversal (can be done in /etc/gEDA/system-gnetlistrc or at runtime with a little modification, see: http://archives.seul.org/geda/user/Nov-2008/msg00489.html). and processed the subsheets myself, by recursively calling the gnetlister with scheme's (actually guile's) OS interface. I could then read the (temporary) output files and aggregate them all together step by step on the way up returning form the recursive calls. in pseudocode: for each subsheet do recursive call of gnetlister on sub sheet read produced output file and append it to current sheet's outfile od process components in current sheet and append output to outfile This works well for me, I can do all I need: getting the subsheet symbols' attributes on each level since hierarchy is disabled _and_ processing all the subsheet components later in each recursive call. (Of course, for the pin interface between sub sheet and higher level sheet, you have to use some sort of convention, because in the higer level sheet you only see the pins of the sub sheet symbol, and inside the recursive call for the according sub sheet you only see the INPUT / OUPUT devices. In other words you can't simply move a step up or down the hierarchy. I used the convention <pinlabel of the sub sheet symbol> := <INPUT/OUTPUT refdes>.) Drawbacks are: - this produces an outfile for each subsheet not just one for the top level (I know they could be deleted after reading, but still...) - and memory performance is probably not the best due to the recursive calls. Although this doesn't really matter as long as there isn't a horrendous amount of subsheets, still the shell output of gnetlist looks a bit obfruscated. If anyone needs more information on this: you're welcome to email me about it. _______________________________________________ geda-user mailing list [email protected] http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

