Commit Graph

97 Commits

Author SHA1 Message Date
Jean-Paul Chaput df2eaec70f * All Tools:
- A complete sweep of cleanup to suppress allmost all compiler warnings.

  * ./vlsisapd/openchams:
    - Change: Completly remove Name as std::string are shared. Also impact
        amsCore (OpenChamsParser/OpenChamsDriver).

  * ./vlsisapd/configuration:
    - Bug: Python.h must be included first (see Isobar comment).
    - Change: New "readFromFile()" Configuration method.
2012-11-16 12:47:32 +00:00
Jean-Paul Chaput 5c593f4161 * ./vlsisapd/dtr:
- Change: Completly remove Name as std::string are shared, in library,
        boost::python, doxygen documentation & examples.
2012-03-26 15:39:08 +00:00
Jean-Paul Chaput 4c876122d1 * ./vlsisapd/openChams:
- In Circuit: Forgot to lower in stringAsBool().
2012-03-22 16:16:34 +00:00
Jean-Paul Chaput e7011ad480 * ./vlsisapd/openChams:
- Change: In Parameters, suppress the two separate maps, one for double
        and another for string (equations). We shouldn't suppose what kind
        of data an user can put in the parameter's value. Now that the
        parameters for the HB-Tree are to be integrated, we have not only
        double but boolean, integers and a direction string. The value are
        now stored in a raw fashion as strings. It is up to the parser/drivers
        (i.e OpenChamsParser/OpenChamsDriver) to give meaning to those strings
        and interpret them accordingly.
    - Change: In Circuit, helper templates (and some non-template) functions
        to cast a string into various types. All the POD through stringAs<>
        template, plus stringAsDirection() & stringAsBool(). Reverse functions
        templates asString<> are also avalaible.
        Note: Those helpers are of more general interest, we should displace
              them sooner or later into a common "Utility" sub-tool.
2012-03-22 14:37:22 +00:00
Farakh Javid 64ae150d5e Added classes to handle equations (HighLevelCstr, DDP, DesignerCstrOC, NRCCstr), all child of Equation.
Modified openChams parser and driver to take into account these classes.
2011-11-08 17:59:52 +00:00
The Coriolis Project 29020a93f2 Forgot the std:: 2011-09-29 09:49:18 +00:00
The Coriolis Project 613e1d41a9 Addnig missing <fstream> include 2011-09-29 09:40:50 +00:00
Damien Dupuis c6ab2d5ed8 - New support for <hbtree> section in <layout> section used to describe relative placement with constraints
- Examples (c++/python parse/drive) have been updated

    TODO: test under linux / write corresponding documentation
2011-09-14 08:13:46 +00:00
Damien Dupuis 631d636d2c In OpenChams parser / driver :
- remove callOrder member on Operator
    - add order on Instance (to order Devices and Subcircuits)
    - update python interface
    - update C++/Python parse/drive examples
2011-07-21 09:20:20 +00:00
Damien Dupuis 4120451990 Adding subckt addComment method to describe interface 2011-05-16 12:36:11 +00:00
Damien Dupuis d8e82643e6 Adding Boost::Python wrapping 2011-05-10 14:25:49 +00:00
Damien Dupuis 6476d1492c Several changes to correctly parse & drive current spice example. 2011-05-10 11:09:56 +00:00
Damien Dupuis 2f17ce7b37 Adding spice parser/driver (only database right now, examples code will follow)
Supported grammar is :
    .INCLUDE
    .LIB
    .PARAM
    .OPTION
    .SUBCKT
    Xxxx
    Rxxx
    Cxxx
    Ixxx
    Vxxx

    Mxxx and Dxxx are on the todo list
2011-05-06 09:21:01 +00:00
Damien Dupuis 66d376fecc The correction commited yesterday is not a good solution : we're going to explore why link fails on 64bits
Minor warning correction at compilation (no virtual destructor in DTR::Rule)
2011-04-12 08:33:44 +00:00
The Coriolis Project 9996064f13 In order to compile on sl5 64 bits : we need to suppress libboost_python from Boost_LIBRARIES !
(I don't get why it perfectly works on sl5 32 bits and mac osx)
2011-04-11 14:24:37 +00:00
Damien Dupuis d89ebe3b4e OpenChams:
symmetry becomes orientation and now supports symmetries AND rotations.
  
  There are 8 possible orientations:
    ID  (identity)
    R1 (rotate 90° Counter Clock wise)
    R2 (symX and symY)
    R3 (rotate 90° Clock Wise)
    MX (symX)
    XR (symX then rotate 90° Counter Clock Wise)
    MY (symY)
    YR (symY then rotate 90° Counter Clock Wise)

These orientations exactly copy Hurricane::Transformation::Orientation
2011-03-10 10:42:30 +00:00
Jean-Paul Chaput 9f8de0144d Forgot this one. 2011-02-25 09:14:54 +00:00
Jean-Paul Chaput 86d5f4e94f Bug: Now should read detect correctly needrestart/mustexist. 2011-02-24 15:37:50 +00:00
Jean-Paul Chaput 61328d9c4c * ./vlsisapd:
- New: In TabDescription, add an "id" field, to be used for filtering
        by the file drivers.
    - New: in LayoutDescription::writeToStream(), adds a filtering over
        the tabs id (same fonctionality as for the parameters).
    - New: PyConfiguration extension, build using boost::python.
        Not finished yet.
    - Bug: In LayoutDescription::buildWidget(), when the parameter associated
        to a widget is not found, to not try to adds it. Print a nice error
        message and do not core dump...
2011-02-22 13:31:47 +00:00
Damien Dupuis 360e8d5348 Adding support for Port and Wire objects in openChams paser / driver.
Examples have been (partially) updated.
2011-02-15 13:57:39 +00:00
The Coriolis Project 7abcd87d96 PYTHON libraries missing for linking.
lineno not renamed in scanner.
2011-02-09 16:42:59 +00:00
Jean-Paul Chaput f5cedcdece * <All Tools>/CMakeLists.txt:
- Change: Added versioning to library.
2011-02-02 22:48:30 +00:00
Damien Dupuis ec97d7f369 Thanks to the help of Jean-Paul may python installation is alive !
- Updated Boost.Python port for OpenChams

  - Updated drive & aprse examples in Python
2010-11-22 14:44:17 +00:00
Damien Dupuis 5887a0b59f !! Adding support for subCircuits !!!
* New <subCircuitsPathes> section in <circuit> that lists the pathes that contain subCircuits xml files

    * New Device object that inherits from simplified Instance object.
        - Instance has a name, a model, some connectors and optionnal parameters
        - Device has the same attributes plus mosType, sourceBulkConnected and transistors

    * Updated readFromFile and wrtieToFile methods to support these modifications

    * Updated parse and drive examples to support these modifications
        - Note: only C++ examples has been updated since my boost.python environment is actually totaly broken

    * New buffer.xml example that uses subCircuits.
2010-11-22 10:21:52 +00:00
Damien Dupuis 3c2062bdd0 Version property for tehcnology tag is not mandatory. 2010-11-18 15:13:56 +00:00
Damien Dupuis 48407432c9 New version attribute in Techno object (it is parsed and drived)
Recently adds have been adjusted in PyDtr.py

    Examples have been updated (c++ is tested, python fails on my Mac due to a strange python2.6.6 behavior I have to check this)
2010-11-17 15:09:59 +00:00
Damien Dupuis 9e5b5226d9 Adding setName & setUnit methods on Techno object.
getRule method of Techno does not throw exception anymore if rule is not found : a NULL Rule* is returned instead.

    but getValue methods throw exception if rule is not found
2010-11-16 15:33:42 +00:00
Jean-Paul Chaput a9d0783026 * ./vslsisapd/src/configuration:
- New: In Parameter, adds a priority for all the mutators method calls.
        Allows to sets values according to where they came from instead of
        only taking the last change. This is needed because we cannot ensure
        that the last sets value is the truly wanted one. Four priorities
        are avalaibles (in increasing order):
          1. - ApplicationBuiltin (the default).
          2. - ConfigurationFile  (currently: the XML parser).
          3. - CommandLine        (supplied by the command line, see Unicorn).
          4. - Interactive        (changed through ConfigurationWidget).
    - New: In ConfigurationWidget, hideTabs()/showTabs() to explicitly select
        which tabs are displayeds or hidden. Two modes are avalaibles:
        Incremental and Exact. In Exact mode only hidden tabs are hiddens and
        only shown tabs are shown.
    - Change: In ConfigurationWidget/ConfTabWidget/ParameterWidget, no longer
        relies on the Widget parent/child tree to find the ConfigurationWidget
        from a ParameterWidget (consequence of the hide/show capability which
        is implemented by cutting off hidden tabs). Adds an explicit attribute.
2010-11-16 13:51:14 +00:00
Damien Dupuis 7506bae16e Adding support for unspecified values (saving NaN)
Adding setValue && setRef methods on Rules

    writeToFile method now produce an easy to read file thanks to iomanip.stw() method
2010-11-16 11:24:26 +00:00
Sophie Belloeil 578877d8d7 VlsiSAPD is now G++ version 4.4 compliant ! 2010-11-02 11:02:44 +00:00
Damien Dupuis ab4be8a22b As Farakh asked me : Operator name is now always converted to upper case before save. 2010-10-28 20:56:08 +00:00
Sophie Belloeil 81d4d455bd - Improvment of parsing examples with examples of maps and vectors.
- No more pprint method in Python, now __repr__method encapsuling new c++ method getString.
2010-10-15 11:13:53 +00:00
Sophie Belloeil 2bc62b400b - Python examples
- forgotten PyLiberty.cpp
2010-10-14 11:06:22 +00:00
Sophie Belloeil 40a6d2e0da Python wrapper. (without example it seems ?) 2010-10-14 11:01:16 +00:00
Damien Dupuis ec979ff2b8 Need to to take into account the new signals confOk() and needRestart() 2010-10-14 09:32:53 +00:00
Jean-Paul Chaput dbb56bbc50 Forgot to comment out debug lines. 2010-10-14 09:23:21 +00:00
Jean-Paul Chaput 0cd5cc498d * ./vslsisapd/src/configuration:
- Change: In ConfigurationWidget, two separate signals for "confOk" and
        "needRestart", rewrite of the "apply clicked" method.
    - Bug: In LogEntry::restore(), uses correct flags on Paramater::setString().
2010-10-14 09:02:24 +00:00
Jean-Paul Chaput 45f9dcc394 * ./vslsisapd/src/configuration:
- Change: Internal rewrite of the check function, now named _doChange()
        and shared by all mutators.
    - Change: Logs now contains entries with the last correct value and are
        able to restore that value.
    - Change: LogWidget simplificated, only one message label. But now two
        buttons (Continue/Cancel).
    - Change: In ConfigurationWidget, two steps validation "mustExist" then
        "needRestart".
2010-10-13 21:44:50 +00:00
Sophie Belloeil 3db947d302 Useful getters. 2010-10-11 11:45:38 +00:00
Sophie Belloeil 7f878e6c3c New liberty parser / driver :
- only c++ (python will follow)
      - parse and drive examples
2010-10-08 11:22:59 +00:00
Jean-Paul Chaput 446ccd6d58 Discouple "clicked()" signal from apply button to close
of the standalone dialog.
2010-10-08 09:43:26 +00:00
Damien Dupuis 4dddfbba98 Adding statustip on button in configurationWidget and save button also save in memory 2010-10-08 08:37:42 +00:00
Damien Dupuis 4b62ea91d2 Missing Boost_LIBRARIES in target_link_libraries for libconfiguration (do not compile on mac osx if missing) 2010-10-08 08:36:19 +00:00
Jean-Paul Chaput 9f0fb0b467 * ./vslsisapd/src/configuration:
- New: Attributes "needRestart", "mustExist", "isFile" and "isPath".
    - New: Display a warning message when a parameter with mustExist or
        needRestart is modificated.
    - New: In ConfigurationWidget, method selectTab() to select the current
        displayed tab.
    - Change: In Configuration::writeToFile() and writeToStream(), adds a
        third parameter telling which parameter to save. It's a semicolon
        separated list of parameter head id. Example: "kite;mauka".
2010-10-06 22:03:35 +00:00
Damien Dupuis 1155d95365 Bug correction on mac osx :
based on libxml2 documentation : xmlCleanupParser() function must not be called several times
2010-09-21 09:58:53 +00:00
Damien Dupuis 136e5e90c7 Adding new ConfigurationDialog widget (QDialog) and buildDialog method on configuration.
This is very useful when using configuration as a standalone widget
2010-09-20 10:48:13 +00:00
Jean-Paul Chaput 1a33586cf9 * ./vslsisapd/src/configuration:
- Bug: In FilePathEdit, do not sets the file/path if the Dialog has been
        cancelled.
    - Bug: In FilePathEdit, do not uses the native dialog (called by static
        methods) when under Linux/GtkStyle as the native widget seems to be
        badly linked (bug in GtkStyle?).
2010-09-16 20:41:39 +00:00
Jean-Paul Chaput 1c572fe188 * ./vslsisapd/src/configuration:
- Bug: In Configuration parser XML zero status indicate no errors...
2010-09-16 14:43:41 +00:00
Jean-Paul Chaput 7b1fd28df0 * ./vslsisapd/src/configuration:
- New: Integrate the FilePathEdit widget, courtesy of D. Dupuis.
    - Bug: In ConfEditorMain, new boolean switch to allow disable of GtkStyle
        which make FilePathEdit to coredump (Linux feature only!).
2010-09-16 13:26:36 +00:00
Jean-Paul Chaput c5427574a8 * ./vslsisapd/src/configuration:
- New: In Configuration, write methods are ables to completly drive the
        XML file (values & layout), selectable through flags.
    - New: In ConfigurationWidget, the Apply button is now outside the
        tabs. Also adds two modes: Embedded & StandAlone with different sets
        of buttons.
2010-09-15 21:46:42 +00:00