torc-master
|
Represents a "bundle" in the EDIF sense. More...
#include <Bundle.hpp>
Public Types | |
typedef Composite< _Type > | BaseType |
typedef BaseType::Type | Type |
typedef BaseType::Pointer | Pointer |
typedef BaseType::List | List |
typedef BaseType::SizeType | SizeType |
typedef Type | ChildType |
typedef boost::weak_ptr< Type > | WeakPointer |
Public Member Functions | |
virtual | ~Bundle () throw () |
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) |
template<typename _Action > | |
void | applyOnAllChildren (const _Action &action) throw (Error) |
virtual const Pointer | get (const std::vector< SizeType > &indices) const throw (Error) |
virtual void | setParentCollection (const Pointer &inParentCollection) |
virtual Pointer | getParentCollection () const |
void | setWeakThis (const WeakPointer &inWeakThis) |
Pointer | getSharedThis () const |
Protected Member Functions | |
Bundle () | |
Private Attributes | |
List | mChildren |
Represents a "bundle" in the EDIF sense.
A bundle in EDIF is an ordered collection of items. For example a bundle of ports is a collection of other scalar and vector ports. The Bundle class represents an implementation of functionality for such a collection.
Definition at line 43 of file Bundle.hpp.
typedef Composite<_Type> torc::generic::Bundle< _Type >::BaseType |
Definition at line 48 of file Bundle.hpp.
typedef Type torc::generic::Bundle< _Type >::ChildType |
Definition at line 53 of file Bundle.hpp.
typedef BaseType::List torc::generic::Bundle< _Type >::List |
Definition at line 51 of file Bundle.hpp.
typedef BaseType::Pointer torc::generic::Bundle< _Type >::Pointer |
Definition at line 50 of file Bundle.hpp.
typedef BaseType::SizeType torc::generic::Bundle< _Type >::SizeType |
Definition at line 52 of file Bundle.hpp.
typedef BaseType::Type torc::generic::Bundle< _Type >::Type |
Definition at line 49 of file Bundle.hpp.
|
inherited |
Definition at line 56 of file Composite.hpp.
|
protected |
Definition at line 112 of file Bundle.hpp.
|
virtual |
Definition at line 114 of file Bundle.hpp.
|
virtual |
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 |
Definition at line 145 of file Bundle.hpp.
void torc::generic::Bundle< _Type >::applyOnAllChildren | ( | const _Action & | action | ) | |
throw | ( | Error | |||
) |
|
virtual |
Get a specific member of this composition.
Error | Index dimensions mismatch |
Implements torc::generic::Composite< _Type >.
Definition at line 180 of file Bundle.hpp.
|
virtual |
Get children of this composition.
[out] | outChildren | A list of all children for this composition |
Implements torc::generic::Composite< _Type >.
Definition at line 156 of file Bundle.hpp.
|
virtual |
Get composition type for this object
Implements torc::generic::Composite< _Type >.
Definition at line 121 of file Bundle.hpp.
|
inlinevirtualinherited |
Get a pointer to the parent collection
Definition at line 156 of file Composite.hpp.
|
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 |
|
virtual |
Get the total number of bits of the composition
Implements torc::generic::Composite< _Type >.
Definition at line 129 of file Bundle.hpp.
|
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) |
Definition at line 145 of file Composite.hpp.
|
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 |
|
private |
Definition at line 109 of file Bundle.hpp.