Coriolis Core (CRL) Documentation


Public Types | Public Member Functions | List of all members
CRL::Environment Class Reference

Holds all the Alliance environment variables. More...

Public Types

enum  AddMode {
  Append =1,
  Prepend =2,
  Replace =3
}
 

Public Member Functions

 Environment ()
 
 ~Environment ()
 
const std::string & getCORIOLIS_TOP () const
 
const std::string & getDisplayStyle () const
 
long getSCALE_X () const
 
const std::string & getDISPLAY () const
 
const std::string & getIN_LO () const
 
const std::string & getIN_PH () const
 
const std::string & getOUT_LO () const
 
const std::string & getOUT_PH () const
 
const std::string & getPOWER () const
 
const std::string & getGROUND () const
 
const std::string & getCLOCK () const
 
const std::string & getBLOCKAGE () const
 
const std::string & getPad () const
 
const std::string & getCATALOG () const
 
SearchPathgetLIBRARIES ()
 
std::string getLIBRARYPath (size_t i)
 
bool isPOWER (const char *name) const
 
bool isGROUND (const char *name) const
 
bool isCLOCK (const char *name) const
 
bool isBLOCKAGE (const char *name) const
 
bool isPad (const char *name) const
 
void validate () const
 
void setDisplayStyle (const char *)
 
void setSCALE_X (long value)
 
void setDISPLAY (const char *value)
 
void setIN_LO (const char *value)
 
void setIN_PH (const char *value)
 
void setOUT_LO (const char *value)
 
void setOUT_PH (const char *value)
 
void setPOWER (const char *value)
 
void setGROUND (const char *value)
 
void setCLOCK (const char *value)
 
void setBLOCKAGE (const char *value)
 
void setPad (const char *value)
 
void setCATALOG (const char *value)
 
void setWORKING_LIBRARY (const char *value)
 
void addSYSTEM_LIBRARY (const char *value, const char *libName, unsigned int mode=Append)
 
std::string getPrint () const
 

Detailed Description

Holds all the Alliance environment variables.

This object is not to be used alone, but only as an attribute of AllianceFramework.

Although we constantly refer of the contents of this object as environement variables, they may (and should) be initialized through the Coriolis Python environement loader or legacy XML parsers.

Member Enumeration Documentation

◆ AddMode

This enumeration defines the way libraries are added to the already existing table.

Enumerator
Append 

The library is appended to the search list.

Prepend 

The library is prepended to the search list.

Replace 

If a library of same name already exists, it's discarted and this one is put in it's place in the search order. Otherwise it is appended.

Constructor & Destructor Documentation

◆ Environment()

CRL::Environment::Environment ( )

Default constructor. All variables are initialized to their reasonable defaults.

◆ ~Environment()

CRL::Environment::~Environment ( )

Destructor.

Member Function Documentation

◆ getCORIOLIS_TOP()

const std::string & CRL::Environment::getCORIOLIS_TOP ( ) const
inline

Returns: The Coriolis top installation directory.

◆ getDisplayStyle()

const std::string & CRL::Environment::getDisplayStyle ( ) const
inline

Returns: The current display style name.

◆ getSCALE_X()

long CRL::Environment::getSCALE_X ( ) const
inline

Returns: The default scaling factor used if omitted in an AP file.

◆ getDISPLAY()

const std::string & CRL::Environment::getDISPLAY ( ) const
inline

Returns: The path toward the file holding the display datas. Data to initialize the various Hurricane::DrawingStyle.

◆ getIN_LO()

const std::string & CRL::Environment::getIN_LO ( ) const
inline

Returns: The input format for logical (netlist) files.

◆ getIN_PH()

const std::string & CRL::Environment::getIN_PH ( ) const
inline

Returns: The input format for physical (layout) files.

◆ getOUT_LO()

const std::string & CRL::Environment::getOUT_LO ( ) const
inline

Returns: The output format for logical (netlist) files.

◆ getOUT_PH()

const std::string & CRL::Environment::getOUT_PH ( ) const
inline

Returns: The output format for physical (layout) files.

◆ getPOWER()

const std::string & CRL::Environment::getPOWER ( ) const
inline

Returns: The pattern (regular expression) used to match for power nets names.

◆ getGROUND()

const std::string & CRL::Environment::getGROUND ( ) const
inline

Returns: The pattern (regular expression) used to match for ground nets names.

◆ getCLOCK()

const std::string & CRL::Environment::getCLOCK ( ) const
inline

Returns: The pattern (regular expression) used to match for clock nets names.

◆ getBLOCKAGE()

const std::string & CRL::Environment::getBLOCKAGE ( ) const
inline

Returns: With the Hurricane database you cannot create physical components whithout a net. All segments used for signaling blockage area are grouped inside a unique net, which name is given by this variable.

Remark: Be sure to use a significant name which is not likely to collide
with true nets.

◆ getPad()

const std::string & CRL::Environment::getPad ( ) const
inline

Returns: The pattern (regular expression) used to match for pad cell names.

◆ getCATALOG()

const std::string & CRL::Environment::getCATALOG ( ) const
inline

Returns: The name of the auxiliary file in library directories holding the meta-informations about the cells.

◆ getLIBRARIES()

SearchPath & CRL::Environment::getLIBRARIES ( )
inline

Returns: The ordered list of libraries, under the form of a serch path.

◆ getLIBRARYPath()

string CRL::Environment::getLIBRARYPath ( size_t  i)

Returns: The path of library at index i in the search path.

◆ isPOWER()

bool CRL::Environment::isPOWER ( const char *  name) const

Returns: true if name is recognized as a power net name.

◆ isGROUND()

bool CRL::Environment::isGROUND ( const char *  name) const

Returns: true if name is recognized as a ground net name.

◆ isCLOCK()

bool CRL::Environment::isCLOCK ( const char *  name) const

Returns: true if name is recognized as a clock net name.

◆ isBLOCKAGE()

bool CRL::Environment::isBLOCKAGE ( const char *  name) const

Returns: true if name is recognized as a blockage net name.

◆ isPad()

bool CRL::Environment::isPad ( const char *  name) const

Returns: true if name is recognized as a pad cell name.

◆ validate()

void CRL::Environment::validate ( ) const

Check for the coherency of the various environement variables. Throw an exception if something incoherent is found.

◆ setDisplayStyle()

void CRL::Environment::setDisplayStyle ( const char *  name)
inline

Sets the current display style to name.

◆ setSCALE_X()

void CRL::Environment::setSCALE_X ( long  value)
inline

Sets the default scaling factor used if omitted in an AP file.

◆ setDISPLAY()

void CRL::Environment::setDISPLAY ( const char *  value)
inline

Sets the path toward the file holding the display datas. Data to initialize the various Hurricane::DrawingStyle.

◆ setIN_LO()

void CRL::Environment::setIN_LO ( const char *  value)
inline

Sets the input format for logical (netlist) files.

◆ setIN_PH()

void CRL::Environment::setIN_PH ( const char *  value)
inline

Sets the input format for physical (layout) files.

◆ setOUT_LO()

void CRL::Environment::setOUT_LO ( const char *  value)
inline

Sets the output format for logical (netlist) files.

◆ setOUT_PH()

void CRL::Environment::setOUT_PH ( const char *  value)
inline

Sets the output format for physical (layout) files.

◆ setPOWER()

void CRL::Environment::setPOWER ( const char *  value)

Sets the pattern (regular expression) used to match for power nets names.

◆ setGROUND()

void CRL::Environment::setGROUND ( const char *  value)

Sets the pattern (regular expression) used to match for ground nets names.

◆ setCLOCK()

void CRL::Environment::setCLOCK ( const char *  value)

Sets the pattern (regular expression) used to match for clock nets names.

◆ setBLOCKAGE()

void CRL::Environment::setBLOCKAGE ( const char *  value)

With the Hurricane database you cannot create physical components whithout a net. All segments used for signaling blockage area are grouped inside a unique net, which name is given by this variable.

Remark: Be sure to use a significant name which is not likely to collide
with true nets.

◆ setPad()

void CRL::Environment::setPad ( const char *  value)

Sets the pattern (regular expression) used to match for pad cell names.

◆ setCATALOG()

void CRL::Environment::setCATALOG ( const char *  value)
inline

Sets the name of the auxiliary file in library directories holding the meta-informations about the cells.

◆ setWORKING_LIBRARY()

void CRL::Environment::setWORKING_LIBRARY ( const char *  value)

Sets the directory in which create cells will be saved.

◆ addSYSTEM_LIBRARY()

void CRL::Environment::addSYSTEM_LIBRARY ( const char *  value,
const char *  libName,
unsigned int  mode = Append 
)
Parameters
valuethe path (directory) in which the library is located.
libNamethe name under which to register the library.
modethe insertion mode. Adds a Cell library to the search path.

◆ getPrint()

std::string CRL::Environment::getPrint ( ) const

Returns: A nicely formatted string to resume the current environements settings. Mainly for verbose outputs on ttys.


The documentation for this class was generated from the following files:


Generated by doxygen 1.8.14 on Sun Nov 21 2021 Return to top of page
Coriolis Core (CRL) Copyright © 2008-2020 Sorbonne Universite, All rights reserved