Commit Graph

17 Commits

Author SHA1 Message Date
Jean-Paul Chaput 82cff69d9f Complete rewrite of the trace system (now a stream).
* Change: In Hurricane, in Flags add operator overload for "int" type
    and not only "unsigned int". Otherwise the compiler complaints about
    ambiguous overload when using enum values which are considered as
    "int".
      Simpler code for the BaseFlags::contains() method.
      Added implicit conversion from BaseFlags toward bool type.
* Change: In Hurricane, in Commons, complete replacement of the previous
    two trace systems (trace & ltrace) by a stream-based one.
    As it is a true object it is much less fragile than the one based
    on defines (but maybe a little slower).
      Define a reservation table for the trace levels for all the
    Coriolis & Chams components.
* Change: All tools, use the new trace system.
2016-05-17 23:00:06 +02:00
Jean-Paul Chaput 0efe75af00 Implementation of DataBase native save/restore in JSON (step 3).
* Test: post-receive hook on server should send mail [1].
* New: In VLSISAPD, in Parameter, callback have now a tag, which the
    pointer to the caller. This allow for the callback removal when
    the caller is destroyed.
* New: In VLSISAPD, in WidgetDescription, when associated to a parameter,
    the destructor must remove the associated callback function on
    the Parameter.
* New: In Hurricane, added JSON support for Configuration, separated
    from vlsisapd, as the support is not available at this point.
    JSON support for Configuration, Parameter & LayoutDescription.
* Change: In Hurricane, in JsonStack, the stack of JsonObjects has been
    displaced here from HurricaneHandler. This way, all
    JsonObject::toData() can access the JsonOjects in the context
    of the parser.
* New: In Hurricane, in DBo::toJson() added support for Entity by
    reference (ids).
* New: In Hurricane, added JSON support for all Layer sub-class types.
* New: In Hurricane, in Technology, export the Layers, but must be
   sorted by increasing mask value.
* New: In Hurricane, in Entity, added support for Entity by reference (ids).
* New: In Hurricane, in DataBase, added technology full support.
* New: In Hurricane, In JsonNet, move the ring rebuild management from
    JsonStack to JsonNet.
* New: In Hurricane, added JSON support for NetAlias, NetExternalcomponents
    (not cleanly implemented as a Relation).
* New: In Hurricane, new method Cell::fromJson() to load a cell from
    a JSON file.
* New: In Hurricane, In Graphics, make it an observable, for when JSON
    fully reload the graphic state, it must be able to notify other
    objects (namely the Controller).
* New: In Hurricane, in ControllerWidget, observe the Graphics to regenerate
    the palette as needed. New method ControllerTab::graphicsUpdated().
* New: In Hurricane, in RawDrawingStyle added a destructor to release the
    Qt pen/brush. Added JSON support for HSVr, DrawingStyle, DrawingGroup,
    & DisplayStyle.
* New: In Hurricane, in GraphicsWidget, rewrite correctly the readGraphics()
    to erase the previous widgets and re-create the new ones.
* New: In Hurricane, in PaletteWidget, correct re-creation of the layout/widgets
    in case of Graphics change.
* New: In CRL Core, in System, register the parameters callbacks with
    the address of the object, for later deletion.
* New: In CRL Core, in AllianceFramework, make it observable, to notify
    library changes. For the AllianceFramework creation, now allow to
    completly bypass the Python initialization system, when we expect
    to restore it from a full blob. Added methods to sets the default
    RoutingGauge & CellGauge.
* New: In CRL Core, added JSON suppport for CellGauge, RoutingLayerGauge
    & RoutingGauge.
* New: In CRL Core, in LibraryManager, oberver AllianceFramework, to update
    the list of libraries in case of change (for JSON full reload).
2016-02-21 11:02:50 +01:00
Jean-Paul Chaput 5baddeb558 Implementation of DataBase native save/restore in JSON (step 2).
* New: In boostrap, in ccb.py, added support for the "support" project
    which contains external dependencies. Currently contains only
    RapidJSON. Those dependencies must be cloned here manually.
* New: In Hurricane, Initializer class for an ordered static initialization
    across different compilation modules.
* Change: In Hurricane, at DataBase level, no longer save the Cells in
    the libraries, but create and ordered list of Cell. Deepest cells
    (leaf cells) first. To avoid dependency problems.
* New: In Hurricane, JSON support for Property.
* New; In CRL, added JSON support for AllianceFramework, Environement &
    Catalog and their associated properties. Adjustment of the
    AllianceLibrary creation policy.
2016-01-21 00:25:39 +01:00
Jean-Paul Chaput dda3f99fd8 Update documentation for compliance with doxygen 1.8.5.
When upgrading from doxygen 1.5.x to 1.8.5 the way the documentation
is generated has underwent many changes, particularly in the headers.
* Change: In <header.html>, must include the javascripts <jquery.js>
    and <dynsections.js>.
* In <CMakeLists.txt>, as the header is customized, doxygen seems not
    copy some files like the javascripts and some images (open.png,
    closed.png). So we copy them from doxygen installation and make
    the CMakeLists.txt install them. I hope they will not change too
    much in the future.
* In <doxyfile>, disable markdown support as it do not interpret
    correctly the formating we already adopted (with a left margin
    to put command into). Use HTML_EXTRA_STYLESHEET instead of
    HTML_STYLESHEET. Enable the index (DISABLE_INDEX=NO), for the
    top header. Enable dot for inheritance diagram. Set the
    EXAMPLE_PATH=. to include the synthetic hierarchy.
    Correct the tag inclusion (faulty path in some places).
* In <SoC.css>, create style for the new header generated by doxygen.
* In the documentation, move the synthetic hierarchy into a module.
2014-05-13 16:30:41 +02:00
Jean-Paul Chaput 12f595941a * ./hurricane/src/hurricane:
- New: Added an id on DBo, SharedName and SharedPath to ensure
        database determinism. All the hash key now uses the id instead
        of the object's pointer (see _getHashValue()).
    - Change: In RoutingPad, position is now only relative to the anchor,
        no more (dx,dy). Add a isPlacedOccurrence() to check if all the
        occurrence in the path are fixed and thus the position meaningful.

  * ./hurricane/doc/hurricane:
    - Change: In Cell, added doc about PlacementStatus.
    - Change: In Transformation, more detailed explanations about the
        orientations. A little beautifying too...
    - Change: RoutingPad doc update.
    - Change: Entity doc update (for id).
    - Change: In HTML header/footer uses the new SoC.css.
2013-12-04 01:26:07 +00:00
Jean-Paul Chaput f8343fdfc4 * ./hurricane:
- New: In hurricane/doc, added documentation RoutingPad, HyperNet & Query.
    - New: In isobar, added support for RoutingPad.
    - Change: In PyComponent, getCenter() method moved to it's right place in
        the base class.
    - Change: In PyPath, added duplicated methods (ApplyOn <-> applyOn and
        Invert <-> invert).
2013-03-13 13:38:15 +00:00
Jean-Paul Chaput 47f3771f1d * All Tools:
- A complete sweep of cleanup to suppress allmost all compiler warnings.

  * ./hurricane/doc/hurricane:
    - New: Documentation cleanup and update, particularly on the new Layer
        derived classes.

  * ./hurricane/src/hurricane,
    ./hurricane/src/isobar,
    ./hurricane/src/viewer:
    - New: Creation of new methods, more explicit on DbU. Based on a to/from
        naming scheme.
    - New: Python support extented to include all objects needed to configure
        through python scripts.
    - Change: Finally understood what's causing the _XOPEN_SOURCE redefinition.
        Basically the Python.h must be included first before any other
        include. The type-puned problem will remains still (that is a Python
        problem, not our own).
    - Change: In DisplayStyle, uses shared_ptr for DrawingStyle instead of
        custom made reference count.
2012-11-16 12:48:38 +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
Christophe Alexandre 78140e5feb new doxyfile 2009-01-30 16:19:55 +00:00
Jean-Paul Chaput 7857044814 Correct some broken links. 2008-07-25 13:29:26 +00:00
Jean-Paul Chaput b3fa237ea7 Small typos. 2008-06-30 14:37:52 +00:00
Jean-Paul Chaput 5a7ddb8188 * ./hurricane :
- Unit evolution to allow Symbolic (lamda) and Real (grid founder) mixing.
       All functions related to Unit translations are now grouped under
       the "DbU" class (another tribute to OpenAccess). "DbU" contains
       only static attributes (constants) and methods. Unit itself becomes
       a typedef inside this class, hence the file renaming from Unit.{h,cpp}
       to DbU.{h.cpp}. Have to replace all instances of "Unit" by "DbU::Unit".
   - Doc will be updated shortly.
2008-06-09 16:41:46 +00:00
Jean-Paul Chaput a2bb796e6f * ./hurricane/src/hurricane :
- CompositeLayer replaced by 5 kind of symbolic layers :
       RegularLayer     (1 BasicLayer)
       DiffusionLayer   (2 or 3 BasicLayers: active+implant,well)
       TransistorLayer  (3 or 4 BasicLayers: poly+active+implant,well)
       ContactLayer     (4 or 5 BasicLayers: metal+cut+active+implant,well)
       ViaLayer         (3 BasicLayers: metal0+cut0+metal1)
   - To better follow the OpenAccess semantic, the "obstacle" Material type
       is renommed to "blockage".
   - NB: doxygen documentation is not up-to-date and issue warnings.

 * ./coriolis/src/crlcore :
   - Migrate from CompositeLayer to the various SymbolicLayers.
   - Symbolic rules are now closer to the reality so that a Cell displayed
       with Hurricane should look identical to the Graal one.
   - Complete rewrite of the AP parser. Much simplificated, do not try to
       merge/articulates segments. This ensure a true rendering of the
       Cell. Especially do not create contact to anchor diffusion segments,
       which leads to very strange randering (DRC error as well).
2008-06-05 16:11:52 +00:00
Jean-Paul Chaput 4fb6f4c886 * ./hurricane/doc/hurricane :
- Added (empty) directories "html" & "latex". Those directories are
       created by doxygen, but as they are used in the CMakeList.txt, they
       must be present even before the fisrt run of cmake (otherwise cmake
       choke on them).
   - Doxygen sets to only generate html & pdf (through LaTeX) documentation.
   - All ".dox" files corrected to suit the new function members naming
       scheme (some work may remains in code examples).
2008-05-26 15:15:59 +00:00
Jean-Paul Chaput 9a49082767 * ./hurricane/src :
- Complete include re-organisation.
       include/hurricane/*.h            : kernel.
       include/hurricane/viewer/*.h     : hviewer.
       include/hurricane/inspector/*.h  : hinspector.
     Includes have been moved into subdirectories of .cpp files (as in
       crlcore).
   - Now you must include files like this :
       #include  <hurricane/Layer.h>
       #include  <hurricane/viewer/CellViewer.h>
       #include  <hurricane/inspector/HInspector.h>  
   - Suppressed viewer specific include path in FindHURRICANE.cmake.
   - Re-enabled documentation, with dot disabled as it seems to slow down
      doxygen.

 * ./crlcore/src/crlcore :
   - Adapted to new Hurricane include scheme. Corrected bugs in it's own
       include files (noticeably "Utilities.h").
2008-05-21 22:43:52 +00:00
Christophe Alexandre 0eb89cad32 Cleaning in progress in Hurricane 2008-03-14 16:31:18 +00:00
The Coriolis Project 898f7dfb81 documentation in progress 2008-02-05 21:26:22 +00:00