Wallaroo
0.8
|
#include <collaborator.h>
Public Types | |
typedef Ownership< T > | Ptr |
typedef cxx0x::shared_ptr< T > | SharedPtr |
Public Member Functions | |
Collaborator (const std::string &name, const RegToken &token) | |
void | Link (const cxx0x::shared_ptr< Part > &dev) |
SharedPtr | operator-> () |
const SharedPtr | operator-> () const |
operator SharedPtr () | |
operator const SharedPtr () const | |
operator bool () const | |
virtual bool | WiringOk () const |
Public Member Functions inherited from wallaroo::Dependency | |
virtual | ~Dependency () |
This represents a "collaborator" of a "part" that you can link with another "part".
If the part1 has the collaborator1 linked to part2, part1 will basically get a pointer to part2.
T | The type of the Part contained |
P | This represents the kind of Collaborator (mandatory if you must link a part (this is the default), optional if you can leave this collaborator unlinked, collection if you can link many parts to this collaborator, bounded_collection if you need to specify the lower and/or upper bound for the number of parts you can link to this collaborator). |
Container | If P = collection, this represents the std container the Collaborator will derive from. |
Ownership |
typedef Ownership< T > wallaroo::Collaborator< T, P, Ownership >::Ptr |
typedef cxx0x::shared_ptr< T > wallaroo::Collaborator< T, P, Ownership >::SharedPtr |
|
inline |
Create a Collaborator and register it to its Part for later wiring.
name | The name of this collaborator |
token | The registration token you can get by calling Part::RegistrationToken() |
|
inlinevirtual |
Link this collaborator with a Part
dev | The part you want link with this collaborator |
WrongType | If dev is not a subclass of T |
Implements wallaroo::Dependency.
|
inline |
Returns true if the collaborator has been wired and the embedded part has not been deleted.
|
inline |
Convert to a const shared ptr.
DeletedPartError | If the embedded part has been deleted. |
|
inline |
Convert to a shared ptr.
DeletedPartError | If the embedded part has been deleted. |
|
inline |
Give access to the embedded part.
DeletedPartError | If the embedded part has been deleted. |
|
inline |
Give access to the embedded part as const.
DeletedPartError | If the embedded part has been deleted. |
|
inlinevirtual |
Check if this Collaborator is correctly wired according to the P template parameter policy.
Implements wallaroo::Dependency.