Open Lighting Architecture  0.9.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Files | Classes | Functions
Callbacks

Detailed Description

Function objects.

Callbacks are powerful objects that behave like function pointers. They can be constructed with a pointer to a either plain function or member function. Argments can be provided at either creation time or execution time.

The SingleUse varient of a Callback automatically delete itself after it has been executed.

Callbacks are used throughout OLA to reduce the coupling between classes and make for more modular code.

Avoid creating Callbacks by directly calling the constructor. Instead use the NewSingleCallback() and NewCallback() helper methods.

Example Simple function pointer replacement.
// wrap a function that takes no args and returns a bool
SingleUseCallback<bool> *callback1 = NewSingleCallback(&Function0);
// some time later
bool result = callback1->Run();
// callback1 has deleted itself at this point
Example Method pointer with a single bound argument
// Create a Callback for Method1 of the Object class and bind TEST_VALUE
// as the first argument.
Callback<void> *callback2 = NewCallback(object, &Object::Method1,
TEST_VALUE);
// This will call object->Method1(TEST_VALUE)
callback2->Run();
// this wasn't a SingleUse Callback, so callback is still around and
// needs to be deleted manually.
delete callback2;
Example Method pointer that takes a single argument at execution time.
// Create a Callback for a method that takes 1 argument and returns void.
BaseCallback1<void, unsigned int> *callback3 = NewCallback(
object, &Object::Method1);
// Call object->Method1(TEST_VALUE)
callback3->Run(TEST_VALUE);
// callback3 is still around at this stage
delete callback3;
Example Method pointer with one bound argument and one execution time
argument.
// Create a callback for a method that takes 2 args and returns void
BaseCallback2<void, int, int> *callback4 = NewSingleCallback(
object,
&Object::Method2,
TEST_VALUE);
// This calls object->Method2(TEST_VALUE, TEST_VALUE2);
callback4->Run(TEST_VALUE2);
// callback4 is still around
delete callback4;
Note
The code in Callback.h is autogenerated by gen_callbacks.py. Please run edit & run gen_callbacks.py if you need to add more types.

Files

file  Callback.h

Classes

class  ola::BaseCallback0< ReturnType >
 The base class for all 0 argument callbacks. More...
class  ola::Callback0< ReturnType >
 A 0 argument callback which can be called multiple times. More...
class  ola::SingleUseCallback0< ReturnType >
 A 0 argument callback which deletes itself after it's run. More...
class  ola::SingleUseCallback0< void >
 A 0 arg, single use callback that returns void. More...
class  ola::FunctionCallback0_0< Parent, ReturnType >
 A Function callback with 0 create-time args and 0 exec time args. More...
class  ola::MethodCallback0_0< Class, Parent, ReturnType >
 A Method callback with 0 create-time args and 0 exec time args. More...
class  ola::FunctionCallback1_0< Parent, ReturnType, A0 >
 A Function callback with 1 create-time args and 0 exec time args. More...
class  ola::MethodCallback1_0< Class, Parent, ReturnType, A0 >
 A Method callback with 1 create-time args and 0 exec time args. More...
class  ola::FunctionCallback2_0< Parent, ReturnType, A0, A1 >
 A Function callback with 2 create-time args and 0 exec time args. More...
class  ola::MethodCallback2_0< Class, Parent, ReturnType, A0, A1 >
 A Method callback with 2 create-time args and 0 exec time args. More...
class  ola::FunctionCallback3_0< Parent, ReturnType, A0, A1, A2 >
 A Function callback with 3 create-time args and 0 exec time args. More...
class  ola::MethodCallback3_0< Class, Parent, ReturnType, A0, A1, A2 >
 A Method callback with 3 create-time args and 0 exec time args. More...
class  ola::FunctionCallback4_0< Parent, ReturnType, A0, A1, A2, A3 >
 A Function callback with 4 create-time args and 0 exec time args. More...
class  ola::MethodCallback4_0< Class, Parent, ReturnType, A0, A1, A2, A3 >
 A Method callback with 4 create-time args and 0 exec time args. More...
class  ola::BaseCallback1< ReturnType, Arg0 >
 The base class for all 1 argument callbacks. More...
class  ola::Callback1< ReturnType, Arg0 >
 A 1 argument callback which can be called multiple times. More...
class  ola::SingleUseCallback1< ReturnType, Arg0 >
 A 1 argument callback which deletes itself after it's run. More...
class  ola::SingleUseCallback1< void, Arg0 >
 A 1 arg, single use callback that returns void. More...
class  ola::FunctionCallback0_1< Parent, ReturnType, Arg0 >
 A Function callback with 0 create-time args and 1 exec time args. More...
class  ola::MethodCallback0_1< Class, Parent, ReturnType, Arg0 >
 A Method callback with 0 create-time args and 1 exec time args. More...
class  ola::FunctionCallback1_1< Parent, ReturnType, A0, Arg0 >
 A Function callback with 1 create-time args and 1 exec time args. More...
class  ola::MethodCallback1_1< Class, Parent, ReturnType, A0, Arg0 >
 A Method callback with 1 create-time args and 1 exec time args. More...
class  ola::FunctionCallback2_1< Parent, ReturnType, A0, A1, Arg0 >
 A Function callback with 2 create-time args and 1 exec time args. More...
class  ola::MethodCallback2_1< Class, Parent, ReturnType, A0, A1, Arg0 >
 A Method callback with 2 create-time args and 1 exec time args. More...
class  ola::FunctionCallback3_1< Parent, ReturnType, A0, A1, A2, Arg0 >
 A Function callback with 3 create-time args and 1 exec time args. More...
class  ola::MethodCallback3_1< Class, Parent, ReturnType, A0, A1, A2, Arg0 >
 A Method callback with 3 create-time args and 1 exec time args. More...
class  ola::FunctionCallback4_1< Parent, ReturnType, A0, A1, A2, A3, Arg0 >
 A Function callback with 4 create-time args and 1 exec time args. More...
class  ola::MethodCallback4_1< Class, Parent, ReturnType, A0, A1, A2, A3, Arg0 >
 A Method callback with 4 create-time args and 1 exec time args. More...
class  ola::BaseCallback2< ReturnType, Arg0, Arg1 >
 The base class for all 2 argument callbacks. More...
class  ola::Callback2< ReturnType, Arg0, Arg1 >
 A 2 argument callback which can be called multiple times. More...
class  ola::SingleUseCallback2< ReturnType, Arg0, Arg1 >
 A 2 argument callback which deletes itself after it's run. More...
class  ola::SingleUseCallback2< void, Arg0, Arg1 >
 A 2 arg, single use callback that returns void. More...
class  ola::FunctionCallback0_2< Parent, ReturnType, Arg0, Arg1 >
 A Function callback with 0 create-time args and 2 exec time args. More...
class  ola::MethodCallback0_2< Class, Parent, ReturnType, Arg0, Arg1 >
 A Method callback with 0 create-time args and 2 exec time args. More...
class  ola::FunctionCallback1_2< Parent, ReturnType, A0, Arg0, Arg1 >
 A Function callback with 1 create-time args and 2 exec time args. More...
class  ola::MethodCallback1_2< Class, Parent, ReturnType, A0, Arg0, Arg1 >
 A Method callback with 1 create-time args and 2 exec time args. More...
class  ola::FunctionCallback2_2< Parent, ReturnType, A0, A1, Arg0, Arg1 >
 A Function callback with 2 create-time args and 2 exec time args. More...
class  ola::MethodCallback2_2< Class, Parent, ReturnType, A0, A1, Arg0, Arg1 >
 A Method callback with 2 create-time args and 2 exec time args. More...
class  ola::FunctionCallback3_2< Parent, ReturnType, A0, A1, A2, Arg0, Arg1 >
 A Function callback with 3 create-time args and 2 exec time args. More...
class  ola::MethodCallback3_2< Class, Parent, ReturnType, A0, A1, A2, Arg0, Arg1 >
 A Method callback with 3 create-time args and 2 exec time args. More...
class  ola::FunctionCallback4_2< Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1 >
 A Function callback with 4 create-time args and 2 exec time args. More...
class  ola::MethodCallback4_2< Class, Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1 >
 A Method callback with 4 create-time args and 2 exec time args. More...
class  ola::BaseCallback3< ReturnType, Arg0, Arg1, Arg2 >
 The base class for all 3 argument callbacks. More...
class  ola::Callback3< ReturnType, Arg0, Arg1, Arg2 >
 A 3 argument callback which can be called multiple times. More...
class  ola::SingleUseCallback3< ReturnType, Arg0, Arg1, Arg2 >
 A 3 argument callback which deletes itself after it's run. More...
class  ola::SingleUseCallback3< void, Arg0, Arg1, Arg2 >
 A 3 arg, single use callback that returns void. More...
class  ola::FunctionCallback0_3< Parent, ReturnType, Arg0, Arg1, Arg2 >
 A Function callback with 0 create-time args and 3 exec time args. More...
class  ola::MethodCallback0_3< Class, Parent, ReturnType, Arg0, Arg1, Arg2 >
 A Method callback with 0 create-time args and 3 exec time args. More...
class  ola::FunctionCallback1_3< Parent, ReturnType, A0, Arg0, Arg1, Arg2 >
 A Function callback with 1 create-time args and 3 exec time args. More...
class  ola::MethodCallback1_3< Class, Parent, ReturnType, A0, Arg0, Arg1, Arg2 >
 A Method callback with 1 create-time args and 3 exec time args. More...
class  ola::FunctionCallback2_3< Parent, ReturnType, A0, A1, Arg0, Arg1, Arg2 >
 A Function callback with 2 create-time args and 3 exec time args. More...
class  ola::MethodCallback2_3< Class, Parent, ReturnType, A0, A1, Arg0, Arg1, Arg2 >
 A Method callback with 2 create-time args and 3 exec time args. More...
class  ola::FunctionCallback3_3< Parent, ReturnType, A0, A1, A2, Arg0, Arg1, Arg2 >
 A Function callback with 3 create-time args and 3 exec time args. More...
class  ola::MethodCallback3_3< Class, Parent, ReturnType, A0, A1, A2, Arg0, Arg1, Arg2 >
 A Method callback with 3 create-time args and 3 exec time args. More...
class  ola::FunctionCallback4_3< Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1, Arg2 >
 A Function callback with 4 create-time args and 3 exec time args. More...
class  ola::MethodCallback4_3< Class, Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1, Arg2 >
 A Method callback with 4 create-time args and 3 exec time args. More...
class  ola::BaseCallback4< ReturnType, Arg0, Arg1, Arg2, Arg3 >
 The base class for all 4 argument callbacks. More...
class  ola::Callback4< ReturnType, Arg0, Arg1, Arg2, Arg3 >
 A 4 argument callback which can be called multiple times. More...
class  ola::SingleUseCallback4< ReturnType, Arg0, Arg1, Arg2, Arg3 >
 A 4 argument callback which deletes itself after it's run. More...
class  ola::SingleUseCallback4< void, Arg0, Arg1, Arg2, Arg3 >
 A 4 arg, single use callback that returns void. More...
class  ola::FunctionCallback0_4< Parent, ReturnType, Arg0, Arg1, Arg2, Arg3 >
 A Function callback with 0 create-time args and 4 exec time args. More...
class  ola::MethodCallback0_4< Class, Parent, ReturnType, Arg0, Arg1, Arg2, Arg3 >
 A Method callback with 0 create-time args and 4 exec time args. More...
class  ola::FunctionCallback1_4< Parent, ReturnType, A0, Arg0, Arg1, Arg2, Arg3 >
 A Function callback with 1 create-time args and 4 exec time args. More...
class  ola::MethodCallback1_4< Class, Parent, ReturnType, A0, Arg0, Arg1, Arg2, Arg3 >
 A Method callback with 1 create-time args and 4 exec time args. More...
class  ola::FunctionCallback2_4< Parent, ReturnType, A0, A1, Arg0, Arg1, Arg2, Arg3 >
 A Function callback with 2 create-time args and 4 exec time args. More...
class  ola::MethodCallback2_4< Class, Parent, ReturnType, A0, A1, Arg0, Arg1, Arg2, Arg3 >
 A Method callback with 2 create-time args and 4 exec time args. More...
class  ola::FunctionCallback3_4< Parent, ReturnType, A0, A1, A2, Arg0, Arg1, Arg2, Arg3 >
 A Function callback with 3 create-time args and 4 exec time args. More...
class  ola::MethodCallback3_4< Class, Parent, ReturnType, A0, A1, A2, Arg0, Arg1, Arg2, Arg3 >
 A Method callback with 3 create-time args and 4 exec time args. More...
class  ola::FunctionCallback4_4< Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3 >
 A Function callback with 4 create-time args and 4 exec time args. More...
class  ola::MethodCallback4_4< Class, Parent, ReturnType, A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3 >
 A Method callback with 4 create-time args and 4 exec time args. More...

Functions

template<typename ReturnType >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (ReturnType(*callback)())
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 0 execution time arguments.
template<typename ReturnType >
Callback0< ReturnType > * ola::NewCallback (ReturnType(*callback)())
 A helper function to create a new Callback with 0 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (Class *object, ReturnType(Class::*method)())
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType >
Callback0< ReturnType > * ola::NewCallback (Class *object, ReturnType(Class::*method)())
 A helper function to create a new Callback with 0 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (ReturnType(*callback)(A0), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 >
Callback0< ReturnType > * ola::NewCallback (ReturnType(*callback)(A0), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 >
Callback0< ReturnType > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (ReturnType(*callback)(A0, A1), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 >
Callback0< ReturnType > * ola::NewCallback (ReturnType(*callback)(A0, A1), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 >
Callback0< ReturnType > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 >
Callback0< ReturnType > * ola::NewCallback (ReturnType(*callback)(A0, A1, A2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 >
Callback0< ReturnType > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, A3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
Callback0< ReturnType > * ola::NewCallback (ReturnType(*callback)(A0, A1, A2, A3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
SingleUseCallback0< ReturnType > * ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 0 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
Callback0< ReturnType > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 0 execution time arguments.
template<typename ReturnType , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (ReturnType(*callback)(Arg0))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (ReturnType(*callback)(Arg0))
 A helper function to create a new Callback with 0 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(Arg0))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (Class *object, ReturnType(Class::*method)(Arg0))
 A helper function to create a new Callback with 0 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, Arg0), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (ReturnType(*callback)(A0, Arg0), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, Arg0), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, Arg0), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, Arg0), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (ReturnType(*callback)(A0, A1, Arg0), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, Arg0), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (ReturnType(*callback)(A0, A1, A2, Arg0), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
SingleUseCallback1< ReturnType,
Arg0 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 1 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
Callback1< ReturnType, Arg0 > * ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 1 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (ReturnType(*callback)(Arg0, Arg1))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (ReturnType(*callback)(Arg0, Arg1))
 A helper function to create a new Callback with 0 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1))
 A helper function to create a new Callback with 0 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, Arg0, Arg1), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (ReturnType(*callback)(A0, Arg0, Arg1), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
SingleUseCallback2< ReturnType,
Arg0, Arg1 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 2 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
Callback2< ReturnType, Arg0,
Arg1 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 2 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (ReturnType(*callback)(Arg0, Arg1, Arg2))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (ReturnType(*callback)(Arg0, Arg1, Arg2))
 A helper function to create a new Callback with 0 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1, Arg2))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1, Arg2))
 A helper function to create a new Callback with 0 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, Arg0, Arg1, Arg2), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (ReturnType(*callback)(A0, Arg0, Arg1, Arg2), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1, Arg2), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1, Arg2), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1, Arg2), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1, Arg2), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1, Arg2), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1, Arg2), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3< ReturnType,
Arg0, Arg1, Arg2 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 3 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3< ReturnType, Arg0,
Arg1, Arg2 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1, Arg2), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 3 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (ReturnType(*callback)(Arg0, Arg1, Arg2, Arg3))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (ReturnType(*callback)(Arg0, Arg1, Arg2, Arg3))
 A helper function to create a new Callback with 0 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1, Arg2, Arg3))
 A helper function to create a new SingleUseCallback with 0 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(Arg0, Arg1, Arg2, Arg3))
 A helper function to create a new Callback with 0 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, Arg0, Arg1, Arg2, Arg3), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (ReturnType(*callback)(A0, Arg0, Arg1, Arg2, Arg3), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1, Arg2, Arg3), A0 a0)
 A helper function to create a new SingleUseCallback with 1 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, Arg0, Arg1, Arg2, Arg3), A0 a0)
 A helper function to create a new Callback with 1 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1)
 A helper function to create a new SingleUseCallback with 2 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1)
 A helper function to create a new Callback with 2 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2)
 A helper function to create a new SingleUseCallback with 3 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2)
 A helper function to create a new Callback with 3 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 4 execution time arguments.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (ReturnType(*callback)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4< ReturnType,
Arg0, Arg1, Arg2, Arg3 > * 
ola::NewSingleCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new SingleUseCallback with 4 create-time arguments and 4 execution time arguments.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4< ReturnType, Arg0,
Arg1, Arg2, Arg3 > * 
ola::NewCallback (Class *object, ReturnType(Class::*method)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3), A0 a0, A1 a1, A2 a2, A3 a3)
 A helper function to create a new Callback with 4 create-time arguments and 4 execution time arguments.

Function Documentation

template<typename ReturnType >
Callback0<ReturnType>* ola::NewCallback ( ReturnType(*)()  callback)
inline

A helper function to create a new Callback with 0 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType >
Callback0<ReturnType>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)()  method 
)
inline

A helper function to create a new Callback with 0 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 >
Callback0<ReturnType>* ola::NewCallback ( ReturnType(*)(A0)  callback,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 >
Callback0<ReturnType>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0)  method,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 >
Callback0<ReturnType>* ola::NewCallback ( ReturnType(*)(A0, A1)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 >
Callback0<ReturnType>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 >
Callback0<ReturnType>* ola::NewCallback ( ReturnType(*)(A0, A1, A2)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 >
Callback0<ReturnType>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
Callback0<ReturnType>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, A3)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
Callback0<ReturnType>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( ReturnType(*)(Arg0)  callback)
inline

A helper function to create a new Callback with 0 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(Arg0)  method 
)
inline

A helper function to create a new Callback with 0 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( ReturnType(*)(A0, Arg0)  callback,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0)  method,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( ReturnType(*)(A0, A1, Arg0)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, Arg0)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
Callback1<ReturnType, Arg0>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( ReturnType(*)(Arg0, Arg1)  callback)
inline

A helper function to create a new Callback with 0 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1)  method 
)
inline

A helper function to create a new Callback with 0 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( ReturnType(*)(A0, Arg0, Arg1)  callback,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1)  method,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( ReturnType(*)(A0, A1, Arg0, Arg1)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
Callback2<ReturnType, Arg0, Arg1>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( ReturnType(*)(Arg0, Arg1, Arg2)  callback)
inline

A helper function to create a new Callback with 0 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1, Arg2)  method 
)
inline

A helper function to create a new Callback with 0 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( ReturnType(*)(A0, Arg0, Arg1, Arg2)  callback,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1, Arg2)  method,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( ReturnType(*)(A0, A1, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
Callback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( ReturnType(*)(Arg0, Arg1, Arg2, Arg3)  callback)
inline

A helper function to create a new Callback with 0 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1, Arg2, Arg3)  method 
)
inline

A helper function to create a new Callback with 0 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( ReturnType(*)(A0, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0 
)
inline

A helper function to create a new Callback with 1 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( ReturnType(*)(A0, A1, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new Callback with 2 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new Callback with 3 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
Callback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new Callback with 4 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( ReturnType(*)()  callback)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)()  method 
)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( ReturnType(*)(A0)  callback,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0)  method,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( ReturnType(*)(A0, A1)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, A3)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 0 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 >
SingleUseCallback0<ReturnType>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 0 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( ReturnType(*)(Arg0)  callback)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(Arg0)  method 
)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( ReturnType(*)(A0, Arg0)  callback,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0)  method,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, Arg0)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, Arg0)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 1 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 >
SingleUseCallback1<ReturnType, Arg0>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 1 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( ReturnType(*)(Arg0, Arg1)  callback)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1)  method 
)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( ReturnType(*)(A0, Arg0, Arg1)  callback,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1)  method,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, Arg0, Arg1)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 2 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 >
SingleUseCallback2<ReturnType, Arg0, Arg1>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 2 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( ReturnType(*)(Arg0, Arg1, Arg2)  callback)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1, Arg2)  method 
)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( ReturnType(*)(A0, Arg0, Arg1, Arg2)  callback,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1, Arg2)  method,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1, Arg2)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 3 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 >
SingleUseCallback3<ReturnType, Arg0, Arg1, Arg2>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1, Arg2)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 3 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( ReturnType(*)(Arg0, Arg1, Arg2, Arg3)  callback)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(Arg0, Arg1, Arg2, Arg3)  method 
)
inline

A helper function to create a new SingleUseCallback with 0 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( ReturnType(*)(A0, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0 
)
inline

A helper function to create a new SingleUseCallback with 1 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1 
)
inline

A helper function to create a new SingleUseCallback with 2 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1,
A2  a2 
)
inline

A helper function to create a new SingleUseCallback with 3 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
Returns
The same return value as the member function.
template<typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( ReturnType(*)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3)  callback,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 4 execution time arguments.

Template Parameters
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
callbackthe function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the function.
template<typename Class , typename ReturnType , typename A0 , typename A1 , typename A2 , typename A3 , typename Arg0 , typename Arg1 , typename Arg2 , typename Arg3 >
SingleUseCallback4<ReturnType, Arg0, Arg1, Arg2, Arg3>* ola::NewSingleCallback ( Class *  object,
ReturnType(Class::*)(A0, A1, A2, A3, Arg0, Arg1, Arg2, Arg3)  method,
A0  a0,
A1  a1,
A2  a2,
A3  a3 
)
inline

A helper function to create a new SingleUseCallback with 4 create-time arguments and 4 execution time arguments.

Template Parameters
Classthe class with the member function.
ReturnTypethe return type of the callback.
A0a create-time argument type.
A1a create-time argument type.
A2a create-time argument type.
A3a create-time argument type.
Arg0an exec-time argument type.
Arg1an exec-time argument type.
Arg2an exec-time argument type.
Arg3an exec-time argument type.
Parameters
objectthe object to call the member function on.
methodthe member function pointer to use when executing the callback.
a0a create-time argument.
a1a create-time argument.
a2a create-time argument.
a3a create-time argument.
Returns
The same return value as the member function.