torc-master
|
An EDIF cell library. More...
#include <Library.hpp>
Data Structures | |
class | Factory |
Public Types | |
typedef VisitorType< Library > | Visitor |
typedef std::string | Name |
typedef Library | Type |
typedef boost::shared_ptr< Type > | Pointer |
typedef boost::weak_ptr< Type > | WeakPointer |
Public Member Functions | |
virtual void | accept (BaseVisitor &inoutVisitor) throw (Error) |
const EdifLevel | getLevel () const |
void | setLevel (const EdifLevel &inSource) |
const std::map< Unit, ScaleFactor > | getScaleFactors () const |
bool | findScaleFactor (Unit inUnit, ScaleFactor &outResult) const |
bool | setScaleFactor (Unit inUnit, const ScaleFactor &inScale) |
void | addCell (const CellSharedPtr &inCell) throw (Error) |
virtual CellSharedPtr | findCell (const std::string &inName) throw (Error) |
void | removeCell (const std::string &inName) throw (Error) |
virtual void | getCells (std::vector< CellSharedPtr > &outCells) |
template<typename _Action > | |
void | applyOnAllCells (const _Action &action) throw (Error) |
const SimulationInfoSharedPtr | getSimulationInfo () const |
void | setSimulationInfo (const SimulationInfoSharedPtr &inSource) |
virtual | ~Library () throw () |
void | addComment (const std::string &comment) |
const std::vector< std::string > & | getComments () const |
void | setComments (const std::vector< std::string > &inSource) |
bool | getIsExtern () const |
bool | isExtern () const |
void | setIsExtern (bool inIsExtern) |
virtual const std::string | getName () const |
void | setName (const std::string &inSource) throw (Error) |
virtual Name | getOriginalName () const |
virtual void | setOriginalName (const Name &inSource) |
const boost::shared_ptr< Root > | getParent () const |
virtual void | setParent (const boost::shared_ptr< Root > &inSource) |
void | setWeakThis (const WeakPointer &inWeakThis) |
Pointer | getSharedThis () const |
void | getUserData (std::list< std::string > &outUserData) const |
void | setUserData (const std::list< std::string > &inSource) |
void | addUserData (const std::string &inSource) |
void | getStatuses (std::vector< StatusSharedPtr > &outStatus) const |
void | setStatuses (const std::vector< StatusSharedPtr > &inStatus) |
void | addStatus (const StatusSharedPtr &inStatus) throw (Error) |
template<typename _Action > | |
void | applyOnAllStatuses (const _Action &action) throw (Error) |
Protected Member Functions | |
Library () | |
Private Member Functions | |
Library (const Library &) | |
Library & | operator= (const Library &) |
Private Attributes | |
SymTab< Unit, ScaleFactor > | mScaleFactors |
EdifLevel | mLevel |
SymTab< std::string, CellSharedPtr > | mCellSymTab |
SimulationInfoSharedPtr | mSimulationInfo |
Friends | |
class | FactoryType< Library > |
An EDIF cell library.
A Library object defines a collection of EDIF libraries
Definition at line 60 of file Library.hpp.
|
inherited |
Definition at line 40 of file generic/Renamable.hpp.
|
inherited |
Definition at line 36 of file SelfReferencing.hpp.
|
inherited |
Definition at line 35 of file SelfReferencing.hpp.
Convenience typedef for visiting a library
Definition at line 73 of file Library.hpp.
|
inherited |
Definition at line 37 of file SelfReferencing.hpp.
|
virtual |
|
protected |
Definition at line 243 of file Library.cpp.
|
private |
|
virtual |
Implements torc::generic::Visitable.
Definition at line 89 of file Library.cpp.
void torc::generic::Library::addCell | ( | const CellSharedPtr & | inCell | ) | |
throw | ( | Error | |||
) |
Add a cell to the list of cells. If an empty pointer is supplied, it returns without doing anything. If an cell already exists in EDIF file in same library, parser ignores the cell.
[in] | inCell | A pointer to a cell object. |
Error | Cell could not be added, because Cell name is empty
|
Error | Cell could not be added, because Cell name is already exists
|
Add a cell to the list of cells. If an empty pointer is supplied, it returns without doing anything.
[in] | inCell | A pointer to a cell object. |
Definition at line 139 of file Library.cpp.
|
inherited |
Add a comment to the object
[in] | comment | The comment to add to an existing list of comments |
Definition at line 36 of file Commentable.cpp.
|
inherited |
Add a status to the vector of statuses. If an empty pointer is supplied, it returns without doing anything.
[in] | inStatus | A pointer to a status object. |
Add a status to the list of statuses. If an empty pointer is supplied, it returns without doing anything.
[in] | inStatus | A pointer to a status object. |
Definition at line 47 of file StatusContainer.cpp.
|
inherited |
Add an user data to the list of user data
[in] | inSource | An user data as string |
Definition at line 34 of file UserDataContainer.cpp.
|
inline |
Apply action on all Cells.
[in] | action | Action to be applied |
Apply action on all Cells.
[in] | action | Action to be applied |
Definition at line 325 of file Library.hpp.
|
inlineinherited |
Apply action on all statuses.
[in] | action | Action to be applied |
Definition at line 95 of file StatusContainer.hpp.
|
virtual |
Find a cell by name, in the list of cells.
[in] | inName | String inSource specifying the name of the cell. |
Error | Cell could not be found, because Cell name is empty
|
Find a cell by name, in the list of cells.
[in] | inName | String inSource specifying the name of the cell. |
Definition at line 173 of file Library.cpp.
bool torc::generic::Library::findScaleFactor | ( | Unit | inUnit, |
ScaleFactor & | outResult | ||
) | const |
Find a scale factor for the given unit.
[in] | inUnit | Units for which scale factor is to be found. |
[out] | outResult | The scale factor if found. |
Definition at line 117 of file Library.cpp.
|
virtual |
Get the list of cells. The list of cells is appended to the provided list
[out] | outCells | List of cells to be populated |
Get the list of cells.
Definition at line 227 of file Library.cpp.
|
inlineinherited |
Get the list of all comments
Definition at line 85 of file Commentable.hpp.
|
inlineinherited |
Get whether the item is an extern(placeholder) or an actual item.
Definition at line 86 of file Extern.hpp.
|
inline |
The the level of EDIF file.
Definition at line 305 of file Library.hpp.
|
inlinevirtualinherited |
Get the object name
Definition at line 89 of file Nameable.hpp.
|
inlinevirtualinherited |
Get the new name provided for the object.
Definition at line 78 of file generic/Renamable.hpp.
|
inlineinherited |
Get a pointer to the parent object
|
inline |
Get scale factors for different units in the library.
Definition at line 314 of file Library.hpp.
|
inlineinherited |
Get a shared pointer to this object. A valid pointer is returned if weakThis was set. Otherwise this returns a NULL pointer. For Vector types, the second scenario is an exception condition and should be treated as such.
Get a shared pointer to this object. A valid pointer is returned if weakThis was set. Otherwise this returns a NULL pointer. For Vector types, the second scenario is an exception condition and should be treated as such.
[out] | ptr | Set to a shared pointer to this object |
|
inline |
Get the pointer to the simulation info.
Definition at line 343 of file Library.hpp.
|
inlineinherited |
Get a vector of pointer to Status object
[out] | outStatus | The vector of pointer to Status object |
Definition at line 86 of file StatusContainer.hpp.
|
inlineinherited |
Get the list of all userData
[out] | outUserData | The list of all userData |
Definition at line 78 of file UserDataContainer.hpp.
|
inlineinherited |
Get whether the item is an extern(placeholder) or an actual item.
Definition at line 95 of file Extern.hpp.
void torc::generic::Library::removeCell | ( | const std::string & | inName | ) | |
throw | ( | Error | |||
) |
Remove the specified cell from the list of cells. If an empty pointer is passed, it returns without doing anything
inName | Name of the object to be delete |
Error | Cell name is empty
|
Error | Cell name not preset in collection.
|
Remove the specified cell from the list of cells. If an empty pointer is passed, it returns without doing anything
inCell | Pointer to a cell object. |
Definition at line 197 of file Library.cpp.
|
inherited |
Get the list of all comments
[in] | inSource | A list of all comments to be set on this object |
Definition at line 45 of file Commentable.cpp.
|
inherited |
Set whether an item is extern or not.
[in] | isExtern | True if extern, false otherwise |
Definition at line 35 of file Extern.cpp.
void torc::generic::Library::setLevel | ( | const EdifLevel & | inSource | ) |
Set the EDIF level.
[in] | inSource | EdifLevel object |
Definition at line 105 of file Library.cpp.
|
inherited |
Set a name for this object
[in] | inSource | Name of the object |
Error | Could not set name, because name is empty (Will be used by array members)
|
Set a name for this object
[in] | inSource | Name of the object |
Error | Could not set name, because name is empty (Will be used by array members) |
Definition at line 41 of file Nameable.cpp.
|
virtualinherited |
Set the new name provided for the object.
[in] | inSource | Name of the object |
Definition at line 35 of file generic/Renamable.cpp.
|
virtualinherited |
Set a pointer to the parent
[in] | inSource | Set a pointer to the parent |
bool torc::generic::Library::setScaleFactor | ( | Unit | inUnit, |
const ScaleFactor & | inScale | ||
) |
Set a scale factor for the given unit.
[in] | inUnit | Units for which scale factor is to be set. |
[out] | inScale | The scale factor to store. |
Set a scale factor for the given unit.
[in] | inUnit | Units for which scale factor is to be set. |
[out] | inScale | The scale factor to store. |
Definition at line 128 of file Library.cpp.
void torc::generic::Library::setSimulationInfo | ( | const SimulationInfoSharedPtr & | inSource | ) |
Set the pointer to the simulation info.
[in] | inSource | Pointer to the simulation info |
Definition at line 239 of file Library.cpp.
|
inherited |
Set a vector of pointer to Status object
[in] | inStatus | The vector of pointer to Status object |
Definition at line 32 of file StatusContainer.cpp.
|
inherited |
Set the list of userData
[in] | inSource | The list of UserData |
Definition at line 26 of file UserDataContainer.cpp.
|
inlineinherited |
Set a weak pointer to this object. This will be used later to get a shared pointer to this object from within other member methods if required. This should be called by the Factory creating the object.
[in] | weakThis | A weak pointer to this object |
|
friend |
Definition at line 67 of file Library.hpp.
|
private |
Definition at line 293 of file Library.hpp.
|
private |
Definition at line 292 of file Library.hpp.
|
private |
Definition at line 291 of file Library.hpp.
|
private |
Definition at line 294 of file Library.hpp.