Open Lighting Architecture: Callbacks

| Open Lighting Architecture 0.10.9

Loading...
Searching...
No Matches
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. Arguments can be provided at either creation time or execution time.

The SingleUse variant 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
  ola::NewSingleCallback
  SingleUseCallback0< ReturnType > * NewSingleCallback(ReturnType(*callback)())
  A helper function to create a new SingleUseCallback with 0 create-time arguments and 0 execution time...
  Definition Callback.h:194

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;
  ola::NewCallback
  Callback0< ReturnType > * NewCallback(ReturnType(*callback)())
  A helper function to create a new Callback with 0 create-time arguments and 0 execution time argument...
  Definition Callback.h:211

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 edit and 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

## ◆ NewCallback() [1/50]

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

  Class | the class with the member function.
  ReturnType | the return type of the callback.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewCallback() [2/50]

template<typename Class, typename ReturnType, typename A0>

Callback0< ReturnType > * ola::NewCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0),
|  | A0 | a0 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [3/50]

template<typename Class, typename ReturnType, typename A0, typename A1>

Callback0< ReturnType > * ola::NewCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0, A1),
|  | 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

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [4/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [5/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [6/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [7/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [8/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [9/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [10/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [11/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [12/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [13/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [14/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [15/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [16/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [17/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [18/50]

template<typename Class, typename ReturnType, typename A0, typename Arg0>

Callback1< ReturnType, Arg0 > * ola::NewCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0, Arg0),
|  | A0 | a0 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [19/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [20/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [21/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewCallback() [22/50]

template<typename Class, typename ReturnType, typename Arg0>

Callback1< ReturnType, Arg0 > * ola::NewCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(Arg0) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewCallback() [23/50]

template<typename Class, typename ReturnType, typename Arg0, typename Arg1>

Callback2< ReturnType, Arg0, Arg1 > * ola::NewCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(Arg0, Arg1) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewCallback() [24/50]

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) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewCallback() [25/50]

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) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewCallback() [26/50]

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

  ReturnType | the return type of the callback.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewCallback() [27/50]

template<typename ReturnType, typename A0>

Callback0< ReturnType > * ola::NewCallback | ( | ReturnType(* | callback )(A0),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [28/50]

template<typename ReturnType, typename A0, typename A1>

Callback0< ReturnType > * ola::NewCallback | ( | ReturnType(* | callback )(A0, A1),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [29/50]

template<typename ReturnType, typename A0, typename A1, typename A2>

Callback0< ReturnType > * ola::NewCallback | ( | ReturnType(* | callback )(A0, A1, A2),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [30/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [31/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [32/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [33/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [34/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [35/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [36/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [37/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [38/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [39/50]

template<typename ReturnType, typename A0, typename A1, typename Arg0>

Callback1< ReturnType, Arg0 > * ola::NewCallback | ( | ReturnType(* | callback )(A0, A1, Arg0),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [40/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [41/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [42/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [43/50]

template<typename ReturnType, typename A0, typename Arg0>

Callback1< ReturnType, Arg0 > * ola::NewCallback | ( | ReturnType(* | callback )(A0, Arg0),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [44/50]

template<typename ReturnType, typename A0, typename Arg0, typename Arg1>

Callback2< ReturnType, Arg0, Arg1 > * ola::NewCallback | ( | ReturnType(* | callback )(A0, Arg0, Arg1),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [45/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [46/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewCallback() [47/50]

template<typename ReturnType, typename Arg0>

Callback1< ReturnType, Arg0 > * ola::NewCallback | ( | ReturnType(* | callback )(Arg0) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewCallback() [48/50]

template<typename ReturnType, typename Arg0, typename Arg1>

Callback2< ReturnType, Arg0, Arg1 > * ola::NewCallback | ( | ReturnType(* | callback )(Arg0, Arg1) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewCallback() [49/50]

template<typename ReturnType, typename Arg0, typename Arg1, typename Arg2>

Callback3< ReturnType, Arg0, Arg1, Arg2 > * ola::NewCallback | ( | ReturnType(* | callback )(Arg0, Arg1, Arg2) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewCallback() [50/50]

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) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [1/50]

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

  Class | the class with the member function.
  ReturnType | the return type of the callback.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [2/50]

template<typename Class, typename ReturnType, typename A0>

SingleUseCallback0< ReturnType > * ola::NewSingleCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0),
|  | A0 | a0 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [3/50]

template<typename Class, typename ReturnType, typename A0, typename A1>

SingleUseCallback0< ReturnType > * ola::NewSingleCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0, A1),
|  | 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

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [4/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [5/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [6/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [7/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [8/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [9/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [10/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [11/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [12/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [13/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [14/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [15/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [16/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [17/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [18/50]

template<typename Class, typename ReturnType, typename A0, typename Arg0>

SingleUseCallback1< ReturnType, Arg0 > * ola::NewSingleCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(A0, Arg0),
|  | A0 | a0 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [19/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [20/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [21/50]

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 )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [22/50]

template<typename Class, typename ReturnType, typename Arg0>

SingleUseCallback1< ReturnType, Arg0 > * ola::NewSingleCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(Arg0) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [23/50]

template<typename Class, typename ReturnType, typename Arg0, typename Arg1>

SingleUseCallback2< ReturnType, Arg0, Arg1 > * ola::NewSingleCallback | ( | Class * | object,
|  | ReturnType(Class::* | method )(Arg0, Arg1) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [24/50]

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) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [25/50]

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) )
| inline

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

Template Parameters

  Class | the class with the member function.
  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  object | the object to call the member function on.
  method | the member function pointer to use when executing the callback.

Returns
  The same return value as the member function.

## ◆ NewSingleCallback() [26/50]

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

  ReturnType | the return type of the callback.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [27/50]

template<typename ReturnType, typename A0>

SingleUseCallback0< ReturnType > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [28/50]

template<typename ReturnType, typename A0, typename A1>

SingleUseCallback0< ReturnType > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0, A1),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [29/50]

template<typename ReturnType, typename A0, typename A1, typename A2>

SingleUseCallback0< ReturnType > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0, A1, A2),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [30/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [31/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [32/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [33/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [34/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  A3 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.
  a3 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [35/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [36/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [37/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [38/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  A2 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.
  a2 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [39/50]

template<typename ReturnType, typename A0, typename A1, typename Arg0>

SingleUseCallback1< ReturnType, Arg0 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0, A1, Arg0),
|  | 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

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [40/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [41/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [42/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  A1 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.
  a1 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [43/50]

template<typename ReturnType, typename A0, typename Arg0>

SingleUseCallback1< ReturnType, Arg0 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0, Arg0),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [44/50]

template<typename ReturnType, typename A0, typename Arg0, typename Arg1>

SingleUseCallback2< ReturnType, Arg0, Arg1 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(A0, Arg0, Arg1),
|  | A0 | a0 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [45/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [46/50]

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 )
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  A0 | a create-time argument type.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.
  a0 | a create-time argument.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [47/50]

template<typename ReturnType, typename Arg0>

SingleUseCallback1< ReturnType, Arg0 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(Arg0) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [48/50]

template<typename ReturnType, typename Arg0, typename Arg1>

SingleUseCallback2< ReturnType, Arg0, Arg1 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(Arg0, Arg1) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [49/50]

template<typename ReturnType, typename Arg0, typename Arg1, typename Arg2>

SingleUseCallback3< ReturnType, Arg0, Arg1, Arg2 > * ola::NewSingleCallback | ( | ReturnType(* | callback )(Arg0, Arg1, Arg2) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.

## ◆ NewSingleCallback() [50/50]

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) | ) |
| inline

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

Template Parameters

  ReturnType | the return type of the callback.
  Arg0 | an exec-time argument type.
  Arg1 | an exec-time argument type.
  Arg2 | an exec-time argument type.
  Arg3 | an exec-time argument type.

Parameters

  callback | the function pointer to use when executing the callback.

Returns
  The same return value as the function.