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.
Delegateoperator+= (const Callable &rhs)
 This operator adds a new callable.
Delegateoperator= (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