Update wiki pages
[geda-gaf.git] / docs / wiki / geda-pcb_funding_sow-fwdann_ideas.html
blob3fa253cd2b453bdf16e4d282e38beb3ffaa96e3b
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html>
4 <head>
5 <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
6 <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
7 <link rel="stylesheet" media="print" type="text/css" href="./print.css" />
9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
10 </head>
11 <body>
12 <a href=.>start</a>&nbsp;=>&nbsp;<a href=geda-pcb_funding_sow.html>pcb_funding_sow</a></br>
14 <h1 class="sectionedit1" id="pcb_sowforward_annotationideas_commentary_and_examples_from_users">PCB SoW: Forward Annotation: Ideas, commentary, and examples from users</h1>
15 <div class="level1">
17 <p>
18 <em>Anyone with any ideas or commentary about how this task should be completed may add
19 them here. Ideas about the details behind the implementation, too. Please refrain from deleting or significantly changing the meaning of someone else&#039;s entry.</em>
20 </p>
22 </div>
23 <!-- EDIT1 SECTION "PCB SoW: Forward Annotation: Ideas, commentary, and examples from users" [1-337] -->
24 <h2 class="sectionedit2" id="dj_s_implementation_ideas">DJ&#039;s Implementation Ideas</h2>
25 <div class="level2">
27 <p>
28 This is what I&#039;m thinking for the forward annotation (gsch2pcb) design:
29 </p>
31 <p>
32 The PCB has a list of schematics that it gets info from. Do we need
33 path support, or is full-paths (or relative to the pcb) ok?
34 Wildcards? Anyway, the list of schematics is stored in the .pcb file
35 somehow. The <abbr title="Graphical User Interface">GUI</abbr> needs a way to manage these, too.
36 </p>
38 <p>
39 When the user asks, PCB uses the list of schematics to run a gnetlist
40 command with my new backend, passing the list of schematics. The
41 gnetlist spits out a list of actions, which pcb runs. These actions
42 update the netlist, add any missing elements, and remove any
43 appropriate elements. Elements which need new footprints are updated
44 (magically! in place! we hope ;).
45 </p>
47 <p>
48 Also, some additional attributes will be propogated to elements, like
49 vendor, vendor_part_number, etc.
50 </p>
52 <p>
53 If the import is part of a “new board” step, we place the parts and
54 disperse them, optimize the rats nest, etc. No problem there.
55 </p>
57 <p>
58 What do we do with new elements if it&#039;s just an update? Eventually,
59 I&#039;d like to have some separate container for “unplaced elements” but I
60 mean, what do we do for now? I&#039;m wondering if disperse or autoplace
61 is smart enough to do something useful if we place the parts and
62 select them, on a partially laid out board.
63 </p>
65 <p>
66 I think this is enough information in the .pcb file that we can get
67 rid of gsch2pcb and the “project” file it uses.
68 </p>
70 <p>
71 It does mean that the pcb cares which schematics go with it, but the
72 schematics don&#039;t care which pcb they go with. Schematics can be
73 reused/shared, boards generally can&#039;t.
74 </p>
76 </div>
77 <!-- EDIT2 SECTION "DJ's Implementation Ideas" [338-] --></body>
78 </html>