torc::generic::PortBundle Class Reference

Represents a bundle of ports. More...

#include <PortBundle.hpp>

Inheritance diagram for torc::generic::PortBundle:

Inheritance graph
[legend]
Collaboration diagram for torc::generic::PortBundle:

Collaboration graph
[legend]

List of all members.

Public Types

typedef VisitorType< PortBundleVisitor

Public Member Functions

virtual void setParent (const ViewSharedPtr &inParent) throw ()
virtual Connectable::Connection connect (const NetSharedPtr &inNet) throw (Error)
void disconnect (const Connectable::Connection &inConnection) throw (Error)
virtual void accept (BaseVisitor &inoutVisitor) throw (Error)

Friends

class FactoryType< PortBundle >

Classes

class  Factory


Detailed Description

Represents a bundle of ports.

The PortBundle class represents an EDIF port bundle. PortBundles are ordered collection of scalar and vector ports and can be created using the (portBundle ...) syntax.

Definition at line 47 of file PortBundle.hpp.


Member Function Documentation

Connectable::Connection torc::generic::PortBundle::connect ( const NetSharedPtr &  inNet  )  throw (Error) [virtual]

Connect a Net to this object.

Note:
This metod can be overridden by derived classes. However, the method must call the on_connected() method after this. The sigConnected_ signal must also be invoked in the overriding method.
Parameters:
[in] inNet A pointer to the Net object that needs to be connected
Returns:
A connection that has been established. This can be used later for disconnection.
Exceptions:
Error Pointer to the Net object does not exists
  • Id : eMessageIdErrorPointerToItemDoesNotExist
  • Context Data
    • Pointe to Net object - boost::shared_ptr
Error Net size does not match with port bundle size
  • Id : eMessageIdErrorItemSizeMismatch
  • Context Data
    • Net Size - SizeType
    • Port Size - SizeType
Connect a Net to this object.

Note:
This metod can be overridden by derived classes. However, the method must call the on_connected() method after this. The sigConnected_ signal must also be invoked in the overriding method.
Parameters:
[in] inNet A pointer to the Net object that eeds to be connected
Returns:
A connection that has been established. This can be used later for disconnection.

Implements torc::generic::Connectable.

Definition at line 63 of file PortBundle.cpp.

void torc::generic::PortBundle::disconnect ( const Connectable::Connection inConnection  )  throw (Error) [virtual]

Disconnect a Net from this object.

Note:
This metod can be overridden by derived classes. However, the method must call the on_connected() method after this. The sigConnected_ signal must also be invoked in the overriding method.
Parameters:
[in] inConnection A connection as returned by the connect() method
Exceptions:
Error Provided connection is invalid, because pointer to the Net does not exist
  • Id : eMessageIdErrorPointerToItemDoesNotExist
  • Context Data
    • Pointer to Net - boost::shared_ptr
Disconnect a Net from this object.
Note:
This metod can be overridden by derived classes. However, the method must call the on_connected() method after this. The sigConnected_ signal must also be invoked in the overriding method.
Parameters:
[in] connection A connection as returned by the connect() method
Exceptions:
Error Provided connection is invalid, because pointer to the Net does not exist

Implements torc::generic::Connectable.

Definition at line 128 of file PortBundle.cpp.

void torc::generic::PortBundle::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.

Parameters:
[in,out] inoutVisitor A reference to the inoutVisitor object
Exceptions:
Error Visitor type inappropriate for visiting this object or any other error thrown by the Visitor::throw() method.

Implements torc::generic::Visitable.

Definition at line 221 of file PortBundle.cpp.


The documentation for this class was generated from the following files:

Generated on Thu Oct 13 16:50:17 2011 for TORC by  doxygen 1.5.6