#include <Cell.hpp>
Public Types | |
enum | Type { eTypeTie = 0, eTypeRipper, eTypeGeneric } |
typedef VisitorType< Cell > | Visitor |
Public Member Functions | |
virtual void | accept (BaseVisitor &inoutVisitor) throw (Error) |
const Type | getType () const throw () |
void | setType (const Type &inSource) throw () |
void | addView (const ViewSharedPtr &inView) throw (Error) |
ViewSharedPtr | findView (const std::string &inName) throw () |
void | removeView (const std::string &inName) throw (Error) |
void | getViews (std::vector< ViewSharedPtr > &outViews) const throw () |
template<typename _Action> | |
void | applyOnAllViews (const _Action &action) throw (Error) |
Private Member Functions | |
Cell (const Cell &rhs) | |
Cell & | operator= (const Cell &rhs) |
Private Attributes | |
SymTab< std::string, ViewSharedPtr > | mViewSymTab |
Type | mType |
ParameterMapSharedPtr | mParameters |
Friends | |
class | FactoryType< Cell > |
Classes | |
class | Factory |
The Cell class is used to implement an EDIF cell object. It contains the different views of a cell. A cell can be concrete or extern (black-box).
Definition at line 57 of file Cell.hpp.
typedef VisitorType<Cell> torc::generic::Cell::Visitor |
void torc::generic::Cell::accept | ( | BaseVisitor & | inoutVisitor | ) | throw (Error) [virtual] |
Recive a inoutVisitor to this class. The visit method of the inoutVisitor is called and a reference to this object is passed as a parameter. It has to be noted however, that a dynamic_cast is performed inside this method. If the cast fails, an appropriate exception is thrown by this method. This sitation can arise when the passed Visitor object does not inherit from the appropriate inoutVisitor specialization. See Visitor documentation for more details.
[in,out] | inoutVisitor | A reference to the inoutVisitor object |
Error | Visitor type inappropriate for visiting this object or any other error thrown by the Visitor::throw() method. |
Implements torc::generic::Visitable.
const Cell::Type torc::generic::Cell::getType | ( | void | ) | const throw () [inline] |
void torc::generic::Cell::setType | ( | const Type & | inSource | ) | throw () |
void torc::generic::Cell::addView | ( | const ViewSharedPtr & | inView | ) | throw (Error) |
Add a view to the list of views. An empty pointer will be ignored. If an view already exists in EDIF file in same cell, parser ignores the view.
[in] | inView | Pointer to a view. |
Error | Empty View type
| |
Error | View name already exists
|
[in] | inView | Pointer to a view. |
ViewSharedPtr torc::generic::Cell::findView | ( | const std::string & | inName | ) | throw () |
Find a view by name.
[in] | inName | Name of the cell to be found. |
[in] | inName | Name of the cell to be found. |
void torc::generic::Cell::removeView | ( | const std::string & | inName | ) | throw (Error) |
Remove the specified pointer from the view. Empty pointer is ignored.
[in] | inName | name of the object to be removed |
[in] | inName | name of object to be removed |
void torc::generic::Cell::getViews | ( | std::vector< ViewSharedPtr > & | outViews | ) | const throw () [inline] |
void torc::generic::Cell::applyOnAllViews | ( | const _Action & | action | ) | throw (Error) [inline] |