Odyssey::Delegate Class Reference

Acts as a multiple call target container and invoker. More...

#include <delegate.h>

List of all members.

Public Member Functions

 Delegate ()
 Create a new, empty Delegate.
 Delegate (const Delegate &rhs)
 Share the data from the given Delegate with this one.
bool isEmpty () const
 Returns true if this Delegate is empty.
void clear ()
 Clears this Delegate so that it is empty.
void add (const Callable &callable)
 Adds a new callable to this delegate.
size_t getCallableCount () const
 Returns the number of callable targets in this Delegate.
Delegate & operator+= (const Callable &rhs)
 This operator adds a new callable.
Delegate & operator= (const Delegate &rhs)
 This operator shares the data from the given Delegate with this one.
void operator() () const
 This is the nullary operator.
template<class T0>
void operator() (T0 arg0) const
 This is the automatic typing 1-arity operator.
template<class T0, class T1>
void operator() (T0 arg0, T1 arg1) const
 This is the automatic typing 2-arity operator.
template<class T0, class T1, class T2>
void operator() (T0 arg0, T1 arg1, T2 arg2) const
 This is the automatic typing 3-arity operator.
template<class T0, class T1, class T2, class T3>
void operator() (T0 arg0, T1 arg1, T2 arg2, T3 arg3) const
 This is the automatic typing 4-arity operator.
template<class T0, class T1, class T2, class T3, class T4>
void operator() (T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4) const
 This is the automatic typing 5-arity operator.
template<class T0, class T1, class T2, class T3, class T4, class T5>
void operator() (T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5) const
 This is the automatic typing 6-arity operator.
template<class T0, class T1, class T2, class T3, class T4, class T5, class T6>
void operator() (T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6) const
 This is the automatic typing 7-arity operator.

Protected Member Functions

void invoke () const
void invoke (const Variable &arg0) const
void invoke (const Variable &arg0, const Variable &arg1) const
void invoke (const Variable &arg0, const Variable &arg1, const Variable &arg2) const
void invoke (const Variable &arg0, const Variable &arg1, const Variable &arg2, const Variable &arg3) const
void invoke (const Variable &arg0, const Variable &arg1, const Variable &arg2, const Variable &arg3, const Variable &arg4) const
void invoke (const Variable &arg0, const Variable &arg1, const Variable &arg2, const Variable &arg3, const Variable &arg4, const Variable &arg5) const
void invoke (const Variable &arg0, const Variable &arg1, const Variable &arg2, const Variable &arg3, const Variable &arg4, const Variable &arg5, const Variable &arg6) const

Classes

struct  DelegateData


Detailed Description

Acts as a multiple call target container and invoker.

This class acts as a call target, which routes calls to all the registered call targets. Call targets must all be able to accept the given number of arguments and argument types.


Constructor & Destructor Documentation

Odyssey::Delegate::Delegate (   ) 
 

Create a new, empty Delegate.

Odyssey::Delegate::Delegate (  const Delegate &  rhs  ) 
 

Share the data from the given Delegate with this one.


Member Function Documentation

void Odyssey::Delegate::add (  const Callable &  callable  ) 
 

Adds a new callable to this delegate.

void Odyssey::Delegate::clear (   ) 
 

Clears this Delegate so that it is empty.

size_t Odyssey::Delegate::getCallableCount (   )  const
 

Returns the number of callable targets in this Delegate.

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1,
const Variable &  arg2,
const Variable &  arg3,
const Variable &  arg4,
const Variable &  arg5,
const Variable &  arg6
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1,
const Variable &  arg2,
const Variable &  arg3,
const Variable &  arg4,
const Variable &  arg5
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1,
const Variable &  arg2,
const Variable &  arg3,
const Variable &  arg4
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1,
const Variable &  arg2,
const Variable &  arg3
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1,
const Variable &  arg2
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0,
const Variable &  arg1
)  const [protected]
 

void Odyssey::Delegate::invoke (  const Variable &  arg0  )  const [protected]
 

void Odyssey::Delegate::invoke (   )  const [protected]
 

bool Odyssey::Delegate::isEmpty (   )  const
 

Returns true if this Delegate is empty.

template<class T0, class T1, class T2, class T3, class T4, class T5, class T6>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1,
T2  arg2,
T3  arg3,
T4  arg4,
T5  arg5,
T6  arg6
)  const [inline]
 

This is the automatic typing 7-arity operator.

template<class T0, class T1, class T2, class T3, class T4, class T5>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1,
T2  arg2,
T3  arg3,
T4  arg4,
T5  arg5
)  const [inline]
 

This is the automatic typing 6-arity operator.

template<class T0, class T1, class T2, class T3, class T4>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1,
T2  arg2,
T3  arg3,
T4  arg4
)  const [inline]
 

This is the automatic typing 5-arity operator.

template<class T0, class T1, class T2, class T3>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1,
T2  arg2,
T3  arg3
)  const [inline]
 

This is the automatic typing 4-arity operator.

template<class T0, class T1, class T2>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1,
T2  arg2
)  const [inline]
 

This is the automatic typing 3-arity operator.

template<class T0, class T1>
void Odyssey::Delegate::operator() (  T0  arg0,
T1  arg1
)  const [inline]
 

This is the automatic typing 2-arity operator.

template<class T0>
void Odyssey::Delegate::operator() (  T0  arg0  )  const [inline]
 

This is the automatic typing 1-arity operator.

void Odyssey::Delegate::operator() (   )  const
 

This is the nullary operator.

Delegate& Odyssey::Delegate::operator+= (  const Callable &  rhs  ) 
 

This operator adds a new callable.

Delegate& Odyssey::Delegate::operator= (  const Delegate &  rhs  ) 
 

This operator shares the data from the given Delegate with this one.


The documentation for this class was generated from the following file:
Generated on Sun Jan 7 01:18:52 2007 for Odyssey Meta-Engine by  doxygen 1.4.6-NO