Commit Graph

10 Commits

Author SHA1 Message Date
Jean-Paul Chaput 5dc60415e7 Happy new year 2015! 2015-03-17 16:56:55 +01:00
Jean-Paul Chaput 7296dcd6fb Make the Python interface closely mirroring the C++ one.
* Change: In Isobar, the Python interface was not exactly mirroring the
    C++ one, now it is the case. The Python code should look likes almost
    exactly like the C++ one, the only differences remaining being due
    to the languages respective syntaxes. Note that in the case of
    constructor functions, it leads to a slightly longer notation in
    Python that it could have been (mimic the ".create()" static
    member). Main modifications:
    1. Mirror the static constructor syntax with create():
          Cell( ... )   ==>  Cell.create( ... )
    2. Correct hierarchy for constants in Instance, Net, Pin
       & Transformation. For example:
          Hurricane.PlacementStatusFIXED
                     ==> Hurricane.Instance.PlacementStatus.FIXED
          Hurricane.OrientationID
                     ==> Hurricane.Transformation.Orientation.ID
          Hurricane.TypeLOGICAL  ==>  Hurricane.Net.Type.LOGICAL
          Hurricane.DirectionIN  ==>  Hurricane.Net.Direction.IN
* Change: In CRL Core, correction to match the improved Python API
    in the configutation helpers.
* Change: In Cumulus, correction to match the improved Python API.
* Change: In Stratus, correction to match the improved Python API.
* Change: In Documenation, update for the new Python interface
    (both user's guide & examples).
* Note: We must port those changes into Chams for it to continue
   to run.
* Change: In Documenation, update the Python script support part.
2014-06-29 14:26:59 +02:00
Jean-Paul Chaput 2af6e7eef1 Correct exception catching when creating invalid occurrence in Isobar.
* New: In CRL Core, in PyCellGauge, add the missing methods.
* Bug: In Isobar, PyOccurrence_create(), the HTRY/HCATCH block was not
    enclosing the constructor of Occurrence, which can throw exceptions.
    When an exception was thown the Python interpreter just terminate
    with the cryptic message:
      "Fatal Python error: Py_EndInterpreter: thread still has a frame"
    Reminder to myself: when such a message occurs, it means that the
    interpreter did encounter a problem, but it's related to the isobar
    interface.
2014-06-10 00:17:41 +02: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
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
Christophe Alexandre 61a58ff3d6 * no more PyNames, in the Python part, names are replaced by simple strings
and transformed in Names in the wrapper.
 * get rid of Converter in progress
2008-12-11 12:25:02 +00:00
The Coriolis Project 7068f0c092 Init -> init 2008-11-17 21:55:03 +00:00
The Coriolis Project cd1c194268 cleaning in error message if bad arguments
net collections in progress
2008-10-14 18:44:20 +00:00
Christophe Alexandre 5faaf81b59 simplifications and improvments in Isobar 2008-10-12 13:37:33 +00:00
Jean-Paul Chaput 23407710ee * ./hurricane/src :
- Rename "pyext" to "isobar".
2008-06-09 16:56:48 +00:00