#include <Module.hpp>
Public Types | |
typedef PortSharedPtrVector::const_iterator | PortSharedPtrConstIterator |
Constant iterator to Port shared pointers. | |
typedef PortSharedPtrVector::iterator | PortSharedPtrIterator |
Non-constant iterator to Port shared pointers. | |
Public Member Functions | |
PortSharedPtrIterator | findPort (const string &inName) |
Find a port by name. | |
bool | addPort (PortSharedPtr &inPortPtr) |
Add a port to the module. | |
bool | removePort (PortSharedPtr &inPortPtr) |
const string & | getAnchor (void) const |
Returns the anchor instance name for this module. | |
void | setAnchor (const string &inAnchor) |
Sets the anchor instance name for this module. | |
PortSharedPtrConstIterator | portsBegin (void) const |
Returns the begin constant iterator for ports. | |
PortSharedPtrConstIterator | portsEnd (void) const |
Returns the end constant iterator for ports. | |
PortSharedPtrIterator | portsBegin (void) |
Returns the begin non-constant iterator for ports. | |
PortSharedPtrIterator | portsEnd (void) |
Returns the end non-constant iterator for ports. | |
size_t | getPortCount (void) const |
Returns the number of ports in the module. | |
bool | operator== (const Module &rhs) const |
Equality operator. | |
Protected Types | |
typedef std::string | string |
Imported type name. | |
Protected Member Functions | |
Module (const string &inName, const string &inAnchor) | |
Protected constructor. | |
Protected Attributes | |
string | mAnchor |
The module anchor instance name. | |
PortSharedPtrVector | mPorts |
Vector of Port shared pointers for the module. | |
Friends | |
class | Factory |
The Factory class has direct access to our internals. |
Modules are used for hard macros in the Xilinx tool flow. For most users, modules never appear in XDL netlists, either because the design did not use hard macros, or because those hard macros were flattened as instances and nets directly in the design.
Definition at line 33 of file Module.hpp.
typedef std::string torc::physical::Module::string [protected] |
Imported type name.
Reimplemented from torc::physical::Circuit.
Definition at line 40 of file Module.hpp.
typedef PortSharedPtrVector::const_iterator torc::physical::Module::PortSharedPtrConstIterator |
typedef PortSharedPtrVector::iterator torc::physical::Module::PortSharedPtrIterator |
torc::physical::Module::Module | ( | const string & | inName, | |
const string & | inAnchor | |||
) | [inline, protected] |
Protected constructor.
inName | The module name. | |
inAnchor | The anchor instance name for the module. The anchor designates the instance in the module relative to which the module will be placed. |
Definition at line 51 of file Module.hpp.
PortSharedPtrIterator torc::physical::Module::findPort | ( | const string & | inName | ) | [inline] |
Find a port by name.
inName | The port name to look for. |
Definition at line 62 of file Module.hpp.
bool torc::physical::Module::addPort | ( | PortSharedPtr & | inPortPtr | ) | [inline] |
Add a port to the module.
inPortPtr | The port to add. |
Definition at line 70 of file Module.hpp.
bool torc::physical::Module::removePort | ( | PortSharedPtr & | inPortPtr | ) | [inline] |
const string& torc::physical::Module::getAnchor | ( | void | ) | const [inline] |
void torc::physical::Module::setAnchor | ( | const string & | inAnchor | ) | [inline] |
PortSharedPtrConstIterator torc::physical::Module::portsBegin | ( | void | ) | const [inline] |
PortSharedPtrConstIterator torc::physical::Module::portsEnd | ( | void | ) | const [inline] |
PortSharedPtrIterator torc::physical::Module::portsBegin | ( | void | ) | [inline] |
PortSharedPtrIterator torc::physical::Module::portsEnd | ( | void | ) | [inline] |
size_t torc::physical::Module::getPortCount | ( | void | ) | const [inline] |
bool torc::physical::Module::operator== | ( | const Module & | rhs | ) | const [inline] |
Equality operator.
This function deems modules equal if their names are identical.
rhs | The module to compare against. |
Definition at line 110 of file Module.hpp.
friend class Factory [friend] |
The Factory class has direct access to our internals.
Reimplemented from torc::physical::Progenitor< T >.
Definition at line 36 of file Module.hpp.
string torc::physical::Module::mAnchor [protected] |
PortSharedPtrVector torc::physical::Module::mPorts [protected] |