pdf::Functor< T, R, A1, A2, A3, A4, A5 > Class Template Reference

#include <pdf_observer.h>

Inheritance diagram for pdf::Functor< T, R, A1, A2, A3, A4, A5 >:
Inheritance graph
[legend]
Collaboration diagram for pdf::Functor< T, R, A1, A2, A3, A4, A5 >:
Collaboration graph
[legend]

Data Structures

union  FUNCTOR

Public Types

typedef IFunctor< R, A1, A2,
A3, A4, A5 > * 
IFunctorPtr

Public Member Functions

 Functor (T *callee, Function0 func0)
 Functor (T *callee, Function1 func1)
 Functor (T *callee, Function2 func2)
 Functor (T *callee, Function3 func3)
 Functor (T *callee, Function4 func4)
 Functor (T *callee, Function5 func5)
 ~Functor ()
operator() ()
operator() (A1 arg1)
operator() (A1 arg1, A2 arg2)
operator() (A1 arg1, A2 arg2, A3 arg3)
operator() (A1 arg1, A2 arg2, A3 arg3, A4 arg4)
operator() (A1 arg1, A2 arg2, A3 arg3, A4 arg4, A5 arg5)
bool compare (IFunctorPtr p)

Detailed Description

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
class pdf::Functor< T, R, A1, A2, A3, A4, A5 >

Definition at line 75 of file pdf_observer.h.


Member Typedef Documentation

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
typedef IFunctor<R, A1, A2, A3, A4, A5>* pdf::Functor< T, R, A1, A2, A3, A4, A5 >::IFunctorPtr

Reimplemented from pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 89 of file pdf_observer.h.


Constructor & Destructor Documentation

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function0  func0 
) [inline]

Definition at line 93 of file pdf_observer.h.

00094         {
00095             instance = callee;
00096             functor.func0_ = func0;
00097         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function1  func1 
) [inline]

Definition at line 98 of file pdf_observer.h.

00099         {
00100             instance = callee;
00101             functor.func1_ = func1;
00102         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function2  func2 
) [inline]

Definition at line 103 of file pdf_observer.h.

00104         {
00105             instance = callee;
00106             functor.func2_ = func2;
00107         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function3  func3 
) [inline]

Definition at line 108 of file pdf_observer.h.

00109         {
00110             instance = callee;
00111             functor.func3_ = func3;
00112         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function4  func4 
) [inline]

Definition at line 113 of file pdf_observer.h.

00114         {
00115             instance = callee;
00116             functor.func4_ = func4;
00117         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::Functor ( T *  callee,
Function5  func5 
) [inline]

Definition at line 118 of file pdf_observer.h.

00119         {
00120             instance = callee;
00121             functor.func5_ = func5;
00122         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
pdf::Functor< T, R, A1, A2, A3, A4, A5 >::~Functor (  )  [inline]

Definition at line 124 of file pdf_observer.h.

00125         {
00126         }


Member Function Documentation

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
bool pdf::Functor< T, R, A1, A2, A3, A4, A5 >::compare ( IFunctorPtr  p  )  [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 160 of file pdf_observer.h.

00161         { 
00162             return functor.func0_ == (FunctorPtr(p))->functor.func0_; 
00163         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( A1  arg1,
A2  arg2,
A3  arg3,
A4  arg4,
A5  arg5 
) [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 154 of file pdf_observer.h.

00155         {
00156             return (instance->*(functor.func5_))(arg1, arg2, arg3, arg4, arg5);
00157         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( A1  arg1,
A2  arg2,
A3  arg3,
A4  arg4 
) [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 149 of file pdf_observer.h.

00150         {
00151             return (instance->*(functor.func4_))(arg1, arg2, arg3, arg4);
00152         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( A1  arg1,
A2  arg2,
A3  arg3 
) [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 144 of file pdf_observer.h.

00145         {
00146             return (instance->*(functor.func3_))(arg1, arg2, arg3);
00147         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( A1  arg1,
A2  arg2 
) [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 139 of file pdf_observer.h.

00140         {
00141             return (instance->*(functor.func2_))(arg1, arg2);
00142         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( A1  arg1  )  [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 134 of file pdf_observer.h.

00135         {
00136             return (instance->*(functor.func1_))(arg1);
00137         }

template<class T, class R, class A1 = UNUSABLE, class A2 = UNUSABLE, class A3 = UNUSABLE, class A4 = UNUSABLE, class A5 = UNUSABLE>
R pdf::Functor< T, R, A1, A2, A3, A4, A5 >::operator() ( void   )  [inline, virtual]

Implements pdf::IFunctor< R, A1, A2, A3, A4, A5 >.

Definition at line 129 of file pdf_observer.h.

00130         {
00131             return (instance->*(functor.func0_))();
00132         }


The documentation for this class was generated from the following file:
Generated by  doxygen 1.6.2-20100208