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 ()
R operator() ()
R operator() (A1 arg1)
R operator() (A1 arg1, A2 arg2)
R operator() (A1 arg1, A2 arg2, A3 arg3)
R operator() (A1 arg1, A2 arg2, A3 arg3, A4 arg4)
R 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