32         size_t pos = name.find(
"[");
 
   33         if(pos != string::npos) 
return name.substr(pos);
 
   41         if(msbPtr && lsbPtr) {
 
   55         inRoot.applyOnAllDesigns(mVisitor);
 
   56         inRoot.applyOnAllLibraries(mVisitor);
 
   69         inLibrary.applyOnAllCells(mVisitor);
 
   74         string name = getName(inCell);
 
   75         mOut << 
"module " << name << 
" ";
 
   76         inCell.applyOnAllViews(mVisitor);
 
   77         mOut << 
"endmodule" << endl << endl;
 
   85         inView.getPorts(ports);
 
   87         PortSharedPtrVector::const_iterator pp = ports.begin();
 
   88         PortSharedPtrVector::const_iterator pe = ports.end();
 
   92             mOut << mTab << portPtr->getName();
 
   93             if(pp < pe) mOut << 
",";
 
   99         inView.applyOnAllPorts(mVisitor);
 
  100         inView.applyOnAllNets(mVisitor);
 
  101         inView.applyOnAllInstances(mVisitor);
 
  103         inView.applyOnAllProperties(mVisitor);
 
  107         inScalarPort.applyOnAllProperties(mVisitor);
 
  108         mOut << getDirection(inScalarPort) << 
" " << inScalarPort.getName() << 
";" << endl;
 
  112         inVectorPort.applyOnAllProperties(mVisitor);
 
  113         mOut << getDirection(inVectorPort) << 
" " << getRange(inVectorPort) << 
" " 
  114             << inVectorPort.getName() << 
";" << endl;
 
  128         vector<PortSharedPtr> ports;
 
  129         inScalarNet.getConnectedPorts(ports);
 
  130         if(ports.size() == 0) {
 
  133             mOut << 
"wire " << inScalarNet.getName();
 
  134             if(assignPtr) mOut << 
" = " << assignPtr->getValue().get<
Value::String>();
 
  137         inScalarNet.applyOnAllProperties(mVisitor);
 
  146         CellSharedPtr cellPtr = inSingleInstance.getMaster()->getParent();
 
  147         mOut << getName(*cellPtr) << 
" " << getName(inSingleInstance);
 
  151         inSingleInstance.getPortReferences(portReferences);
 
  152         bool hasPortReferences = portReferences.size() != 0;
 
  153         PortReferenceSharedPtrVector::const_iterator prp = portReferences.begin();
 
  154         PortReferenceSharedPtrVector::const_iterator pre = portReferences.end();
 
  155         if(hasPortReferences) mOut << 
"(";
 
  160             (portReferencePtr)->accept(*
this);
 
  161             if(prp < pre) mOut << 
", ";
 
  164         if(hasPortReferences) mOut << 
")";
 
  167         inSingleInstance.applyOnAllProperties(mVisitor);
 
  181         string name = getName(*(inScalarPortRef.getMaster()));
 
  182         mOut << 
"." << name << 
"(";
 
  184         inScalarPortRef.getConnectedNets(nets);
 
  185         NetSharedPtrVector::const_iterator np = nets.begin();
 
  186         NetSharedPtrVector::const_iterator ne = nets.end();
 
  187         if(nets.size() > 1) {} 
 
  190             mOut << getName(*netPtr);
 
  194         inScalarPortRef.applyOnAllProperties(mVisitor);
 
  198 mOut << 
"[VECTORPORTREFERENCE]";
 
  214 mOut << 
"[VECTORPORTBITREFERENCE]";
 
  234 mOut << 
"[PORTBUNDLEREFERENCE]";
 
  243         const string& name = inProperty.getName();
 
  244         const string torcPrefix = 
"torc_";
 
  246         Value propertyValue = inProperty.getValue();
 
  247         switch(propertyValue.
getType()) {
 
  255             value << 
"[MiNoMax]";
 
  267             value << 
"[unknown]";
 
  270         if(name.compare(0, torcPrefix.length(), torcPrefix) == 0) {
 
  274                 mOut << 
"// property " << name << endl;
 
  276             mOut << 
"defparam " << mPropertyContainerName << 
"." << name << 
" = "  
  277                 << value.str() << 
";" << endl;
 
Represents a bit of a net array. 
static string getImportedCellLibraryName(void)
Returns the imported cell library name. 
Header for the TemporaryAssignment class. 
Represents areference to a standalone port. 
Represents a reference to a port array. 
static string getTorcAssignRHSPropertyName(void)
Property name for the wire assignment right-hand-side. 
static string getTorcRangeMSBPropertyName(void)
Property name for the vector range MSB. 
This class is used within simulate to describe input stimuli and expected responces over a certain ti...
Represents a bundle of ports. 
Represents and EDIF View. 
Represents a bit of a port. 
Represents a member of an instance array. 
Permutable is used to describe a relationship in which ports are interchangeable. ...
void visit(Root &inroot)
Visit the top-level netlist. 
Represents a single instance of the view of a cell. 
This class is used to hold all information about the logic values used within a library. 
This class is used within simulationInfo construct to define a logic value to use for modeling in the...
static string getTorcRangeLSBPropertyName(void)
Property name for the vector range LSB. 
Template class that stores the current value of a variable and restores that value when this object g...
The Error object thrown by different methods of EdifOM. 
boost::shared_ptr< Net > NetSharedPtr
Represents a parameter array. 
boost::shared_ptr< PortReference > PortReferenceSharedPtr
Represents a standalone port. 
Represents the Interface joining information. 
This class is used to provide a set of path delays or timing constrains (forbidden events) ...
const Type getType() const 
Represents an array of instances. 
Represents a standalone net. 
std::vector< PortSharedPtr > PortSharedPtrVector
Vector of port shared pointers. 
ForbiddenEvent class lists events which are forbidden during a period of times which is specified by ...
Represents different logic elements which holds array of logic values. 
Represents an ordered list of port references with a name aliased. 
Represents a reference to a bit of a port. 
Represents an ordered list of port references. 
Header for the VerilogExporterVisitor class. 
Root of the EDIF Object Model. 
This class is used to model logicInput/logicOutput construct. This class holds information of logical...
This class is used within simulate to describe input stimuli and expected responces over a certain ti...
Represents a bundle of nets. 
boost::shared_ptr< Cell > CellSharedPtr
Event is used to describe an event on a port or a net using logic state transitions. Events can also be described for unordered groups of ports or nets using portGroup or netGroup. An ordered list of ports may also be used using a portList. 
Header for the VerilogNames class. 
std::vector< NetSharedPtr > NetSharedPtrVector
Vector of net shared pointers. 
boost::shared_ptr< Port > PortSharedPtr
boost::shared_ptr< Property > PropertySharedPtr
PropertySharedPtr getProperty(const std::string &inName)
This class is to model simulate construct which is a named collection of simulation stimulus and resp...
Represents EDIF status construct. 
Represents a reference to a bundle of ports. 
static string getInferredBlackBoxesLibraryName(void)
Returns the inferred black box library name. 
string getRange(VectorPort &inVectorPort)
Return a string describing the range of a vector port. The range is expressed in the form "[start:end...
virtual Name getOriginalName() const 
std::vector< PortReferenceSharedPtr > PortReferenceSharedPtrVector
Vector of port reference shared pointers.