#include <Net.hpp>
Public Member Functions | |
void | addSubnet (const NetSharedPtr &inSubnet) throw (Error) |
NetSharedPtr | findSubnet (const std::string &inName) throw (Error) |
void | removeSubnet (const std::string &inName) throw (Error) |
void | getSubnets (std::vector< NetSharedPtr > &outSubnets) const throw () |
void | setSubnets (const std::vector< NetSharedPtr > &inSource) throw (Error) |
template<typename _Action> | |
void | applyOnAllSubnets (const _Action &action) throw (Error) |
NetSharedPtr | getParentNet () const throw () |
void | setParentNet (const NetSharedPtr &inParent) throw () |
const NetAttributesSharedPtr | getAttributes () const throw () |
void | setAttributes (const NetAttributesSharedPtr &inSource) throw () |
PortSharedPtr | findConnectedPort (const std::string &inName) throw (Error) |
virtual void | getConnectedPorts (std::vector< PortSharedPtr > &outPort, bool inSkipChildConnections=false) const throw () |
template<typename _Action> | |
void | applyOnAllConnectedPorts (const _Action &action) throw (Error) |
virtual void | getConnectedPortLists (std::vector< PortListSharedPtr > &outPortList) const throw () |
template<typename _Action> | |
void | applyOnAllConnectedPortLists (const _Action &action) throw (Error) |
virtual void | disconnect () throw (Error) |
PortReferenceSharedPtr | findConnectedPortReference (const std::string &inName) throw (Error) |
virtual void | getConnectedPortRefs (std::vector< PortReferenceSharedPtr > &outPortRefs, bool inSkipChildConnections=false) const throw () |
template<typename _Action> | |
void | applyOnAllConnectedPortRefs (const _Action &action) throw (Error) |
Protected Member Functions | |
void | addConnectedPort (const PortSharedPtr &inPort) throw (Error) |
void | removeConnectedPort (const PortSharedPtr &inPort) throw (Error) |
void | addConnectedPortList (const PortListSharedPtr &inPort) throw (Error) |
void | removeConnectedPortList (const PortListSharedPtr &inList) throw (Error) |
void | setConnectedPorts (const std::vector< PortSharedPtr > &inSource) throw (Error) |
void | addConnectedPortReference (const PortReferenceSharedPtr &portRef) throw (Error) |
void | removeConnectedPortReference (const PortReferenceSharedPtr &inPortRef) throw (Error) |
void | setConnectedPortRefs (const std::vector< PortReferenceSharedPtr > &inSource) throw (Error) |
Private Member Functions | |
Net (const Net &source) throw () | |
Net & | operator= (const Net &source) throw () |
Private Attributes | |
SymTab< std::string, NetSharedPtr, true > | mSubnets |
std::list< PortSharedPtr > | mConnectedPorts |
std::list< PortListSharedPtr > | mConnectedPortLists |
std::list< PortReferenceSharedPtr > | mConnectedPortRefs |
NetSharedPtr | mParentNet |
NetAttributesSharedPtr | mAttributes |
Friends | |
class | ConnectionHandler |
The Net class is an interface to EDIF nets. Net is an interface for scalar nets , vector nets , vector nets bits and net bundles. This class provides a simplified view of all three types of nets. To get a handle to an actual net, the client will have to use a Visitor with proper overloads of the visit() function, or dynamic_cast can be used. The latter method is however not recommended. A net object supports storing properties for storing different EDIF properties. See documentation of the Property and PropertyContainer classes for more details.
Definition at line 56 of file Net.hpp.
void torc::generic::Net::addSubnet | ( | const NetSharedPtr & | inSubnet | ) | throw (Error) |
Add a subnet to this net.
[in] | inSubnet | Subnet to be added |
Error | Could not add subnet, because subnet name is empty
| |
Error | Could not add subnet, because subnet name is already exists
|
[in] | inSubnet | Subnet to be added |
NetSharedPtr torc::generic::Net::findSubnet | ( | const std::string & | inName | ) | throw (Error) |
void torc::generic::Net::removeSubnet | ( | const std::string & | inName | ) | throw (Error) |
Remove a subnet from this net.
inName | Name of the object to be delete |
Error | Could not remove subnet, because subnet name is empty
| |
Error | Could not remove subnet, because subnet not present.
|
inName | Name of the object to be delete |
void torc::generic::Net::applyOnAllSubnets | ( | const _Action & | action | ) | throw (Error) [inline] |
const NetAttributesSharedPtr torc::generic::Net::getAttributes | ( | ) | const throw () [inline] |
Get the attributes of the net. Attributes include criticality, netDelay etc.
void torc::generic::Net::setAttributes | ( | const NetAttributesSharedPtr & | inSource | ) | throw () |
Set the attributes of the net. Attributes include criticality, netDelay etc.
[in] | inSource | Pointer to NetAttributes object. |
void torc::generic::Net::addConnectedPort | ( | const PortSharedPtr & | inPort | ) | throw (Error) [protected] |
PortSharedPtr torc::generic::Net::findConnectedPort | ( | const std::string & | inName | ) | throw (Error) |
void torc::generic::Net::getConnectedPorts | ( | std::vector< PortSharedPtr > & | outPort, | |
bool | inSkipChildConnections = false | |||
) | const throw () [virtual] |
Appends vector of connected ports
[in] | outPort | vector of port to be appended to |
[in] | inSkipChildConnections | Return only ports connected to this port and skip returning elements that have been connected to the child |
Reimplemented in torc::generic::VectorNet, and torc::generic::VectorNetBit.
void torc::generic::Net::applyOnAllConnectedPorts | ( | const _Action & | action | ) | throw (Error) [inline] |
void torc::generic::Net::getConnectedPortLists | ( | std::vector< PortListSharedPtr > & | outPortList | ) | const throw () [virtual] |
void torc::generic::Net::applyOnAllConnectedPortLists | ( | const _Action & | action | ) | throw (Error) [inline] |
void torc::generic::Net::disconnect | ( | ) | throw (Error) [virtual] |
Disconnect all connections to this port.
Reimplemented from torc::generic::Connectable.
Reimplemented in torc::generic::NetBundle, and torc::generic::VectorNet.
void torc::generic::Net::addConnectedPortReference | ( | const PortReferenceSharedPtr & | inPortRef | ) | throw (Error) [protected] |
PortReferenceSharedPtr torc::generic::Net::findConnectedPortReference | ( | const std::string & | inName | ) | throw (Error) |
void torc::generic::Net::getConnectedPortRefs | ( | std::vector< PortReferenceSharedPtr > & | outPortRefs, | |
bool | inSkipChildConnections = false | |||
) | const throw () [virtual] |
Appends vector of connected port references
[in] | outPortRefs | vector of port refs to be appended to |
Reimplemented in torc::generic::VectorNet, and torc::generic::VectorNetBit.
void torc::generic::Net::applyOnAllConnectedPortRefs | ( | const _Action & | action | ) | throw (Error) [inline] |