Commit Graph

43 Commits

Author SHA1 Message Date
Matthias Koefferlein e9dd19ad0b Relaxed test conditions for cell hull generator test. 2017-08-12 10:11:28 +02:00
Matthias Koefferlein a6723a8155 Some test updates
* Generalized Polygon to edge interaction into db::Polygon tools
* Added tests for this
* Equipped region to edges interaction with this feature to
  reduce random test fails
* Multiple (reproducible) seeds for Region tests
* More tolerances for TilingProcessor tests
* ICplxTrans is_unity? implementation is using proper
  double tolerances now
* File watcher tests wait longer to allow for slow
  response on loaded Windows build server
2017-08-11 22:00:07 +02:00
Matthias Koefferlein 7c59235889 Fixed a potential issue when using the db::Shape edge iterator on a non-existing hull in SimplePolygon. 2017-08-10 01:53:35 +02:00
Matthias Koefferlein 32ba5ee635 Some fixes for OASIS reader
- Allow full 32bit for box width and height
  and some other properties (for border case
  testing - not recommended)
- Reduce arrays with step distance 0 to
  dimension 1 - avoids overlapping instances
  or shapes.
2017-07-28 00:19:39 +02:00
Matthias Koefferlein 1b1ed7b291 Fixed a performance issue with many markers. 2017-07-19 21:47:45 +02:00
Matthias Koefferlein 45b774a3af Fixed a XOR issue
Bug: sometimes, if the files had different database units, the XOR
tool was showing differences while there are none.

This was due to a sloppy computation of the tile boxes. The solution
is to properly round the tile size to a common database unit and
to use a common effective size for both inputs.
2017-07-18 22:33:54 +02:00
Matthias Koefferlein 4ad20fa4ce Region to edge interactions
With this fix, regions can be interaction-tested with edge collections.
Only "normal" interaction is available - select_overlapping is not. This
is still confined to region to region interactions.
2017-07-12 22:41:11 +02:00
Matthias Koefferlein 02819c5f1e Hash functions and fuzzy compare for RBA
RBA now provides a hash method for Box, Edge, EdgePair, Trans,
Polygon, SimplePolygon, CellInstArray, LayerInfo, Path, Text,
Point and Vector.

eql? is mapped to ==.

==, != and < act "fuzzy" for the double-typed variants.

Hence, these objects can be used as hash keys now.
2017-07-09 22:40:56 +02:00
Matthias Koefferlein 8910828726 More consistent definition of precision for double types
The double types (DCoord, DPoint, DVector ...) support a
more consistent equivalence criterion now. This supports
micron-unit objects without loss of precision.

Before this fix, the precision used for 0.01 which was
basically implying a resolution of 10nm for micrometer-unit
double objects.
2017-07-04 23:50:30 +02:00
Matthias Koefferlein d83c420c0a Better support for delete-while-iterate on stable vectors 2017-07-02 19:19:55 +02:00
Matthias Koefferlein 86e2b8cad1 WIP: auto-measurement rulers
- More tests on the snapping functions
- Bugfixes and enhancements for ruler features
2017-07-01 23:07:33 +02:00
Matthias Koefferlein 4ebfb24fca Ruler's auto-measure function improved
Already a very useful feature.
First tests added for snap feature.
2017-07-01 10:03:47 +02:00
Matthias Koefferlein 60cfbd9c6f Merge branch 'salt' 2017-05-07 23:55:22 +02:00
Matthias Koefferlein 9b42049abe clang compatibility
Fixed some compile issues with clang and
some warnings.
2017-05-07 23:52:20 +02:00
Matthias Koefferlein 01e5c607fc WIP: sort packages by their dependencies
This fix ensures that packages satisfying dependencies
for other packages come before these in the flat package order.
This is in particular important for macro packages where those
supplying libraries need to be executed before the ones
that use these.
2017-04-23 18:22:06 +02:00
Matthias Koefferlein 209b16f3ea Merge branch 'salt' into controllers 2017-04-16 21:05:06 +02:00
Matthias Koefferlein abb5424ece WIP: introducing MacroController
The MacroController is the central facility for managing
macros and their views. The plugin framework has been
extended to support such a design.

In addition, some small bugs have been fixed related to
macro interpreters (specifically the DRC).
2017-04-05 00:20:32 +02:00
Matthias Koefferlein dd4b873d64 Fixed some compiler warnings and some small refactoring 2017-04-01 23:18:04 +02:00
Matthias Koefferlein 50df9e5b21 Provide Ruby/Python binding for technology definitions
The respective new classes are RBA::Technology and
RBA::TechnologyComponent. This interface will replace
the current way of doing tech management from scripts
by using the "technology-data" configuration parameter.
2017-04-01 00:45:55 +02:00
Matthias Koefferlein a24e6d94a9 Fixed #9 (DEF reader issue: "Invalid orientation specification") 2017-03-29 23:37:06 +02:00
Matthias Koefferlein cb589dc2d3 WIP: downloading of packages
- Support for WebDAV
- Download manager implemented
- Apply button functionality implemented

(needs testing)
2017-03-27 15:46:01 +02:00
Matthias Koefferlein d98495c18a WIP: new features for HTTP streams. 2017-03-26 23:27:51 +02:00
Matthias Koefferlein a5d0461284 WIP: removed obsolete method. 2017-03-26 23:26:45 +02:00
Matthias Koefferlein d160a5c27c WIP: delete function, installation dialog (first steps) 2017-03-25 00:08:17 +01:00
Matthias Koefferlein 10b09c3575 WIP: create packages from templates
Now, packages are actually created.
2017-03-23 23:46:25 +01:00
Matthias Koefferlein 820c291623 WIP: salt package manager: features for installer
First steps towards installer support. Specifically:
- basic installation methods, basic framework
- file utilities for directory copy

Side effect: temp directories of unit tests are
now cleared prior to test run.
2017-03-21 22:20:24 +01:00
Matthias Koefferlein ec415d9251 WIP: functionality of package properties editor
Side effect: the log dialog now has an icon
indicating whether there are errors or warnings.

A new utility widget has been introduced to
attach log messages (warnings/errors) to
dialogs. This widget is a QToolButton that
is invisible initially. It provides warning
and errors channels and can be fed messages.
If errors or warnings are fed, the tool button
becomes visible. If (directly) embedded inside
a QFrame, the frame's background will turn
red to indicate the region of interest.

The button can be pushed to read the log.

The button is called lay::AlertLogButton
and is found in layLogViewerDialog.h.

TODO: move to layBasic.
2017-03-20 22:29:22 +01:00
Matthias Koefferlein 3f9f06a9b9 WIP: more information on packages 2017-03-19 00:42:09 +01:00
Matthias Koefferlein 3a6e4982c8 WIP: more functionality for Salt Package Manager 2017-03-18 22:36:33 +01:00
Matthias Koefferlein b8238a85f9 WIP: first steps towards package browser 2017-03-18 00:22:45 +01:00
Matthias Koefferlein 695a5d3169 WIP: Salt class and unit tests 2017-03-15 22:56:47 +01:00
Matthias Koefferlein 134534adca WIP: removal of grains/collections (needs unit tests). 2017-03-14 23:32:16 +01:00
Matthias Koefferlein 59dd36f692 WIP: grains collections for salt package manager. 2017-03-14 22:59:24 +01:00
Matthias Koefferlein b16d8b9419 Completed unit tests for laySaltGrain.cc 2017-03-12 23:36:51 +01:00
Matthias Koefferlein e421026366 Started package manager development ('salt') 2017-03-12 23:26:04 +01:00
Matthias Koefferlein bf15e46c10 "Find cell" feature: just type into the cell list
This feature includes:
 * Enhancements to tl::GlobPattern
   (exact mode, case insensitive)
   TODO: UTF8 support
 * Enhancements to DecoratedLineEdit
   (ESC key handling, Tab key handling)
2017-02-28 22:24:14 +01:00
Matthias Koefferlein 8edaf8a62b Added more unit tests for recursive shape iter with complex regions. 2017-02-15 21:23:32 +01:00
Matthias Koefferlein 8c4013c500 Added some more unit tests. 2017-02-15 01:15:47 +01:00
Matthias Koefferlein 320e96f6da WIP complex regions for RecursiveShapeIterator
* Refactoring: no more "box+exclude" regions - they
  can be emulated using a NOT with the same result
* "confinement" of regions inside recursive shape
  iterators
* setters and getters for complex regions in GSI,
  confinement
* more unit tests, some bug fixes
2017-02-15 00:53:39 +01:00
Matthias Koefferlein fb6cf92b15 WIP on complex regions for RecursiveShapeIterator
- Added some tests
- Performance improvements for insert of
  regions into shapes
- Added LayoutLocker for that purpose
  (locks a layout against updates temporarily)
- Improved implementation on RecursiveShapeIterator
  with complex regions: will now check if a shape
  is really inside the region.
2017-02-14 00:13:57 +01:00
Matthias Koefferlein a1e8aaf6b8 Updated copyright note to 2017. 2017-02-12 15:28:14 +01:00
Matthias Koefferlein d38b1794d2 Tests with missing input data are skipped now 2017-02-12 15:27:12 +01:00
Matthias Koefferlein 1b98f9b0f9 Initialized repository with current sources. 2017-02-12 13:21:08 +01:00