23 #ifndef _TelepathyQt_functors_h_HEADER_GUARD_    24 #define _TelepathyQt_functors_h_HEADER_GUARD_    26 #ifndef IN_TP_QT_HEADER    27 #error IN_TP_QT_HEADER    30 #include <TelepathyQt/Global>    42     typedef R (*FunctionType)();
    52 template <
class R, 
class T >
    55     typedef R (T::*FunctionType)();
    60     ResultType 
operator()()
 const { 
return (object->*(fn))(); }
    66 template <
class R , 
class Arg1>
    69     typedef R (*FunctionType)(Arg1);
    79 template <
class R, 
class T , 
class Arg1>
    82     typedef R (T::*FunctionType)(Arg1);
    87     ResultType 
operator()(Arg1 a1)
 const { 
return (object->*(fn))(a1); }
    93 template <
class R , 
class Arg1, 
class Arg2>
    96     typedef R (*FunctionType)(Arg1, Arg2);
   101     ResultType 
operator()(Arg1 a1, Arg2 a2)
 const { 
return fn(a1, a2); }
   106 template <
class R, 
class T , 
class Arg1, 
class Arg2>
   109     typedef R (T::*FunctionType)(Arg1, Arg2);
   114     ResultType 
operator()(Arg1 a1, Arg2 a2)
 const { 
return (object->*(fn))(a1, a2); }
   120 template <
class R , 
class Arg1, 
class Arg2, 
class Arg3>
   123     typedef R (*FunctionType)(Arg1, Arg2, Arg3);
   128     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3)
 const { 
return fn(a1, a2, a3); }
   133 template <
class R, 
class T , 
class Arg1, 
class Arg2, 
class Arg3>
   136     typedef R (T::*FunctionType)(Arg1, Arg2, Arg3);
   141     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3)
 const { 
return (object->*(fn))(a1, a2, a3); }
   147 template <
class R , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4>
   150     typedef R (*FunctionType)(Arg1, Arg2, Arg3, Arg4);
   155     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4)
 const { 
return fn(a1, a2, a3, a4); }
   160 template <
class R, 
class T , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4>
   163     typedef R (T::*FunctionType)(Arg1, Arg2, Arg3, Arg4);
   168     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4)
 const { 
return (object->*(fn))(a1, a2, a3, a4); }
   174 template <
class R , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5>
   177     typedef R (*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5);
   182     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5)
 const { 
return fn(a1, a2, a3, a4, a5); }
   187 template <
class R, 
class T , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5>
   190     typedef R (T::*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5);
   195     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5)
 const { 
return (object->*(fn))(a1, a2, a3, a4, a5); }
   201 template <
class R , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6>
   204     typedef R (*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6);
   209     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6)
 const { 
return fn(a1, a2, a3, a4, a5, a6); }
   214 template <
class R, 
class T , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6>
   217     typedef R (T::*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6);
   222     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6)
 const { 
return (object->*(fn))(a1, a2, a3, a4, a5, a6); }
   228 template <
class R , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6, 
class Arg7>
   231     typedef R (*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7);
   236     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6, Arg7 a7)
 const { 
return fn(a1, a2, a3, a4, a5, a6, a7); }
   241 template <
class R, 
class T , 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6, 
class Arg7>
   244     typedef R (T::*FunctionType)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7);
   249     ResultType 
operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6, Arg7 a7)
 const { 
return (object->*(fn))(a1, a2, a3, a4, a5, a6, a7); }
   264 template <
class R, 
class Arg1>
   269 template <
class R, 
class Arg1, 
class Arg2>
   274 template <
class R, 
class Arg1, 
class Arg2, 
class Arg3>
   279 template <
class R, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4>
   284 template <
class R, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5>
   286 ptrFun(R (*fn)(Arg1, Arg2, Arg3, Arg4, Arg5) )
   289 template <
class R, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6>
   291 ptrFun(R (*fn)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) )
   294 template <
class R, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6, 
class Arg7>
   296 ptrFun(R (*fn)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) )
   301 template <
class R, 
class T>
   306 template <
class R, 
class T, 
class Arg1>
   311 template <
class R, 
class T, 
class Arg1, 
class Arg2>
   316 template <
class R, 
class T, 
class Arg1, 
class Arg2, 
class Arg3>
   318 memFun( T *obj, R (T::*fn)(Arg1, Arg2, Arg3) )
   321 template <
class R, 
class T, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4>
   323 memFun( T *obj, R (T::*fn)(Arg1, Arg2, Arg3, Arg4) )
   326 template <
class R, 
class T, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5>
   328 memFun( T *obj, R (T::*fn)(Arg1, Arg2, Arg3, Arg4, Arg5) )
   331 template <
class R, 
class T, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6>
   333 memFun( T *obj, R (T::*fn)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6) )
   336 template <
class R, 
class T, 
class Arg1, 
class Arg2, 
class Arg3, 
class Arg4, 
class Arg5, 
class Arg6, 
class Arg7>
   338 memFun( T *obj, R (T::*fn)(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7) )
 PtrFunctor1(FunctionType fn)
Definition: functors.h:72
FunctionType fn
Definition: functors.h:252
FunctionType fn
Definition: functors.h:157
Definition: functors.h:40
FunctionType fn
Definition: functors.h:198
R ResultType
Definition: functors.h:205
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4) const 
Definition: functors.h:168
T * object
Definition: functors.h:251
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6, Arg7 a7) const 
Definition: functors.h:249
R ResultType
Definition: functors.h:245
ResultType operator()(Arg1 a1, Arg2 a2) const 
Definition: functors.h:101
Definition: functors.h:121
PtrFunctor0(FunctionType fn)
Definition: functors.h:45
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3) const 
Definition: functors.h:141
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6, Arg7 a7) const 
Definition: functors.h:236
Definition: functors.h:80
MemberFunctor3(T *object, FunctionType fn)
Definition: functors.h:139
T * object
Definition: functors.h:116
MemberFunctor0(T *object, FunctionType fn)
Definition: functors.h:58
Definition: functors.h:202
T * object
Definition: functors.h:224
PtrFunctor7(FunctionType fn)
Definition: functors.h:234
FunctionType fn
Definition: functors.h:117
FunctionType fn
Definition: functors.h:225
Definition: functors.h:161
FunctionType fn
Definition: functors.h:49
T * object
Definition: functors.h:143
T * object
Definition: functors.h:197
Definition: functors.h:242
PtrFunctor4(FunctionType fn)
Definition: functors.h:153
FunctionType fn
Definition: functors.h:171
R ResultType
Definition: functors.h:232
PtrFunctor3(FunctionType fn)
Definition: functors.h:126
R ResultType
Definition: functors.h:137
FunctionType fn
Definition: functors.h:238
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6) const 
Definition: functors.h:209
MemberFunctor6(T *object, FunctionType fn)
Definition: functors.h:220
FunctionType fn
Definition: functors.h:103
Definition: functors.h:53
ResultType operator()() const 
Definition: functors.h:60
PtrFunctor0< R > ptrFun(R(*fn)())
Definition: functors.h:261
R ResultType
Definition: functors.h:178
PtrFunctor2(FunctionType fn)
Definition: functors.h:99
Definition: functors.h:229
FunctionType fn
Definition: functors.h:130
MemberFunctor5(T *object, FunctionType fn)
Definition: functors.h:193
Definition: functors.h:175
FunctionType fn
Definition: functors.h:76
R ResultType
Definition: functors.h:43
PtrFunctor5(FunctionType fn)
Definition: functors.h:180
FunctionType fn
Definition: functors.h:63
Definition: functors.h:94
R ResultType
Definition: functors.h:56
Definition: functors.h:215
FunctionType fn
Definition: functors.h:184
FunctionType fn
Definition: functors.h:90
R ResultType
Definition: functors.h:218
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3) const 
Definition: functors.h:128
Definition: functors.h:134
ResultType operator()(Arg1 a1) const 
Definition: functors.h:87
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5) const 
Definition: functors.h:182
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5, Arg6 a6) const 
Definition: functors.h:222
MemberFunctor2(T *object, FunctionType fn)
Definition: functors.h:112
ResultType operator()(Arg1 a1, Arg2 a2) const 
Definition: functors.h:114
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4, Arg5 a5) const 
Definition: functors.h:195
PtrFunctor6(FunctionType fn)
Definition: functors.h:207
T * object
Definition: functors.h:170
R ResultType
Definition: functors.h:151
R ResultType
Definition: functors.h:191
FunctionType fn
Definition: functors.h:144
Definition: functors.h:67
R ResultType
Definition: functors.h:70
Definition: abstract-adaptor.cpp:31
ResultType operator()(Arg1 a1) const 
Definition: functors.h:74
T * object
Definition: functors.h:62
Definition: functors.h:148
MemberFunctor0< R, T > memFun(T *obj, R(T::*fn)())
Definition: functors.h:303
ResultType operator()(Arg1 a1, Arg2 a2, Arg3 a3, Arg4 a4) const 
Definition: functors.h:155
Definition: functors.h:107
MemberFunctor7(T *object, FunctionType fn)
Definition: functors.h:247
T * object
Definition: functors.h:89
ResultType operator()() const 
Definition: functors.h:47
Definition: functors.h:188
FunctionType fn
Definition: functors.h:211
MemberFunctor4(T *object, FunctionType fn)
Definition: functors.h:166
R ResultType
Definition: functors.h:124
R ResultType
Definition: functors.h:110
Definition: functors.h:35
R ResultType
Definition: functors.h:164
R ResultType
Definition: functors.h:83
R ResultType
Definition: functors.h:97
MemberFunctor1(T *object, FunctionType fn)
Definition: functors.h:85