Commit Graph

1020 Commits

Author SHA1 Message Date
Damien Dupuis 50b9cdf2cd ADDS:
- OpenChamsException to cleanly throw errors (and not cerr -_-)
      - New Schematic object to parse&drive schematic section in xml file
      - Lots of checks on node properties

    CHANGES:
      - directly returns reference on objects' maps/vectors to skim through them (instead of begin/end iterators)
2010-01-29 09:10:44 +00:00
Damien Dupuis 88778da1a2 Added DirectSetBoolAttribute method. I did some tests with it and thought it might be useful. 2010-01-29 08:51:48 +00:00
Jean-Paul Chaput bdad551e30 * ./hurricane/src/hviewer:
- Change: In CellWidget, Ruler again, no more negative ticks.
2010-01-27 12:07:51 +00:00
Jean-Paul Chaput ca270f2396 * ./hurricane/src/hurricane,
./hurricane/src/hviewer:
    - Change: In DbU/CellWidget, some more small adjustments on the ruler.
2010-01-27 10:52:34 +00:00
Jean-Paul Chaput 08333f11fa * ./hurricane/src/hurricane:
- Bug: In DbU, "micro" symbol is "u", not "m".
    - Change: In DbU, uses different precisions on differents units.

  * ./hurricane/src/hviewer:
    - Change: In CellWidget, when drawing a Ruler, display the current Unit
        mode on first & last tick.
2010-01-27 09:43:07 +00:00
Jean-Paul Chaput e6f4c5c508 Increase precision of DbU::getValueString() to 3 decimals for micrometer.
Uses SmartTruncate when displaying rulers.
2010-01-26 16:24:20 +00:00
Stephanie Youssef 53b89a61dc Bug correction:
NetList.cpp -> Netlist.cpp
	  NetList.h -> Netlist.h
	  Added newlines at end of files needed it
2010-01-26 15:05:20 +00:00
Jean-Paul Chaput faceb1f169 * ./hurricane/src/hurricane:
- New: In DbU, extend the StringMode/getValueString() to support the physical
        unit in addition of lambda & foundry grid. "setStringMode()" has now a
        second parameter "UnitPower", only used when the mode is DbU::Physical.

  * ./hurricane/src/hviewer:
    - New: In CellWidget, the fitToContents now adds a margin of 5% to get border
        clear of the bounding box.
    - New: In CellWidget, ability to display lengths in nanometers & micrometers
        in complement of symbolic and foundry grid. DisplayFilterWidget modificated
        accordingly. New members:
          void           setPhysicalMode ( DbU::UnitPower );
          bool           physicalMode    () const;
          DbU::UnitPower getUnitPower    () const;
        In addition to:
          bool           gridMode        () const;
          bool           symbolicMode    () const;
          void           setGridMode     ();
          void           setSymbolicMode ();
2010-01-26 12:58:36 +00:00
Jean-Paul Chaput 0c88f99622 Spot now uses the custom grid as it should. Allowing to step
by one foundry step.
2010-01-25 15:52:37 +00:00
Jean-Paul Chaput cea214de5e Test for NULL cell in setCell() ... 2010-01-25 14:41:48 +00:00
Jean-Paul Chaput ae85636e13 * ./hurricane/src/hviewer:
- Change: In CellWidget/Ruler, rulers are now unidirectionals (as in Cadence).
    - New: In CellWidget, support for drawing components names. Includes correction
        of badly computed coordinates in drawDisplayText.
          Components names are drawed only for the top level of hierarchy and only
        if the bounding box is large enought (currently hard-coded to 50x50 pixels).
    - New: In Net, "Automatic" attributes to distinguish automatically generated
        net names without string pattern matching. "Automatic" Net's names are not
        drawn by the CellWidget to much cluttering the display. And testing a boolean
        is way faster than a pattern matching on a hard-coded name.
    - Change: In CellWidget, when loading a terminal Cell, draw it's internals.
2010-01-22 16:38:21 +00:00
Damien Dupuis d2fa201e09 New standalone openChams parser/driver.
Right now, only <netlist> section is supported.
2010-01-19 09:50:19 +00:00
Damien Dupuis 37b71a532f CHANGES:
PHYSUNITS value is written with scientific representation in order not to write 1e-9 which is not recongnized by agds to gds converter.
2010-01-14 08:26:41 +00:00
Jean-Paul Chaput 51573cfa23 * ./hurricane/src/hurricane :
- In Common.h, disable floatCompare(), floatDifference() & floatRound() as
        they triggers g++ warnings in optimized mode. Replace with roundfp().
2009-12-27 20:12:46 +00:00
Stephanie Youssef 0f7604a5fd oops file name was wrong 2009-12-11 13:57:13 +00:00
Damien Dupuis 23d6a80058 First import of IO project 2009-12-11 12:48:37 +00:00
Jean-Paul Chaput 089ff09c4f Oups. 2009-12-08 14:30:49 +00:00
Jean-Paul Chaput f9c9467ea7 Adds a mutator for BasicLayer extractNumber (for gdsII support). 2009-12-08 14:28:27 +00:00
Jean-Paul Chaput dcf39378c5 * ./hurricane/src/hviewer :
- Change: In RulerCommand, key & mouse now mimic Cadence behavior.
2009-12-03 11:19:54 +00:00
Damien Dupuis e208fbeb2f CHANGES
Depending on the fact the segment relies on contacts or not the translate method behavior is different (useful pour device layout)
2009-11-26 12:21:02 +00:00
Damien Dupuis dda0af6966 ADDS
translate methods
    UpdateSession methods
    for python layout
2009-11-26 12:18:12 +00:00
Damien Dupuis 31ae717b32 CHANGES
- QT4.6 stable beta is out, to compile under SnowLeopard user NEED to upgrade to QT4.6 (if not we won't be able to link with exterior libraries :/)
2009-10-26 12:23:05 +00:00
Damien Dupuis 0107042e04 ADDS
- setRealSnapGridStep on CellWidget useful to set snapGridStep to DbU::grid(1.0) when I want to debug layout (misalignment)
2009-10-26 12:15:47 +00:00
Damien Dupuis eacc908861 Adding CellWidget::State::getCursorStep(). I needed it to debug, may be useful. 2009-10-21 11:06:28 +00:00
Jean-Paul Chaput a72131367e * ./hurricane/src/hurricane :
- Change: In RulerCommand, allow the ruler to be on the cursor grid, not the
        snap grid (usesul for the real mode where the snap grid is much bigger
        than the cursor grid).
2009-10-21 09:18:12 +00:00
Jean-Paul Chaput e5c4402395 * ./hurricane :
- New: In Occurrence, new method getBoundingBox(const BasicLayer*). Returns
        a different value from getBoundingBox() only if the Entity is a Component.
          Long awaited by the Solstice extractor.
    - Change: In ExtensionSlice, keep track of the created ExtensionSlice by name
        to avoid consuming a new bit each time an ExtensionGo slice is deallocated/
        re-allocated (happens often in Solstice/Equinox).
    - Backtrack: In SelectCommand, do not uses::boost regex as their library have
        not been compiled for 32 bits support under OSX Snow Leopard ?!$#.
    - Bug: In Command.h, include and uses std::string has in some rare case no one
        has done it before.
2009-10-20 10:52:52 +00:00
Jean-Paul Chaput 56b2abb260 - Change: In CellWidget & Command, rewrite of the active command mechanism.
Now a command is associated to one CellWidget exactly, the active flag
        was shared among all CellWidget which was an error (do not show unless
        we start to multithread).
    - New: In SelectCommand/SelectionPopup/SelectionPopupModel now there are three
        selection mode:
          Mode 0: Select all Component under point.
          Mode 1: Select whole nets whose at least one component is under point.
          Mode 2: Same as 1, but hide all cluttering "*nymous*" nets.
          Rotation through the mode is done by pressing repeadedly the 'N' key.
          The various select modes are implemented through "sub" Collections.
2009-10-19 17:17:21 +00:00
Jean-Paul Chaput 7f9c707871 * ./hurricane/src/hurricane :
- Bug: In DbU, do not multiply by _physicalPerGrid in getGrid(), was causing
        all coordinates to appear as zero...
2009-10-15 14:06:06 +00:00
Damien Dupuis 297e58d535 CHANGES
- export MousePositionWidget.h so pharos can use it (displays the (x,y) mouse position in status bar)
    
    ADDS
    - add a getOnPhysicalGrid() in DbU
    - add getPhysical and getOnPhysicalGrid functions in PyDbU and also defines useful CONSTANTS
2009-10-15 13:46:29 +00:00
Jean-Paul Chaput fee6e4c593 * ./hurricane/src/hurricane :
- New: In DbU, create a "onCustomGrid(point,step,round)" method to place
        a point on an arbitrary grid. That different from the real or symbolic
        ones.
    - Bug: In DbU, all the snap function where bugged when passed negatives
        coordinates.
    - New: In DbU, new conversion function, DbU::getPhysical() to translate into
        physical (metric) system.
    - New: In CellWidget, separate the "Snap Grid" (real or symbolic) from the
        cursor position. The cursor position will now be displayed in half-lambda
        (symbolic mode) or founder grid unit (real mode).
          That can be changed trough the CellWidget::setCursorStep(DbU::Unit)
        method.
    - New: In CellViewer/ControllerWidget, the CTRL+I keys toggle the visibility
        of the Controller instead of systematically showing it.
2009-10-14 08:20:08 +00:00
Damien Dupuis 4365b6cefb Don't ask me why but the simple test : "^10\\.[012345]*" believes that 10.6.1 is < 10.6
I changed the test to : "^10\\.[012345]\\.?" and tested it with 10.5 10.5.8 10.6 10.6.1 everything is ok
2009-10-01 09:42:04 +00:00
Jean-Manuel Caba 093a51ddb3 Wrapping SET(CMAKE_OSX_ARCHITECTURES "i386;ppc") to compile on older version than Snow Leopard 2009-09-30 21:49:33 +00:00
Damien Dupuis 3b9f8cbd7b I did suppress the constructor (new) system christophe build since it seemed bugged.
I rewrited everything like it was in Coriolis-1 (PyType_create) and reuse the precedent hierarchical system (PyTypeInheritedObjectDefinition)
    With all these changes Pharos is able to run the same script several times without any error (and not only 7 times before crash)
    Maybe there are still some bugs but it seems ok for the moment :D.
2009-09-30 15:11:49 +00:00
Damien Dupuis 689b8cd722 In case of multiple addType with same type :
does not throw Error anymore but cerr and return
        this way it is possible to execute python script more than one time

    Adding trace information for DirectDeleteMethod
2009-09-25 13:51:09 +00:00
Damien Dupuis 98df102f5d Adding SET(CMAKE_OSX_ARCHITECTURES "i386;ppc") to compile with QT4.5 on Snow Leopard 2009-09-25 13:45:49 +00:00
Jean-Paul Chaput bfe6228828 * In All top level CMakeList :
- Adds a CMAKE_POLICY CMP0003 has we've upgraded to cmake 2.6.
2009-08-23 20:24:14 +00:00
Jean-Paul Chaput dbe871fe7e * In All top level CMakeList :
- Adds a CMAKE_POLICY CMP0003 has we've upgraded to cmake 2.6.

  * ./hurricane/src/hurricane :
    - Bug: In Interval, the merge method wasn't working if the "other"
        Interval was empty (doing merge) instead of nothing. This was
        a non-symetrical behavior.

  * ./hurricane/src/hviewer :
    - New: In CellViewer, adds an accessor to the ControlerWidget widget.
    - Bug: In CellViewer::imageDisplay(), when using GtkStyle the file
        dialog seems to core dump if the directory is not specified.
        Now systematically starts with the current working directory.
2009-08-11 10:43:55 +00:00
Jean-Paul Chaput cc98bd541d * ./hurricane/src/hurricane :
- Change: In Technology::getViaBetween(Layer*,Layer*) if the two layers
        are identicals, return the layer instead of NULL (mostly for mono-
        metallic VIAs).
  * ./hurricane/src/hviewer :
    - Bug: In CellWidget::redrawSelection(), correct calculation of the
        selected Instances abutment box. We must apply the occurrence path
        transformation to the instance transformation and not the other way
        around.
    - Bug: In SelectorLess(), Instance must be *inferior* to Components as
        they are drawed after in CellWidget::redrawSelection().
2009-07-25 15:10:46 +00:00
Damien Dupuis 54219843d6 - Modified 'copy to image' :
o added bool noScale to hide colorScale (only useful for congestionMap)
        o respect the cellWidget aspect ratio when saving

    - Adding 'Save to image' functino which call a QFileDialog to choose file name

    - Highlight a masterCell's abutmentbox when it's selected (there is a bug in this)
2009-07-24 10:32:14 +00:00
Jean-Paul Chaput 66cbe976c3 * ./hurricane/src/hviewer :
- Change: Small size adjustments on the cartouche.
2009-06-04 18:28:46 +00:00
Jean-Paul Chaput 46ab139ef9 * ./hurricane/src/hviewer :
- New: Adds a nice cartouche on printed snapshots.
2009-05-14 11:39:31 +00:00
Jean-Paul Chaput 0c3c37066d * ./hurricane/src/hurricane :
- New: Utility functions to manage float rounding errors.
2009-05-13 14:58:53 +00:00
Jean-Paul Chaput e0c9f0ba3f * ./hurricane/src/hviewer :
- Bug: In CellWidget, the drawRulers was copying an enlarged redrawArea into
        the Selection Plane causing the selection to deseapear gradually when
        slowly shifting.
2009-05-06 13:11:03 +00:00
Jean-Paul Chaput 609772dcc3 * ./hurricane/src/hviewer :
- New: In PaletteWidget: allow to select the number of rows of the grid
        widget (up to "infinite", meaning one column). Allow to hide entire
        groups in the widget.
2009-04-21 11:41:10 +00:00
Jean-Paul Chaput 4b8f79bc29 * ./hurricane/src/hurricane :
- Putting LGPL headers.
2009-04-17 16:36:02 +00:00
Jean-Paul Chaput ee828cb19f * ./hurricane/src/viewer :
- Change: Consistent encapsulation of "_active" in Command and all it's derived
        classes.
    - New: support for Rulers. Start drawing by pressing Shift+L.Button, finish
        by pressing it again. To cancel a Ruler press Shift+R.Button.
          Drawing style support also added : "text.ruler". Rulers are always
        visibles (display threshold sets to zero), only the numbers of graduations
        displayeds changes (at least 5 pixels between two graduations).
2009-04-15 16:09:18 +00:00
Jean-Paul Chaput a404498be5 * ./hurricane :
- Bug : In Timer.h, forgot to declare the specialized getString()
        template, thus preventing the timer to be correctly display in
        output streams.
    - Bug : In CellWidget::_redraw(), uses "paintersBegin()" instead of
        "painterBegin()" (whithout the "s"). The former open painters for
        both normal & selection planes which are subsequently accessed by
        "setPen()". The laters opens only the normal plane painter resulting
        in warnings for the selection plane painter (shows only from Qt 4.5).
    - New : In CellWidget, ability to support the physical grid (not only the
        symbolic grid). Added selection symbolic/real in the DisplayFilter.
    - Change : add to Technology and all the Layers sub-classes a
        "_onDbuChange(float)" method.
          This is due to the fact that the symbolic technology is loaded first
        into the DataBase (needed for defining the BasicLayer ordering) along with
        all the symbolic dimensions for the symbolic Layers. Only afterward, we
        load the real technology (hcmos9 for instance) which will sets the
        "grids per lambda" factor to it's true value, changing the meaning of
        the already loaded symbolic values. Then, it is necessary to scale those
        values so they are coherent with the new "GPL" factor, hence the
        "_onDbuChange()" function.
          NEVER USE THIS FUNCTION AFTER THE TECHNOLOGY HAS BEEN LOADED, it would
        render all symbolic coordinates false...
2009-04-12 21:05:51 +00:00
Christophe Alexandre 617e5db177 export PaletteWidget 2009-04-10 09:53:47 +00:00
Jean-Paul Chaput d1ce1ce975 * ./hurricane :
- New: ability to shrink bounds of an Interval.
2009-04-07 15:22:04 +00:00
Jean-Paul Chaput f2fa2bf4c1 * ./hurricane/doc/hurricane :
- Bug: In the various Property sub-types dox file the Hurricane namespace
        wasn't closed, resulting in the deseapearance of thoses classes in the
        documentation (painful to diagnose).
          Still, the doc for the derived Property mostly remains to be written.
    - Bug: clearing some remnants of a merge conflict in DataBase.dox.
2009-04-03 14:21:04 +00:00