19 #ifndef TORC_PHYSICAL_DESIGN_HPP
20 #define TORC_PHYSICAL_DESIGN_HPP
59 Design(
const string& inName,
const string& inDevice,
const string& inPackage,
60 const string& inSpeedGrade,
const string& inXdlVersion) :
Circuit(inName),
84 ModuleSharedPtrVector::iterator e =
mModules.end();
85 ModuleSharedPtrVector::iterator result =
findModule(inModulePtr->getName());
86 if(result == e)
mModules.push_back(inModulePtr);
96 ModuleSharedPtrVector::iterator e =
mModules.end();
97 ModuleSharedPtrVector::iterator result = std::find(
mModules.begin(), e, inModulePtr);
98 if(result == e)
return false;
142 #endif // TORC_PHYSICAL_DESIGN_HPP
Design(const string &inName, const string &inDevice, const string &inPackage, const string &inSpeedGrade, const string &inXdlVersion)
Protected constructor. Designs must be created by the Factory.
Header for the Module class.
const string & getPackage(void) const
Returns the device package for this design.
bool addModule(ModuleSharedPtr &inModulePtr)
Add a module to the design.
std::vector< DesignSharedPtr > DesignSharedPtrVector
Vector of Design shared pointers.
ModuleSharedPtrVector::const_iterator ModuleSharedPtrConstIterator
Constant iterator for Module shared pointers.
std::string string
Imported type name.
ModuleSharedPtrConstIterator modulesEnd(void) const
Returns the end constant iterator for modules.
ModuleSharedPtrConstIterator modulesBegin(void) const
Returns the begin constant iterator for modules.
string mXdlVersion
The XDL version specified for this design.
boost::shared_ptr< Module > ModuleSharedPtr
Shared pointer encapsulation of a Module.
ModuleSharedPtrVector mModules
Vector of module shared pointers.
Comparator class to serve as a predicate when searching for names.
void setXdlVersion(const string &inXdlVersion)
Sets the XDL version for this design.
void setDevice(const string &inDevice)
Sets the target device for this design.
ModuleSharedPtrIterator findModule(const string &inName)
Find a design module by name.
string mSpeedGrade
The device speed grade specified for this design.
Factory class for physical netlist elements.
boost::shared_ptr< Design > DesignSharedPtr
Shared pointer encapsulation of a Design.
string mPackage
The device package specified for this design.
void setPackage(const string &inPackage)
Sets the device package for this design.
void setSpeedGrade(const string &inSpeedGrade)
Sets the device speed grade for this design.
const string & getXdlVersion(void) const
Returns the XDL version for this design.
size_t getModuleCount(void) const
Returns the number of modules in the design.
Header for the Circuit class.
bool removeModule(ModuleSharedPtr &inModulePtr)
Remove a module from the design.
ModuleSharedPtrVector::iterator ModuleSharedPtrIterator
Non-constant iterator for Module shared pointers.
const string & getSpeedGrade(void) const
Returns the device speed grade for this design.
const string & getDevice(void) const
Returns the target device for this design.
Circuit composed of instances and nets.
WeakPtrType mSelfWeakPtr
Weak pointer this object.
std::vector< ModuleSharedPtr > ModuleSharedPtrVector
Vector of Module shared pointers.
ModuleSharedPtrIterator modulesEnd(void)
Returns the end non-constant iterator for modules.
ModuleSharedPtrIterator modulesBegin(void)
Returns the begin non-constant iterator for modules.
string mDevice
The target device specified for this design.