library of assembled shared sources

http://lass.cocamware.com

lass::util::CallbackR5< R, P1, P2, P3, P4, P5 > Class Template Reference
[Callback]

callback with 5 parameter5 and with returnvalue. More...

#include <callback_r_5.h>


Public Types

typedef CallbackR5< R, P1, P2,
P3, P4, P5 > 
TSelf
typedef SharedPtr
< impl::DispatcherR5< R, P1,
P2, P3, P4, P5 > > 
TDispatcherPtr

Public Member Functions

 CallbackR5 ()
 Default constructor, construct empty callback.
template<typename FunctionType >
 CallbackR5 (FunctionType iFunction)
 Construct function callback.
template<typename ObjectPtr , typename Method >
 CallbackR5 (ObjectPtr iObject, Method iMethod)
 Construct object/method callback.
 CallbackR5 (const TSelf &iOther)
 copy constructor
template<typename Other >
TSelfoperator= (const Other &iOther)
 assignment operator
operator() (typename util::CallTraits< P1 >::TParam iP1, typename util::CallTraits< P2 >::TParam iP2, typename util::CallTraits< P3 >::TParam iP3, typename util::CallTraits< P4 >::TParam iP4, typename util::CallTraits< P5 >::TParam iP5) const
 THE operator.
void reset ()
 Reset to empty callback.
bool isEmpty () const
 Returns true if no callback dispatcher is assigned to this object.
bool operator! () const
 return this->isEmpty()
 operator num::SafeBool () const
 return !this->isEmpty())
void swap (TSelf &iOther)
 Swaps the dispatcher of this callback with the dispatcher of another.

Private Attributes

TDispatcherPtr dispatcher_

Related Functions

(Note that these are not member functions.)

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
CallbackR5< R, P1, P2, P3, P4, P5 > makeCallback (R(*iFunction)(P1, P2, P3, P4, P5))
 make a CallbackR5 from a function
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
const CallbackR5< R, P1, P2,
P3, P4, P5 > & 
makeCallback (const CallbackR5< R, P1, P2, P3, P4, P5 > &iCallback)
 make a CallbackR5 from a function
template<typename ObjectPtr , typename Object , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
CallbackR5< R, P1, P2, P3, P4, P5 > makeCallback (ObjectPtr iObject, R(Object::*iMethod)(P1, P2, P3, P4, P5))
 make a CallbackR5 from a object and method


Detailed Description

template<typename R, typename P1, typename P2, typename P3, typename P4, typename P5>
class lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >

callback with 5 parameter5 and with returnvalue.

Date:
2002
Author:
Bram de Greve [Bramz] (contact: bramz@users.sourceforge.net)
It's a single object that can hold a reference to a free function or an object/(const) method pair. Once the callback is constructed, it works completely transparent. All it shows to the client is a function that takes 5 parameter(s) and gives a returnvalue.

Definition at line 97 of file callback_r_5.h.


Member Typedef Documentation

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
typedef CallbackR5<R, P1, P2, P3, P4, P5> lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::TSelf

Definition at line 101 of file callback_r_5.h.

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
typedef SharedPtr< impl::DispatcherR5<R, P1, P2, P3, P4, P5> > lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::TDispatcherPtr

Definition at line 102 of file callback_r_5.h.


Constructor & Destructor Documentation

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::CallbackR5 (  )  [inline]

Default constructor, construct empty callback.

Definition at line 108 of file callback_r_5.h.

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
template<typename FunctionType >
lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::CallbackR5 ( FunctionType  iFunction  )  [inline]

Construct function callback.

Definition at line 115 of file callback_r_5.h.

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
template<typename ObjectPtr , typename Method >
lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::CallbackR5 ( ObjectPtr  iObject,
Method  iMethod 
) [inline]

Construct object/method callback.

Definition at line 123 of file callback_r_5.h.

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::CallbackR5 ( const TSelf iOther  )  [inline]

copy constructor

Definition at line 130 of file callback_r_5.h.


Member Function Documentation

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
template<typename Other >
TSelf& lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::operator= ( const Other &  iOther  )  [inline]

assignment operator

Definition at line 142 of file callback_r_5.h.

References lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::swap().

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
R lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::operator() ( typename util::CallTraits< P1 >::TParam  iP1,
typename util::CallTraits< P2 >::TParam  iP2,
typename util::CallTraits< P3 >::TParam  iP3,
typename util::CallTraits< P4 >::TParam  iP4,
typename util::CallTraits< P5 >::TParam  iP5 
) const [inline]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
void lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::reset (  )  [inline]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
bool lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::isEmpty (  )  const [inline]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
bool lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::operator! (  )  const [inline]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::operator num::SafeBool (  )  const [inline]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
void lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::swap ( TSelf iOther  )  [inline]

Swaps the dispatcher of this callback with the dispatcher of another.

Definition at line 193 of file callback_r_5.h.

References lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::dispatcher_.

Referenced by lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::operator=().


Friends And Related Function Documentation

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
CallbackR5< R, P1, P2, P3, P4, P5 > makeCallback ( R(*)(P1, P2, P3, P4, P5)  iFunction  )  [related]

make a CallbackR5 from a function

Definition at line 209 of file callback_r_5.h.

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
const CallbackR5< R, P1, P2, P3, P4, P5 > & makeCallback ( const CallbackR5< R, P1, P2, P3, P4, P5 > &  iCallback  )  [related]

make a CallbackR5 from a function

Definition at line 220 of file callback_r_5.h.

template<typename ObjectPtr , typename Object , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
CallbackR5< R, P1, P2, P3, P4, P5 > makeCallback ( ObjectPtr  iObject,
R(Object::*)(P1, P2, P3, P4, P5)  iMethod 
) [related]

make a CallbackR5 from a object and method

make a CallbackR5 from a object and const method

Definition at line 231 of file callback_r_5.h.


Field Documentation

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
TDispatcherPtr lass::util::CallbackR5< R, P1, P2, P3, P4, P5 >::dispatcher_ [private]


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

Generated on Mon Nov 10 14:22:17 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo