Matthias Koefferlein
060abc056e
Fixed a memory corruption issue from the Netlist destructor.
2018-12-31 17:33:14 +01:00
Matthias Koefferlein
37d8f0bfca
Added hierarchical progress reporting for more detailed progress.
2018-12-31 16:41:32 +01:00
Matthias Koefferlein
923e4075da
Added an intrinsic linked list implementation.
2018-12-31 15:25:45 +01:00
Matthias Koefferlein
509de593e6
Removed a compiler warning.
2018-12-31 01:42:55 +01:00
Matthias Koefferlein
0cc340cf4f
Once more being nice to picky compilers ...
2018-12-31 01:09:13 +01:00
Matthias Koefferlein
b75125f7c2
Please picky compilers (once more) ..
2018-12-31 00:50:43 +01:00
Matthias Koefferlein
e3279b754b
Please picky compilers ..
2018-12-31 00:00:15 +01:00
Matthias Köfferlein
d726afb189
Merge pull request #215 from lightwave-lab/bugfix/technology-load
...
Bugfix: gsi method db Technology.load pointing to save
2018-12-30 22:57:58 +01:00
Matthias Koefferlein
9c607d7663
Added a first version of the layout to netlist extraction feature
...
The main entry point is RBA::LayoutToNetlist which is the
GSI binding for the layout to netlist extractor. For a first
impression about the abilities of this extractor see the
Ruby tests in testdata/ruby/dbLayoutToNetlist.rb.
The framework itself consists of many classes, specifically
- RBA::Netlist for the netlist representation
- RBA::DeviceClass and superclasses (e.g. RBA::DeviceClassResistor and
RBA::DeviceClassMOS3Transistor) for the description of devices.
- RBA::DeviceExtractor and superclasses (i.e. RBA::DeviceExtractorMOS3Transistor or
the generic RBA::GenericDeviceExtractor) for the implementation of the
device extraction.
- RBA::Connectivity for the description of inter- and intra-layer connections.
2018-12-30 22:43:56 +01:00
Matthias Koefferlein
f989a85642
WIP: introduced Circuit::is_external_net
2018-12-30 18:44:30 +01:00
Matthias Koefferlein
72a140957d
WIP: added test for recursive net shape retrieval
2018-12-30 18:22:45 +01:00
Matthias Koefferlein
16a2b1982d
WIP: added one more level of abstraction to layout-to-netlist extraction (db::LayoutToNetlist) for easier use.
2018-12-30 17:53:46 +01:00
Matthias Koefferlein
b512f628bc
WIP: specific device extractor and GSI binding.
2018-12-30 14:54:59 +01:00
Matthias Koefferlein
ec7ab8e01d
WIP: moved code.
2018-12-30 14:15:58 +01:00
Matthias Koefferlein
c841b84867
WIP: some minor refactoring.
2018-12-30 13:37:52 +01:00
Matthias Koefferlein
a787204e77
WIP: connect and disconnect terminal by name in GSI
2018-12-30 13:28:11 +01:00
Matthias Koefferlein
293c6f496e
WIP: more query functions for netlist classes (i.e. net by name, device by name etc.), some refactoring, GSI bindings, tests.
2018-12-30 13:00:03 +01:00
Matthias Koefferlein
425acda31a
WIP: GSI binding of device extractor classes.
2018-12-30 11:32:33 +01:00
Matthias Koefferlein
c571535e55
WIP: standard device classes, added GSI binding plus tests.
2018-12-29 23:48:31 +01:00
Matthias Koefferlein
44b5b2742e
WIP: tests for specialized device classes and device combination
2018-12-29 22:58:29 +01:00
Matthias Koefferlein
45b35f3aae
WIP: to_string for netlist, tests, some bugfixes on device combination.
2018-12-29 22:18:58 +01:00
Matthias Koefferlein
edbafae43e
WIP: make top level pins for named nets and netlist purging. Tests.
2018-12-29 20:50:35 +01:00
Matthias Koefferlein
54adb84e27
WIP: locking of netlist for better performance.
2018-12-29 01:04:48 +01:00
Matthias Koefferlein
d57ede441c
WIP: netlist topology - children, parents, top-down and bottom-up iteration.
2018-12-29 00:48:28 +01:00
Matthias Koefferlein
2f48479838
WIP: a bit of simplification, renaming of methods, parents for subcircuits, devices. References for circuits pointing to subcircuits.
2018-12-28 22:51:11 +01:00
Matthias Koefferlein
a5b9cbfe5b
WIP: device extractor now declares it's layers, passing layers by name supported now.
2018-12-28 01:53:27 +01:00
Matthias Koefferlein
c665d6aceb
WIP: introduced error messaging for device extractor.
2018-12-28 01:06:17 +01:00
Thomas Ferreira de Lima
fcc05d5b9d
Bugfix: gsi method db Technology.load pointing to save
2018-12-27 16:26:46 -05:00
Matthias Koefferlein
411c18cdb4
WIP: also test parameter extraction in device extraction test.
2018-12-27 21:06:35 +01:00
Matthias Koefferlein
473c90f99d
WIP: some refactoring: splitting of big methods, documentation
2018-12-27 19:06:16 +01:00
Matthias Koefferlein
1c41c43b95
WIP: rename netlist extractor test.
2018-12-27 10:58:48 +01:00
Matthias Koefferlein
d6473b4d84
WIP: moved netlist extractor into right place.
2018-12-27 10:57:46 +01:00
Matthias Koefferlein
8b2902c31b
WIP: introduced expanded net name
2018-12-27 10:43:25 +01:00
Matthias Koefferlein
639b0026d3
WIP: some refactoring for better consistency and easier usage of the device extractor.
2018-12-27 10:33:08 +01:00
Matthias Koefferlein
bfae347ffb
WIP: renaming sub_circuit->subcircuit for consistency
2018-12-27 02:02:17 +01:00
Matthias Koefferlein
f0f620b1cd
WIP: added subcircuit IDs for easier referencing.
2018-12-27 01:58:34 +01:00
Matthias Koefferlein
795a77f7ce
WIP: take care of the property name used for device terminal annotation.
2018-12-27 01:39:28 +01:00
Matthias Koefferlein
62ffcd38e6
WIP: refactoring of the netlist property thing. Now it's internal and there is only the device terminal property. The property also does not store device pointers but just IDs
2018-12-27 01:27:58 +01:00
Matthias Koefferlein
f5071d3254
WIP: some more refactoring.
2018-12-27 01:03:52 +01:00
Matthias Koefferlein
2171b98bd8
WIP: introduced device IDs
2018-12-27 00:59:44 +01:00
Matthias Koefferlein
724d1bc255
WIP: some small refactoring.
2018-12-27 00:32:40 +01:00
Matthias Koefferlein
7e4868dcf8
WIP: some small refactoring.
2018-12-27 00:28:44 +01:00
Matthias Koefferlein
8f568641e0
WIP: some refactoring, added label recognition to net extraction, test enhancements.
2018-12-27 00:20:21 +01:00
Matthias Koefferlein
024907e7ef
WIP: first test for device extraction.
2018-12-26 10:02:34 +01:00
Matthias Koefferlein
1db5ad016c
WIP: added first tests for device extraction.
2018-12-26 00:39:46 +01:00
Matthias Koefferlein
f342bdd83a
WIP: added some convenience methods.
2018-12-26 00:39:34 +01:00
Matthias Koefferlein
ec65d293e3
WIP: moved some GSI specific methods into the C++ classes because they are of general use.
2018-12-26 00:38:35 +01:00
Matthias Koefferlein
bfc0e24d50
WIP: fixed some compiler warnings.
2018-12-26 00:36:34 +01:00
Matthias Koefferlein
5c18424c10
WIP: fixed a comment typo.
2018-12-26 00:36:19 +01:00
Matthias Koefferlein
c75a41a1a4
WIP: fixed verbosity of some output.
2018-12-26 00:34:57 +01:00
Matthias Koefferlein
88c60420d0
WIP: fixed verbosity of some output.
2018-12-26 00:34:34 +01:00
Matthias Koefferlein
195324295d
WIP: tests for new net predicates.
2018-12-25 20:56:08 +01:00
Matthias Koefferlein
3d9712c53a
WIP: implementation of device class and GSI bindings. Added some network attributes and predicates (is_floating, is_internal, pin_count, terminal_count)
2018-12-25 20:46:06 +01:00
Matthias Koefferlein
4f8416766c
WIP: renamed port -> terminal for devices. This is correct technical term. A port is a two-terminal entity.
2018-12-25 20:19:37 +01:00
Matthias Koefferlein
9c9d99da7c
WIP: introduced device combination support hints.
2018-12-25 19:45:34 +01:00
Matthias Koefferlein
a7a2eea905
WIP: MOS3 and MOS4 devices
2018-12-25 19:41:29 +01:00
Matthias Koefferlein
33e2fb8dc1
WIP: refinement of device extraction algorithm
2018-12-25 02:17:41 +01:00
Matthias Koefferlein
97a1abb73f
WIP: implementation of basic device classes, device extractor.
2018-12-25 02:02:18 +01:00
Matthias Koefferlein
792a420e23
WIP: purge_nets and combine_devices for db::Netlist, GSI bindings.
2018-12-25 00:25:07 +01:00
Matthias Koefferlein
d9b0b2f775
WIP: Ability to redefine device combination in Ruby (GenericDeviceClass)
2018-12-24 17:22:59 +01:00
Matthias Koefferlein
764667d8e8
WIP: added algorithm for combining devices - needs testing.
2018-12-24 16:55:22 +01:00
Matthias Koefferlein
e3b795e334
Unique ID of device class objects, netlist reference in device class.
2018-12-24 13:52:17 +01:00
Matthias Koefferlein
eb6b043c3b
Parameter values of db::Device/db::DeviceClass
2018-12-24 13:39:19 +01:00
Matthias Koefferlein
c5222c26e3
Added DevicePortProperty class with tests and GSI binding
2018-12-24 01:31:06 +01:00
Matthias Koefferlein
aa5e885215
Added Ruby tests for GSI binding of db::Netlist classes
2018-12-24 00:08:34 +01:00
Matthias Koefferlein
3c2c72d9ed
WIP: GSI binding of db::Netlist at al
2018-12-23 22:31:26 +01:00
Matthias Koefferlein
9a9482d7c7
Added netlist editing features.
2018-12-22 23:12:45 +01:00
Matthias Koefferlein
e51a3a9ed9
Dual netlist representation (nets attached to pins and ports).
2018-12-22 00:29:44 +01:00
Matthias Koefferlein
654afa3ec2
Upward references for db::Net and db::Circuit.
2018-12-21 22:13:37 +01:00
Matthias Koefferlein
83a38037e5
Added cluster_id property to db::Net
2018-12-21 21:53:48 +01:00
Matthias Koefferlein
80999475f4
Added trans and name attributes to db::SubCircuit
2018-12-21 21:47:27 +01:00
Matthias Koefferlein
4dd17c3cd4
WIP: added tests for dbNetlist classes.
2018-12-20 23:29:01 +01:00
Matthias Koefferlein
18346945df
WIP: some refactoring.
2018-12-20 22:11:20 +01:00
Thomas Ferreira de Lima
6b37e67de6
fixing pya module. adding tests
2018-12-20 16:10:55 -05:00
Matthias Koefferlein
d78a25efe4
WIP: new classes for netlist representation.
2018-12-19 23:41:39 +01:00
Matthias Koefferlein
2c4e84fdf2
WIP: netlist property framework
...
- NetlistProperty is the base class for objects that can
be attached to shapes for annotation
- First property type implemented: net name is a way
to annotate net names
2018-12-18 23:56:01 +01:00
Matthias Koefferlein
c10dfee984
Merge branch 'dvb' of https://github.com/klayoutmatthias/klayout into dvb
2018-12-17 20:31:34 +01:00
Matthias Koefferlein
7ceb4ed076
Fixed an issue with the deep region: the layout pointer is not a good key for the backannotation cache. So we better use the unique ID - a concept introduced herein.
2018-12-17 20:31:24 +01:00
Matthias Koefferlein
69d75e233d
Enabled build without qt, Ruby and Python
2018-12-16 23:50:34 +00:00
Matthias Koefferlein
31a9598c35
Merge branch 'master' of https://github.com/klayoutmatthias/klayout
2018-12-16 23:44:57 +01:00
Matthias Koefferlein
db3b1d8eee
Ported #209 fix to master.
2018-12-16 23:44:26 +01:00
Matthias Koefferlein
3ed9e63480
Fixed a typo
2018-12-16 23:39:45 +01:00
Matthias Koefferlein
b75681a333
Fixed #207 (integer rounding happens on text bias and spacing values for Basic.TEXT PCell)
2018-12-11 21:55:30 +01:00
Matthias Koefferlein
ef0e0d38c2
WIP: property collection in net clusters, more tests.
2018-12-09 23:24:32 +01:00
Matthias Koefferlein
eb8abaf5a5
Some refactoring of net processor
...
- introduced concept of root cluster
- recursive shape iterator for clusters
2018-12-09 00:54:08 +01:00
Matthias Koefferlein
df44c364ea
WIP: network processor: net backannotation into original hierarchy.
2018-12-08 01:55:02 +01:00
Matthias Koefferlein
6a2ddcda82
Net processor: Added timing, rearrangement as preparation for parallelization
2018-12-07 23:21:38 +01:00
Anthony J. Bentley
2bad812953
OpenBSD doesn't have sa_restorer.
2018-12-07 06:07:40 -07:00
Matthias Koefferlein
e894724605
Some more debugging and more test cases. Net processor starts getting stable ...
2018-12-05 23:14:06 +01:00
Matthias Koefferlein
6849a2723d
WIP: added test cases for multi-level cross-hierarchy interactions.
2018-12-04 23:33:04 +01:00
Matthias Koefferlein
10f7750a89
WIP: more tests, some debugging.
2018-12-04 23:21:19 +01:00
Matthias Koefferlein
37fad6da97
WIP: hier network processor - some debugging, more tests.
2018-12-04 22:30:18 +01:00
Matthias Koefferlein
42f153672b
WIP: proceed with debugging of hier network processor
2018-12-03 23:02:01 +01:00
Matthias Koefferlein
5a48ac3974
WIP: some refactoring, joining of clusters by child clusters. Needs testing.
2018-12-03 22:05:54 +01:00
Matthias Koefferlein
e8c86834cb
WIP: hier network - a first testcase.
2018-12-03 00:17:04 +01:00
Matthias Koefferlein
1e4b2b414e
WIP: built test bench
2018-12-02 23:58:47 +01:00
Matthias Koefferlein
7e36018356
WIP: hierarchical net clusters - some testing
2018-12-02 23:05:58 +01:00
Matthias Koefferlein
22651b83c0
WIP: hierarchical net clusters - needs testing
2018-12-02 22:39:53 +01:00
Matthias Koefferlein
0e4eab2dce
WIP: hierarchical net clusters.
2018-12-02 22:26:03 +01:00
Matthias Koefferlein
f7f9f4f1fc
WIP: hier network processor: local cluster set
2018-12-02 12:55:54 +01:00
Matthias Koefferlein
e918cc74b0
WIP: tests for cluster in hierarchical network processor.
2018-12-02 10:41:37 +01:00
Matthias Koefferlein
59d1aead59
WIP: new classes for hier network processor.
2018-12-02 01:30:56 +01:00
Matthias Koefferlein
3609bdda81
WIP: first steps for network processor.
2018-12-01 09:38:16 +01:00
Matthias Koefferlein
970f22960f
WIP: enabled tests in editable mode too.
2018-11-28 00:00:06 +01:00
Matthias Koefferlein
6e52c37a1e
WIP: Fixed another build issue (ambiguous overload)
2018-11-26 22:28:29 +01:00
Matthias Koefferlein
f57e7c734e
Merge remote-tracking branch 'remotes/origin/master' into dvb
2018-11-26 21:30:01 +01:00
Matthias Koefferlein
345ff27854
Fixed a small build issue (ambiguous parameters)
2018-11-26 21:29:09 +01:00
Matthias Koefferlein
a588751c27
Fixed a bug introduced with the plugin refactoring: some tool menu items were not functional.
2018-11-26 21:08:17 +01:00
Matthias Koefferlein
5c7cd02af3
Merge remote-tracking branch 'remotes/origin/pymod' into net-extract
2018-11-25 23:16:56 +01:00
Matthias Koefferlein
0352a450b7
Refined solution for #198
2018-11-25 22:43:13 +01:00
Matthias Koefferlein
643e58f856
Merged PR #199 into pymod branch
2018-11-24 00:53:23 +01:00
Matthias Koefferlein
72127a302d
Updated Python highlighter files and highlighter bugfix.
2018-11-23 07:20:55 +01:00
Matthias Koefferlein
f4b2a015dc
Fixed #198 (DXF contour stitching renders fuzzy polygons)
2018-11-22 22:19:46 +01:00
Matthias Koefferlein
9539e36bc9
Fixed #195
2018-11-22 22:19:37 +01:00
Matthias Koefferlein
7073a74aa5
WIP: More on deep regions & hier processor
...
- Splitting of shapes on output of booleans
- A bugfix: error happened when pulling intruders from second-next hier level
- Tests added
- Some TODO comments added
2018-11-22 01:26:03 +01:00
Matthias Koefferlein
06c11d0096
WIP: Deep region XOR implemented.
2018-11-21 00:32:14 +01:00
Matthias Koefferlein
712a390f52
WIP: added ref counting for deep shape layers and layouts
2018-11-21 00:17:14 +01:00
Matthias Koefferlein
edae71b0a8
0.25.5 to 0.25.6 delta ported to pymod
...
- Bugfix for klayoutmatthias/issue-191
- Consistent configuration for layout views
2018-11-18 23:54:41 +01:00
Matthias Koefferlein
a36cf6a2e5
Force relink of pymod/tl to trigger correct build for MSVC
2018-11-18 22:57:17 +01:00
Matthias Koefferlein
7ade9cf079
Added standard Python tests to pymod too
...
This will include the normal Python tests also
in pymod, hence aligning the test base for pymod
and pya.
This feature requires the pya compatibility module.
2018-11-18 22:42:13 +01:00
Matthias Koefferlein
e47584460b
Merge branch 'pymod-pyacompat' into pymod
2018-11-18 22:22:19 +01:00
Matthias Koefferlein
934bed7b94
Fixed #197 (reimplemented methods are not getting called)
2018-11-18 19:59:17 +01:00
Matthias Koefferlein
fc729fc830
WIP: DeepRegion::add implemented.
2018-11-18 09:58:10 +01:00
Matthias Koefferlein
cfa0e8431c
WIP: implemented AND/NOT in deep region, added tests.
2018-11-17 01:33:58 +01:00
Matthias Koefferlein
a438dfd6f0
WIP: deep region debugged, GSI binding, tests.
2018-11-17 00:16:13 +01:00
Matthias Koefferlein
f5cc8b6018
WIP: added DeepRegion
2018-11-16 01:11:28 +01:00
Matthias Koefferlein
f29fd3dfc6
WIP: moved hierarchical processor into db.
2018-11-15 23:41:44 +01:00
Matthias Koefferlein
04256a2753
WIP: fixed RecursiveShapeIterator unit tests.
2018-11-15 22:59:38 +01:00
Matthias Koefferlein
3f8825cfd1
WIP: Improved design of HierarchyBuilder, added tests.
2018-11-15 22:50:02 +01:00
Matthias Koefferlein
6f4988a764
WIP: first version hierarchy builder
2018-11-14 02:22:53 +01:00
Matthias Koefferlein
2bfccca462
WIP: enhanced recursive shape iterator's push mode.
2018-11-13 23:40:08 +01:00
Matthias Koefferlein
f346e70746
RecursiveShapeIterator now features a push mode
...
This will eventually enable catching a hierarchy
skeleton (with shapes) from a RecursiveShapeIterator.
2018-11-12 23:44:26 +01:00
Matthias Koefferlein
b192417809
Merge branch 'pymod' into net-extract
2018-11-10 22:42:48 +01:00
Matthias Koefferlein
c91f54569a
Provide GSI bindings for the new edge pair support
...
This affects Shapes and Shape. New methods from EdgePairs are added
and minor enhancements of Region and Edges. Ruby tests added
2018-11-10 22:41:40 +01:00
Matthias Koefferlein
255abc5534
Provided new explicit template instantiations required for DRC
2018-11-10 00:44:30 +01:00
Matthias Koefferlein
7a37da91e0
EdgePairs refactoring
...
- Uses a db::Shapes container
- Aligned with db::Edges and db::Region
- With original layer delegate
2018-11-10 00:07:53 +01:00
Matthias Koefferlein
8e19474095
Introduced edge pairs as valid shapes for db::Shapes
2018-11-09 22:59:26 +01:00
Matthias Koefferlein
b9b00a08b5
Many bug fixes after refactoring.
2018-11-09 01:14:22 +01:00
Matthias Koefferlein
ec638c87b4
Refactoring of Edges - compiles again.
2018-11-09 00:39:00 +01:00
Matthias Koefferlein
0a9ab32f81
WIP: fixed initialization code.
2018-11-07 23:08:52 +01:00
Matthias Koefferlein
de6045fdf0
Fixed an initialization issue.
2018-11-07 22:20:57 +01:00
Matthias Koefferlein
009492a2a6
Fixed a linker issue.
2018-11-07 22:19:05 +01:00
Matthias Koefferlein
8107e1bb51
Refactoring: separated sources for db::Region
2018-11-07 22:17:51 +01:00
Matthias Koefferlein
885a440089
Further refactoring: provide adressable polygons.
2018-11-07 02:44:15 +01:00
Matthias Koefferlein
9c92a9c72e
Region refactoring: many unit tests are passing again.
2018-11-07 00:45:29 +01:00
Matthias Koefferlein
e595c32fe1
WIP: made first unit tests functional again.
2018-11-06 00:51:39 +01:00
Matthias Koefferlein
f604d149b5
WIP: next part of region refactoring.
2018-11-05 00:32:04 +01:00
Matthias Koefferlein
7062c4acf5
WIP: next part of region refactoring.
2018-11-05 00:25:16 +01:00
Matthias Koefferlein
5a5051b0dd
WIP: second part of region refactoring.
2018-11-04 23:26:08 +01:00
Matthias Koefferlein
54945105ef
WIP: first part of region refactoring.
2018-11-04 22:56:08 +01:00
Matthias Koefferlein
17f53cf54e
WIP: some performance improvements, cronology debugging support (experimental)
2018-11-03 12:28:27 +01:00
Matthias Koefferlein
00a124ce64
Added pya compatibility module
2018-10-23 23:43:52 +02:00
Matthias Koefferlein
863144603c
Fixed MSVC builds ...
2018-10-22 23:48:15 +02:00
Matthias Koefferlein
58239650aa
Fixed pymod initialization for Python 2
...
Python 2 is a bit more picky with respect to
the correct name of the module. If passing "db"
to a module called dbcore, it will exit with
a SystemError.
2018-10-22 23:28:55 +02:00
Matthias Koefferlein
a25db86046
Fixed pymod.pri for Linux builds.
2018-10-22 21:25:53 +02:00
Matthias Koefferlein
b80ce12c12
Some refactoring to fix qmake-based pymod builds
...
- Unify structure of Python module sources so the pymod.pri can be used for all modules
- switch to tlcore, dbcore and rdbcore + distutils_src wrapper modules
2018-10-22 20:53:49 +02:00
Matthias Köfferlein
1150ffbbb1
Merge branch 'pymod' into pymod-splitting
2018-10-22 18:15:02 +02:00
Matthias Koefferlein
d67a50bd1d
Fixed #176 by introducing a separate bitmap for text drawing optimization.
2018-10-20 09:53:25 +02:00
Matthias Koefferlein
dc9267d61e
WIP: updated solution
...
* Reverted first solution partially because it lead to drawing errors.
* Redraw thread will fire workers only for layers that really need
to be drawn
2018-10-20 09:53:07 +02:00
Matthias Koefferlein
46116f4828
Basic performance improvement in the bitmap to image area
...
Empty bitmaps are skipped now
2018-10-20 09:52:35 +02:00
Thomas Ferreira de Lima
c1dbb023ae
fixing editable install 'python setup.py develop'
2018-10-19 19:09:20 -04:00
Thomas Ferreira de Lima
c3ab951c8a
passing python unit tests
2018-10-19 19:02:38 -04:00
Thomas Ferreira de Lima
87a49007ff
Fixing distutils_src folder structure due to setuptools bug
...
Also: adding PCellDeclarationHelper to klayout.db
2018-10-19 18:53:37 -04:00
Thomas Ferreira de Lima
d3fa4465f6
Renaming core modules to klayout.dbcore, klayout.rdbcore and klayout.tlcore
2018-10-19 17:55:56 -04:00
Matthias Koefferlein
8ab4868d76
Fixed build on Windows (tl::InputPipe::wait was missing)
2018-10-16 23:00:28 +02:00
Matthias Koefferlein
62224b0d91
Merge branch 'pymod' into net-extract
2018-10-14 23:57:18 +02:00
Matthias Koefferlein
90c03140b3
Fixed #185 for pymod branch
2018-10-14 23:42:10 +02:00
Matthias Koefferlein
dd9d46da38
Activated stream unit tests.
2018-10-14 23:34:25 +02:00
Matthias Koefferlein
3392c08d36
Merge branch 'pymod' into net-extract
2018-10-09 23:43:58 +02:00
Matthias Koefferlein
904a12c11e
Added a way to get the exit code from InputPipe
...
The method is to call wait() on the pipe object
which returns the exit code.
Some tests have been added for this.
2018-10-09 23:40:28 +02:00
Matthias Koefferlein
7df9242efb
Merge remote-tracking branch 'origin/pymod' into pymod
2018-10-09 23:00:30 +02:00
Matthias Koefferlein
222b98fd70
Some fixes for the testsuite
...
With these fixes, unit tests pass with MacOS
(set DYLD_LIBRARY_PATH!)
1.) MacOS takes popen vs. pclose seriously
By using fopen we basically spoil the system and other popen
won't work.
2.) For system integrity, MacOS does not propagate DYLD_LIBRARY_PATH
to child processes such as sh. This has to be done explictly.
3.) Search the klayout binary in the right path (klayout.app/...)
4.) Reset KLAYOUT_HOME for less intervention by installed macros
2018-10-09 13:57:26 -07:00
Matthias Koefferlein
19a3f19378
Removed some misleading comments.
2018-10-09 21:24:23 +02:00
Matthias Koefferlein
70778e9414
Now also fixed the bd unit tests - there are also independent from the streamer plugins now.
2018-10-09 01:12:58 +02:00
Matthias Koefferlein
f0661ba0b3
Some wrong header includes fixed.
2018-10-09 00:35:03 +02:00
Matthias Koefferlein
a7846ead9f
Add-on to previous commit: fixes some Python issues
...
The comments for LoadLayoutOptions#layer_map, #cif_layer_map
and #dxf_layer_map have been updated to reflect the new status
of these properties (which have been methods). The tests
are updated accordingly (layer_map() -> layer_map).
2018-10-09 00:18:45 +02:00
Matthias Koefferlein
db981b0f7d
A huge patch to make Windows build functional again after recent updates
...
The issue was: for MacOS/clang, the virtual format-specific
option structs had to be embedded in one compile unit (for RTTI).
In Windows this will lead to link errors since the DLL is not
reachable at build time for the generic reader/writer configuration in
the buddy tools.
The solution is to use GSI methods (provided for scripting) to
set the reader/writer options in a generic way that does not
require linking against the plugin DLLs.
2018-10-08 23:31:22 +02:00
Matthias Koefferlein
121ec46390
Attempt to introduce multithreading into hierarchical processor
...
However, performance does not scale well currently.
2018-10-08 00:10:54 +02:00
Matthias Koefferlein
35e03c5f95
Added one more testcase.
2018-10-07 16:56:14 +02:00
Matthias Koefferlein
0bb45dd092
WIP: some refactoring.
2018-10-06 23:59:47 +02:00
Matthias Koefferlein
2fa0d21615
Added self-overlap-with-sizing tests.
2018-10-06 22:25:24 +02:00
Matthias Koefferlein
ee55a4ca21
Fixed hier processor in case of self-interactions
2018-10-06 21:56:13 +02:00
Matthias Koefferlein
2e61998372
WIP: interactions with same layer (needs finishing)
2018-10-06 01:40:01 +02:00
Matthias Koefferlein
4ffcaba5d1
Important bug fix for MacOS
...
Unlike Linux, RTTI does not work in MacOS/clang when the classes
originate from different compile units. I think that Linux's C++
runtime not only checks for identical vtable, but alternatively
for same name. On MacOS, dynamic_cast will fail instead. This fix
solves this issue by placing the important steam format option
specializations into a single specific shared object (the DB plugin).
2018-10-04 14:10:22 -07:00
Matthias Koefferlein
f7c4aa0348
(Partial) attempt to fix the plugin detection issue on MacOS
2018-10-02 17:36:30 -07:00
Matthias Koefferlein
c380b9c4bf
Hier processor: supports two layouts for input now.
2018-10-01 22:45:46 +02:00
Matthias Koefferlein
f01e102f0f
Merge branch 'pymod' into net-extract
2018-09-30 23:37:21 +02:00
Matthias Koefferlein
967652784e
Merge remote-tracking branch 'remotes/origin/master' into pymod
2018-09-30 23:26:20 +02:00
Matthias Koefferlein
c08f0a1fda
Fixed #176 by introducing a separate bitmap for text drawing optimization.
2018-09-30 10:27:44 +02:00
Matthias Koefferlein
c342bca584
WIP: updated solution
...
* Reverted first solution partially because it lead to drawing errors.
* Redraw thread will fire workers only for layers that really need
to be drawn
2018-09-30 00:16:35 +02:00
Matthias Koefferlein
ad7154c6cf
Basic performance improvement in the bitmap to image area
...
Empty bitmaps are skipped now
2018-09-29 23:35:30 +02:00
Matthias Koefferlein
c75e67268b
Merge branch 'pymod' into net-extract
2018-09-26 21:40:23 +02:00
Matthias Koefferlein
d03d4bec1d
Fixed build after merge.
2018-09-26 21:27:31 +02:00
Matthias Koefferlein
6795de1dbb
Merge remote-tracking branch 'remotes/origin/master' into pymod
...
Provides fixes for issue #166 and #172 .
2018-09-26 21:15:08 +02:00
Matthias Koefferlein
d4adb194e3
Fixed #172 (DEF reader does not pull vias from LEF)
2018-09-26 20:49:04 +02:00
Matthias Koefferlein
defbf33d19
WIP: distance parameter for hierarchical processor.
2018-09-25 23:26:18 +02:00
Matthias Koefferlein
824888aaa6
WIP: some refactoring.
2018-09-25 22:25:40 +02:00
Matthias Koefferlein
eb71121c38
WIP: bugfix - intra-array self interactions.
2018-09-23 22:34:50 +02:00
Matthias Koefferlein
52a4459dac
WIP: timer enhanced (reports start now), drop empty boxes in hier processor (will make the processor stall).
2018-09-23 20:06:27 +02:00
Matthias Koefferlein
611a98165d
WIP: diagnostic output
2018-09-23 17:49:10 +02:00
Matthias Koefferlein
3c15d8e387
WIP: some optimization with empty intruder hint.
2018-09-23 17:22:08 +02:00
Matthias Koefferlein
9e09002d43
WIP: refined interaction testing.
2018-09-23 16:57:49 +02:00
Matthias Koefferlein
c1b0892641
WIP: More testcases, better test coverage, some bug fixes
2018-09-23 16:08:00 +02:00
Matthias Koefferlein
d7099edcae
WIP: gcov enabled, added more test cases.
2018-09-23 09:29:05 +02:00
Matthias Koefferlein
8420b29025
WIP: mixed propagation sample.
2018-09-23 00:53:19 +02:00
Matthias Koefferlein
2595f4ed6b
WIP: more test coverage.
2018-09-23 00:37:27 +02:00
Matthias Koefferlein
76b045e2ac
WIP: hierarchy variant building, tests
2018-09-22 23:44:24 +02:00
Matthias Koefferlein
3cbbe041aa
WIP: some bugfixes, new tests (up/down, down/up interactions)
2018-09-22 23:37:23 +02:00
Matthias Koefferlein
a551300e0d
WIP: Some refactoring (hier processing in extra file), unit tests, bug fixes
2018-09-22 22:32:36 +02:00
Matthias Koefferlein
3214200e17
WIP: code factory
2018-09-22 02:45:56 +02:00
Matthias Koefferlein
b25401c254
Added twofold-typed box scanner.
2018-09-20 23:44:51 +02:00
Matthias Koefferlein
9ccc0a86b1
Fixed a merge issue (build was broken)
2018-09-17 22:34:01 +02:00
Matthias Koefferlein
3b59d97195
Ported Ruby initialization issue bugfix from pymod to master.
...
On OpenSuSE 15 (gcc 7.3.1, Ruby 2.5.0) crashes have been
observed on starting the application. The main reason seems
to be the attempt to disable $0 redirection in Ruby.
This is not required for Ruby >= 1.9, so this is better dropped.
2018-09-17 21:43:38 +02:00
Matthias Köfferlein
11d5819c77
Fix of a small bug found by MSVC iterator assertions
2018-09-17 21:31:52 +02:00
Matthias Köfferlein
cb15132029
Fixed an issue with destruction callbacks in the QApplication destructor - in this case the interpreter may be nulled already and callbacks must not happen into Ruby/Python.
2018-09-17 21:30:54 +02:00
Matthias Köfferlein
8c4099b77d
Bugfix in the annotation area
...
The annotation ID was taken from an object already deleted - on MSVC
this becomes an issue.
2018-09-17 21:25:28 +02:00
Matthias Köfferlein
88e0bd77a2
Fix in Image object handling
...
Id was taken from an object destructed already.
2018-09-17 21:24:47 +02:00
Matthias Koefferlein
6efdb3a9e1
Added testcase for #166 .
2018-09-17 01:51:23 +02:00
Matthias Koefferlein
f72fda7bae
Added test case for #166 .
2018-09-17 01:48:31 +02:00
Matthias Koefferlein
e9de4252fb
Fixed #166 (internal error when writing GDS file)
...
This fix consists of computing the intersection
points in the split procedure with higher resolution
to avoid topology changes due to snapping on the cut
line.
2018-09-17 01:29:31 +02:00
Matthias Koefferlein
4c4261be6c
Initialized netx plugin
2018-09-16 08:48:43 +02:00
Matthias Köfferlein
fe26785203
Fixed install target for MSVC - copy needs to use Windows paths.
2018-09-13 22:31:45 +02:00
Matthias Koefferlein
06c0b8f6e1
And back to Windows ... re-inserting the ruby_sysinit workaround.
2018-09-12 00:06:48 +02:00
Matthias Koefferlein
0a2574cd3a
Now it breaks the ruby 1.8.x tests ... grrr
2018-09-11 23:19:52 +02:00
Matthias Koefferlein
121e1301b0
Hopefully this fixes the crashes on OpenSuSE 15.
2018-09-11 22:35:57 +02:00
Matthias Koefferlein
6536e9a8dc
Modified command line prep for Ruby integration - maybe that fixes the OpenSuSE 15 crashes.
2018-09-11 08:08:18 +02:00
Matthias Köfferlein
6a12a6a4cd
Normalize CRLF for OASIS reader test's golden data on Windows.
2018-09-11 07:35:01 +02:00
Matthias Köfferlein
1c68b5472c
Enabled ruby_sysinit again after MSVC2017 build crashed without this.
2018-09-11 00:07:33 +02:00
Matthias Koefferlein
dcfe2977a8
Merge branch 'pymod-fix' of https://github.com/klayoutmatthias/klayout into pymod-fix
2018-09-10 21:37:14 +00:00
Matthias Koefferlein
f35b522256
Fixed a segfault on Ruby initialization found on OpenSuSE 15 with Ruby 2.5.0 and gcc 7.3.1 in release mode
2018-09-10 21:36:27 +00:00
Matthias Köfferlein
99a71b771d
Fixed link issue in net tracer plugin both for Linux and Windows (hopefully)
2018-09-10 22:53:49 +02:00
Matthias Koefferlein
c46bed0785
Some update to fix build issues (this time, Linux)
...
- All platforms support native hash values for long long etc.
with the TR1 containers
- Use non-static, function symbols to force linking.
- Debian package is picky about dates so give them some
in Changelog.
2018-09-10 21:56:20 +02:00
Matthias Koefferlein
ad03533a7b
OASIS tests made robust against hash implementation
...
The text writer was made "normalizing": it will introduce
a certain element order (string sorting). This way, OASIS
files can be compared against golden data without
changes in the order due to different implementation of
hash containers.
2018-09-10 01:16:49 +02:00
Matthias Koefferlein
84072aa23e
Fixed a few things that got damaged in Linux build while doing MSVC compatibility.
2018-09-09 22:43:22 +02:00
Matthias Köfferlein
e69ed872a7
Fixed a static initialization race.
2018-09-09 18:31:05 +02:00
Matthias Köfferlein
940a96716c
Fixed the timestamp generation for pthread-win32 timed waits
...
Issue: we have to use WIN API functions which deliver times in a
different way. In order to make the wait functions work, we have to use
the same time definition - specifically the same zero time.
2018-09-09 18:30:21 +02:00
Matthias Köfferlein
28477af15e
Added a missing header
2018-09-09 16:52:18 +02:00
Matthias Köfferlein
9544a5419b
Addd current_utc_time() again which got lost during merge
2018-09-09 16:51:54 +02:00
Matthias Köfferlein
a543950316
Explicitly allow enabling of pthreads (rather than Qt) using HAVE_PTHREADS on qmake
2018-09-09 16:51:20 +02:00
Matthias Köfferlein
4821b12780
Removed dependency of tlStream on zlib by using a delegate.
2018-09-09 16:49:21 +02:00
Matthias Köfferlein
8c2c888263
MSVC build issue fixed in pya.cc
2018-09-09 16:47:28 +02:00
Matthias Köfferlein
57b8826e2c
pthread support enabled for gsiObject.cc
2018-09-09 16:46:51 +02:00
Matthias Köfferlein
c9d7b39190
Fixed a general linker problem with release builds on MSVC
2018-09-08 23:11:16 +02:00
Matthias Köfferlein
adebdf307b
Fixed XML parser tests for Qt-less builds with expat
2018-09-08 00:44:19 +02:00
Matthias Köfferlein
7440acb3c0
Fixed a build warning
2018-09-07 23:40:01 +02:00
Matthias Köfferlein
28f8a1ee7d
Merge branch 'pymod' into pymod-msvc
2018-09-07 22:56:22 +02:00
Matthias Köfferlein
a4562bee71
Also fixed issue with hash value of LayerProperties
2018-09-07 22:39:12 +02:00
Matthias Köfferlein
c53c3ae7cf
Hash value issue with db::Text fixed.
2018-09-07 22:29:54 +02:00
Matthias Köfferlein
bd6234b699
Fix in Image object handling
...
Id was taken from an object destructed already.
2018-09-07 00:07:57 +02:00
Matthias Köfferlein
a78f75054a
Bugfix in the annotation area
...
The annotation ID was taken from an object already deleted - on MSVC
this becomes an issue.
2018-09-06 23:49:17 +02:00