torc-master
|
Represents a bundle of nets. More...
#include <NetBundle.hpp>
Data Structures | |
class | Factory |
Public Types | |
typedef VisitorType< NetBundle > | Visitor |
typedef std::list < NetSharedPtr >::iterator | Connection |
typedef boost::signals2::signal< void(const NetSharedPtr &)> | Connected |
typedef boost::signals2::signal< void(const NetSharedPtr &)> | Disconnected |
typedef std::string | Name |
typedef Net | Type |
typedef boost::shared_ptr< Type > | Pointer |
typedef boost::weak_ptr< Type > | WeakPointer |
typedef std::vector< Pointer > | List |
typedef size_t | SizeType |
typedef Composite< Net > | BaseType |
typedef BaseType::Type | Type |
typedef BaseType::Pointer | Pointer |
typedef BaseType::List | List |
typedef BaseType::SizeType | SizeType |
typedef Type | ChildType |
Public Member Functions | |
virtual void | accept (BaseVisitor &inoutVisitor) throw (Error) |
virtual void | setParent (const ViewSharedPtr &inParent) |
virtual Connection | connect (const NetSharedPtr &inNet) throw (Error) |
void | disconnect (const Connection &inConnection) throw (Error) |
void | disconnect () throw (Error) |
virtual | ~NetBundle () throw () |
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 |
void | setSubnets (const std::vector< NetSharedPtr > &inSource) throw (Error) |
template<typename _Action > | |
void | applyOnAllSubnets (const _Action &action) throw (Error) |
NetSharedPtr | getParentNet () const |
void | setParentNet (const NetSharedPtr &inParent) |
const NetAttributesSharedPtr | getAttributes () const |
void | setAttributes (const NetAttributesSharedPtr &inSource) |
PortSharedPtr | findConnectedPort (const std::string &inName) throw (Error) |
virtual void | getConnectedPorts (std::vector< PortSharedPtr > &outPort, bool inSkipChildConnections=false) const |
template<typename _Action > | |
void | applyOnAllConnectedPorts (const _Action &action) throw (Error) |
virtual void | getConnectedPortLists (std::vector< PortListSharedPtr > &outPortList) const |
template<typename _Action > | |
void | applyOnAllConnectedPortLists (const _Action &action) throw (Error) |
void | disconnect (const std::string &inName) throw (Error) |
void | disconnect (const NetSharedPtr &net) throw (Error) |
PortReferenceSharedPtr | findConnectedPortReference (const std::string &inName) throw (Error) |
virtual void | getConnectedPortRefs (std::vector< PortReferenceSharedPtr > &outPortRefs, bool inSkipChildConnections=false) const |
template<typename _Action > | |
void | applyOnAllConnectedPortRefs (const _Action &action) throw (Error) |
void | addComment (const std::string &comment) |
const std::vector< std::string > & | getComments () const |
void | setComments (const std::vector< std::string > &inSource) |
Connected & | signalNetConnected () |
Disconnected & | signalNetDisconnected () |
virtual void | getConnectedNets (std::vector< NetSharedPtr > &outNets, bool inSkipChildConnections=false) const throw (Error) |
virtual const std::string | getName () const |
void | setName (const std::string &inSource) throw (Error) |
PropertySharedPtr | getProperty (const std::string &inName) |
bool | setProperty (const std::string &inName, const PropertySharedPtr &inProperty) |
void | getProperties (std::map< std::string, PropertySharedPtr > &outProperties) const |
void | setProperties (const std::map< std::string, PropertySharedPtr > &inSource) |
template<typename _Action > | |
void | applyOnAllProperties (const _Action &action) throw (Error) |
virtual Name | getOriginalName () const |
virtual void | setOriginalName (const Name &inSource) |
virtual CompositionType | getCompositionType () const =0 |
virtual size_t | getSize () const =0 |
virtual void | getChildren (List &outChildren) const =0 throw (Error) |
virtual const Pointer | get (const std::vector< SizeType > &inIndices) const =0 throw (Error) |
virtual void | setParentCollection (const Pointer &inParentCollection) |
virtual Pointer | getParentCollection () const |
void | setWeakThis (const WeakPointer &inWeakThis) |
Pointer | getSharedThis () const |
const boost::shared_ptr< View > | getParent () const |
virtual void | setParent (const boost::shared_ptr< View > &inSource) |
void | getUserData (std::list< std::string > &outUserData) const |
void | setUserData (const std::list< std::string > &inSource) |
void | addUserData (const std::string &inSource) |
virtual CompositionType | getCompositionType () const |
virtual SizeType | getSize () const |
virtual void | addChild (const boost::shared_ptr< Type > &child) throw (Error) |
virtual void | getChildren (List &outChildren) const throw (Error) |
void | applyOnAllChildren (const _Action &action) throw (Error) |
virtual const Pointer | get (const std::vector< SizeType > &indices) const throw (Error) |
Protected Member Functions | |
NetBundle () | |
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) |
virtual void | onConnect () throw (Error) |
virtual void | onDisconnect () throw (Error) |
Friends | |
class | FactoryType< NetBundle > |
Represents a bundle of nets.
The NetBundle class represents an EDIF net bundle. NetBundles are ordered collection of scalar and vector nets and can be created using the (nettBundle ...) syntax.
Definition at line 43 of file NetBundle.hpp.
|
inherited |
Definition at line 48 of file Bundle.hpp.
|
inherited |
Definition at line 53 of file Bundle.hpp.
|
inherited |
A signal to indicate that a new connection has been made
Definition at line 57 of file Connectable.hpp.
|
inherited |
A connection between a net and this object
Definition at line 52 of file Connectable.hpp.
|
inherited |
A signal to indicate that a connection has been removed
Definition at line 62 of file Connectable.hpp.
|
inherited |
Definition at line 51 of file Bundle.hpp.
|
inherited |
List of Shared Pointers to objects of type Type
Definition at line 61 of file Composite.hpp.
|
inherited |
Definition at line 40 of file generic/Renamable.hpp.
|
inherited |
Definition at line 50 of file Bundle.hpp.
|
inherited |
Shared Pointer to object of type Type
Definition at line 55 of file Composite.hpp.
|
inherited |
Definition at line 52 of file Bundle.hpp.
|
inherited |
Definition at line 62 of file Composite.hpp.
|
inherited |
Definition at line 49 of file Bundle.hpp.
|
inherited |
Definition at line 50 of file Composite.hpp.
Definition at line 50 of file NetBundle.hpp.
|
inherited |
Definition at line 56 of file Composite.hpp.
|
virtual |
Definition at line 150 of file NetBundle.cpp.
|
protected |
Definition at line 148 of file NetBundle.cpp.
|
virtual |
Implements torc::generic::Visitable.
Definition at line 67 of file NetBundle.cpp.
|
virtualinherited |
Add a child to the bundle. Note that, the new element is added to the end of the array.
[in] | child | A pointer to a child |
Error | The composition is not a container or the child type is not proper |
|
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.
|
protectedinherited |
Connect a port to this net.
[in] | inPort | port to be added. Empty pointer is ignored. |
Error | Could not add Port, because Port name is empty |
Error | Could not add Port, because Port name is already exists |
Definition at line 147 of file generic/Net.cpp.
|
protectedinherited |
Definition at line 218 of file generic/Net.cpp.
|
protectedinherited |
Connect a port reference to this net.
[in] | inPortRef | Port reference to be added |
Error | Could not add port reference |
Definition at line 247 of file generic/Net.cpp.
|
inherited |
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
|
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 |
Definition at line 63 of file generic/Net.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.
|
inherited |
|
inlineinherited |
Apply action on all connected port lists.
[in] | action | Action to be applied |
Definition at line 317 of file generic/Net.hpp.
|
inlineinherited |
Apply action on all connected port refs.
[in] | action | Action to be applied |
Definition at line 327 of file generic/Net.hpp.
|
inlineinherited |
Apply action on all connected ports.
[in] | action | Action to be applied |
Definition at line 307 of file generic/Net.hpp.
|
inlineinherited |
Apply action on all properties.
[in] | action | Action to be applied |
Definition at line 113 of file PropertyContainer.hpp.
|
inlineinherited |
Apply action on all Subnets.
[in] | action | Action to be applied |
Definition at line 284 of file generic/Net.hpp.
|
virtual |
Connect the given net with this net. During connection, a none-to-one correspondence is maintained, and all children of the given net are connected to the children of the current net. As a result, if the given net is a preserved vector, it will be exploded.
[in] | inNet | Net to be connected to the current net |
Error | Provided connection is invalid, because pointer to the Net does not exist
|
Error | Net size does not match with NetBundle size |
Implements torc::generic::Connectable.
Definition at line 77 of file NetBundle.cpp.
|
virtual |
Implements torc::generic::Connectable.
Definition at line 107 of file NetBundle.cpp.
|
virtual |
Reimplemented from torc::generic::Net.
Definition at line 132 of file NetBundle.cpp.
|
inherited |
Disconnect the named Net from this object.
[in] | inName | Name of the net to be Disconnected |
Error | Provided net was not found |
Disconnect the named Net from this object.
[in] | inNname | Name of the net to be Disconnected |
Error | Provided net was not found |
Definition at line 111 of file Connectable.cpp.
|
inherited |
Disconnect the given Net from this object.
[in] | net | Pointer to a net |
Error | Provided net was not found |
Disconnect the given Net from this object.
[in] | inNet | Pointer to a net |
Error | Provided net was not found |
Definition at line 128 of file Connectable.cpp.
|
inherited |
Find a port connected to this net.
[in] | inName | Name of the port. If not found, empty pointer is returned |
Definition at line 166 of file generic/Net.cpp.
|
inherited |
Find a port reference connected to this net.
[in] | inName | Name of the port reference. If not found, empty pointer is returned |
Definition at line 266 of file generic/Net.cpp.
|
inherited |
Find a subnet from belonging to this net.
[in] | inName | Name of the subnet. If not found, empty pointer is returned |
Definition at line 85 of file generic/Net.cpp.
|
virtualinherited |
Get a specific member of this composition.
Error | Index dimensions mismatch |
Implements torc::generic::Composite< Net >.
|
pure virtualinherited |
Get a specific member of this composition.
[in] | inIndices | A list of indices to be accessed. The number of indices must be equal to the number of dimensions. |
Error | Index dimensions mismatch |
Implemented in torc::generic::Vector< Net, VectorNetBit, VectorNetBit::Factory, true >, torc::generic::Bundle< Net >, torc::generic::VectorBit< Net >, and torc::generic::Scalar< Net >.
|
inlineinherited |
Get the attributes of the net. Attributes include criticality, netDelay etc.
Definition at line 303 of file generic/Net.hpp.
|
virtualinherited |
Get children of this composition.
[out] | outChildren | A list of all children for this composition |
|
pure virtualinherited |
Get children of this composition.
[out] | outChildren | A list of all children for this composition |
Implemented in torc::generic::Vector< Net, VectorNetBit, VectorNetBit::Factory, true >, torc::generic::Scalar< Net >, and torc::generic::VectorBit< Net >.
|
inlineinherited |
Get the list of all comments
Definition at line 85 of file Commentable.hpp.
|
virtualinherited |
Get composition type for this object
Implements torc::generic::Composite< Net >.
|
pure virtualinherited |
Get the type of this composition.
Implemented in torc::generic::Vector< Net, VectorNetBit, VectorNetBit::Factory, true >, torc::generic::Bundle< Net >, torc::generic::VectorBit< Net >, and torc::generic::Scalar< Net >.
|
virtualinherited |
Get the vector of Nets that are Connected to the current object. The connected elements are appended to the given vector
[out] | outNets | A vector of Connected nets |
Get the vector of Nets that are Connected to the current object. The connected elements are appended to the given vector
Reimplemented in torc::generic::VectorPortReference, torc::generic::VectorNet, torc::generic::VectorPort, torc::generic::VectorNetBit, torc::generic::VectorPortBit, and torc::generic::VectorPortBitReference.
Definition at line 45 of file Connectable.cpp.
|
virtualinherited |
Appends vector of connected port lists
[in] | outPortList | vector of port lists to be appended to |
Definition at line 213 of file generic/Net.cpp.
|
virtualinherited |
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.
Definition at line 279 of file generic/Net.cpp.
|
virtualinherited |
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.
Definition at line 179 of file generic/Net.cpp.
|
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
|
inlinevirtualinherited |
Get a pointer to the parent collection
|
inlineinherited |
Definition at line 294 of file generic/Net.hpp.
|
inlineinherited |
Get the map of all properties
[out] | outProperties | The map of properties |
Get the map of all properties
Definition at line 107 of file PropertyContainer.hpp.
|
inherited |
Get a property
[in] | inName | Name of the property to be retreived |
Get a property
[in] | name | Name of the property to be retreived |
Definition at line 37 of file PropertyContainer.cpp.
|
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 |
|
virtualinherited |
Get the total number of bits of the composition
Implements torc::generic::Composite< Net >.
|
pure virtualinherited |
Get the total number of bits of the composition
Implemented in torc::generic::Vector< Net, VectorNetBit, VectorNetBit::Factory, true >, torc::generic::Bundle< Net >, torc::generic::VectorBit< Net >, and torc::generic::Scalar< Net >.
|
inlineinherited |
Definition at line 279 of file generic/Net.hpp.
|
inlineinherited |
Get the list of all userData
[out] | outUserData | The list of all userData |
Definition at line 78 of file UserDataContainer.hpp.
|
protectedvirtualinherited |
A polymorphic function that is called after a net is Connected to this object
Definition at line 144 of file Connectable.cpp.
|
protectedvirtualinherited |
A polymorphic function that is called after a net is Disconnected from this object
Definition at line 149 of file Connectable.cpp.
|
protectedinherited |
Definition at line 185 of file generic/Net.cpp.
|
protectedinherited |
Definition at line 226 of file generic/Net.cpp.
|
protectedinherited |
Definition at line 285 of file generic/Net.cpp.
|
inherited |
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.
|
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. |
Definition at line 99 of file generic/Net.cpp.
|
inherited |
Set the attributes of the net. Attributes include criticality, netDelay etc.
[in] | inSource | Pointer to NetAttributes object. |
Definition at line 122 of file generic/Net.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.
|
protectedinherited |
Definition at line 298 of file generic/Net.cpp.
|
protectedinherited |
Definition at line 199 of file generic/Net.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 |
|
virtual |
Definition at line 71 of file NetBundle.cpp.
|
inlinevirtualinherited |
Set a pointer to a parnt composition.
[in] | inParentCollection | pointer to the parent collection (Vector/Bundle) |
Set a pointer to a parnt composition.
[in] | parentCollection | pointer to the parent collection (Vector/Bundle) |
|
inherited |
Definition at line 113 of file generic/Net.cpp.
|
inherited |
Set the map of properties
[in] | inSource | The map of properties |
Definition at line 66 of file PropertyContainer.cpp.
|
inherited |
Save the inSource of a property
[in] | inName | Name of the property to be saved |
[in] | inProperty | Pointer to the property object if present, empty pointer otherwise. |
Save the inSource of a property
[in] | inName | Name of the property to be saved |
[in] | inPoperty | Pointer to the property object if present, empty pointer otherwise. |
Definition at line 53 of file PropertyContainer.cpp.
|
inherited |
Definition at line 126 of file generic/Net.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 |
|
inlineinherited |
A signal to indicate that a new connection has been made
Definition at line 167 of file Connectable.hpp.
|
inlineinherited |
A signal to indicate that a new connection has been made
Definition at line 174 of file Connectable.hpp.
|
friend |
Definition at line 47 of file NetBundle.hpp.