Commit Graph

106 Commits

Author SHA1 Message Date
Jon Evans 019f63cd95 Don't merge subgraphs by matching sheet pin names 2019-05-12 18:41:04 -04:00
Jon Evans 1de5b83d82 Promote net names to higher in hierarchy when possible 2019-05-07 21:59:36 -04:00
Jon Evans 81993eef83 Ensure bus member links get updated in hierarchical situations 2019-05-07 21:31:53 -04:00
Jon Evans 3d3c280f22 Fix hierarchical linking if parent sheet has a weak driver 2019-05-07 21:31:53 -04:00
Jon Evans 316be464ab Handle higher-priority connection drivers located in subsheets
Fixes: lp:1827850
* https://bugs.launchpad.net/kicad/+bug/1827850
2019-05-06 22:09:05 -04:00
Jon Evans 09c9db472e Properly handle buses that have been linked by net wires only
Fixes: lp:1825532
* https://bugs.launchpad.net/kicad/+bug/1825532
2019-05-05 19:48:55 -04:00
Jon Evans e9eacbc91c Ensure subgraphs with multiple labels get sorted 2019-05-05 19:09:05 -04:00
Jon Evans 019a731e03 Back-propagate from child sheets when two parents point to one child 2019-05-05 16:05:36 -04:00
Jon Evans 6d918ea1f1 A few fixes and refactors to connectivity propagation 2019-05-05 00:03:58 -04:00
Jon Evans 2f2d48938e Ensure connection sheet is properly reset at reinit time 2019-05-04 22:23:35 -04:00
Jon Evans efa0c97da9 Make sure net name prefixes carry through to netlist 2019-05-01 20:48:27 -04:00
Jon Evans 4efed8a4dd Ensure global labels get flagged as lonely in all circumstances
Fixes: lp:1827214
* https://bugs.launchpad.net/kicad/+bug/1827214
2019-05-01 20:15:21 -04:00
Jon Evans a5a2152ff4 Cache subgraphs by sheet path 2019-04-29 19:58:02 -04:00
Jon Evans c054944d67 Set real-time connectivity to on by default with a safety valve 2019-04-29 18:59:32 -04:00
Jon Evans 0ce32f7be1 Remove UpdatePins call from connectivity calculation 2019-04-25 15:32:51 -04:00
Jon Evans 098102220e Fix detection of lonely local labels 2019-04-25 15:31:44 -04:00
Jon Evans f0376f1379 Improve ERC checking of labels
Fixes: lp:1824629
* https://bugs.launchpad.net/kicad/+bug/1824629
2019-04-25 15:10:39 -04:00
Jon Evans e06d37090a A few connectivity performance tweaks 2019-04-25 00:37:10 -04:00
Jon Evans ed27c50692 Improve handling of non-unique connections 2019-04-24 23:47:57 -04:00
Jon Evans ff6a8cd537 Revert "Remove UpdatePins call from connectivity calculation"
This reverts commit b351e70d13.

Causes crashes on entering subsheets; don't have time to debug yet
2019-04-22 23:31:11 -04:00
Jon Evans b351e70d13 Remove UpdatePins call from connectivity calculation 2019-04-22 22:49:24 -04:00
Jeff Young 5e2cf51309 Improve robustness of SCH_PIN storage architecture.
In particular, allow short-term storage of pointers to SCH_PINs.
2019-04-22 11:19:43 +01:00
Jon Evans e2c12d8c25 Overhaul connectivity neighbor and global connection processing 2019-04-21 19:10:44 -04:00
Jon Evans a92bb94612 Ignore multiple identical bus labels
Fixes: lp:1825560
* https://bugs.launchpad.net/kicad/+bug/1825560
2019-04-19 22:03:22 -04:00
Jeff Young 460909ea9a Move click-to-place tools to modern toolset. 2019-04-16 16:20:52 +01:00
jean-pierre charras 2529346940 Some fixes for I18N. Mainly do not translate debug messages or strings giving only a print format (like "%d"). 2019-04-13 10:12:24 +02:00
Jon Evans c1ee395303 Don't propagate secondary connections with the same name 2019-04-12 09:26:07 -04:00
Jon Evans 6ff1919ae0 Fix subgraph neighbor calculation
Subgraphs are not in any particular order so the entire set must be
scanned, not starting at subgraph_it + 1
2019-04-12 00:23:52 -04:00
Jon Evans 49d8c29608 Fix a few issues with global buses 2019-04-11 23:38:32 -04:00
Jon Evans df600fc1a2 Fix a few ERC issues with no-connects and power pins
Fixes: lp:1824359
* https://bugs.launchpad.net/kicad/+bug/1824359
2019-04-11 21:24:39 -04:00
Seth Hillbrand 8c9244e677 Revert "eeschema: Connectivity threading"
This reverts commit 1a031e771f.

Some nets broken in commit.
2019-04-10 20:08:42 -07:00
Seth Hillbrand e28c937a5c Limit number of subgraph checks
Candidate subgraphs only need to be checked once, so start the iteration
from the next element in the driver vector
2019-04-10 16:40:24 -07:00
Seth Hillbrand 1a031e771f eeschema: Connectivity threading
This threads the first step (update item) in the connectivity routine.
Also eliminates the duplicate call for multiple copies of the same
sheet.
2019-04-10 15:04:22 -07:00
Jon Evans 105520b235 Fix neighbor detection candidate logic 2019-04-10 00:45:41 -04:00
Seth Hillbrand a0981d06a7 Remove std:: aliasing 2019-04-09 21:16:05 -07:00
Seth Hillbrand 9ef442b3a3 eeschema connectivity - Adjust performance in init
This allow single init for map structures, improving first-run
performance.
2019-04-09 21:00:11 -07:00
Seth Hillbrand 86d32fa34d CONNECTION_GRAPH: Performance mods
Reduce loop count and pre-set the needed vectors.  Also thread the
dangling ends calculation on a per-sheet basis.
2019-04-09 21:09:48 -04:00
Jon Evans bd487d2c25 Rework logic for linking local subgraphs together 2019-04-07 23:54:47 -04:00
Jon Evans c07de84c05 Suppress false ERC warnings for invisible power pins 2019-04-07 23:54:47 -04:00
Jeff Young 30f7d6a2c1 Clean up some translation issues.
(As in coordinate translation, not I18N.)
2019-04-05 11:42:45 +01:00
Jon Evans ec2c571abb Fix merging of subgraphs with multiple labels 2019-04-03 23:15:45 -04:00
Jon Evans ff8b7cc6c1 Fix SCH_PIN location calculation 2019-04-03 23:15:22 -04:00
Jon Evans 99e57724e6 Hierarchical ports count as strong drivers 2019-04-03 22:58:14 -04:00
Jon Evans 5a0944e9a0 Don't de-conflict subgraphs across sheets 2019-04-03 22:58:14 -04:00
Jon Evans d5990100e1 Promote locally-labeled nets to global when tied to global buses
Fixes: lp:1822964
* https://bugs.launchpad.net/kicad/+bug/1822964
2019-04-03 22:58:14 -04:00
Jeff Young 3ace73fbdd Fold various SCH pin shadow data structures into SCH_PIN. 2019-04-03 10:18:11 +01:00
Jon Evans 8a9b82c2a2 Switch CONNECTION_GRAPH to wxLogTrace 2019-04-02 22:58:11 -04:00
Jon Evans 3eef4bceac Don't assert unnecessarily when collapsing power ports
See lp:1822678
2019-04-02 11:38:35 -04:00
Jon Evans 8b30cd4389 Fix edge case crash when processing invisible power pins 2019-04-01 20:21:50 -04:00
Jon Evans 2466b4363d Cache subgraph driver connections for improved performance 2019-03-31 19:58:15 -04:00
Jon Evans f1882f333e Don't call OnModify() before placing new parts
Remove unnecessary calls to TestDanglingEnds()

Disable real-time connectivity updates for now

Revert "Remove unnecessary calls to TestDanglingEnds()"

This reverts commit d93e3894f2bcd6239862ac9eae0cb2f994b9d52a.

Remove debug code
2019-03-31 19:58:08 -04:00
Jon Evans babdc9fd7b Improve naming of weak subgraphs 2019-03-31 19:57:06 -04:00
Jon Evans b687a178ef Suppress ERC warnings about multiple labels if the text is the same 2019-03-31 19:56:47 -04:00
Jon Evans e98debfeb2 Fix a few issues with hierarchical propagation 2019-03-31 19:56:07 -04:00
Jon Evans 7b9f186464 Fix false assert when CONNECTIVITY_DEBUG is enabled 2019-03-31 19:55:49 -04:00
Jon Evans 83c7e7fc65 New connectivity algorithm and bus upgrades
Bus upgrades: core new connectivity code

Bus upgrades: eeschema integration and modifications

Bus upgrades: eeschema dialogs

Bus upgrades: netlist export

Bus upgrades: file format changes
2019-03-31 19:53:41 -04:00