namespace Dali
{
+/**
+ * @addtogroup dali_core_signals
+ * @{
+ */
class CallbackBase;
/**
* @brief Callback base class to hold the data for callback function and member function calls.
+ * @SINCE_1_0.0
*/
class DALI_IMPORT_API CallbackBase
{
/**
* @brief Default constructor
+ * @SINCE_1_0.0
*/
CallbackBase();
/**
* @brief Destructor
+ * @SINCE_1_0.0
*/
~CallbackBase();
/**
* @brief Resets the object pointer so that we know not to call methods of this object any more.
+ * @SINCE_1_0.0
*/
void Reset();
/**
* @brief Function to call the function or member function dispatcher
*
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
*/
static void Execute( CallbackBase& callback )
}
else
{
- DALI_ASSERT_DEBUG( 0 && "no function to execute" );
+ DALI_ASSERT_ALWAYS( 0 && "no function to execute" );
}
}
/**
* @brief Function to call the function or member function dispatcher.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @return value from the function
*/
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
*/
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
* @return the value from the function
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site.
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
* @param[in] param2 The second parameter to pass into the function.
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
* @param[in] param2 The second parameter to pass into the function.
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site.
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
* @param[in] param2 The second parameter to pass into the function.
* @brief Function to call the function or member function dispatcher.
*
* This function template gets instantiated at the call site
+ * @SINCE_1_0.0
* @param[in] callback The callback to call.
* @param[in] param1 The first parameter to pass into the function.
* @param[in] param2 The second parameter to pass into the function.
/**
* @brief Function with static linkage
+ * @SINCE_1_0.0
*/
typedef void(*Function)(void);
/**
* @brief Member function
+ * @SINCE_1_0.0
*/
typedef void (CallbackBase::*MemberFunction)( void );
/**
* @brief Used to call the correct member function
+ * @SINCE_1_0.0
*/
typedef void (*Dispatcher)( CallbackBase& base );
/**
* @brief Used to destroy mObjectPointer (NULL if not mObjectPointer is not owned)
+ * @SINCE_1_0.0
*/
typedef void(*Destructor)(void* object);
/**
* @brief Copy constructor operator not declared.
+ * @SINCE_1_0.0
+ * @param[in] rhs Handle to an object
*/
CallbackBase( const CallbackBase& rhs );
/**
* @brief assignment operator not declared.
+ * @SINCE_1_0.0
+ * @param[in] rhs Handle to an object
+ * @return A reference to this
*/
const CallbackBase& operator=( const CallbackBase& rhs );
/**
* @brief Constructor for function with static linkage.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
*/
CallbackBase( Function function );
/**
* @brief Constructor for member function.
*
+ * @SINCE_1_0.0
* @param[in] object The object to call (not owned).
* @param[in] function The member function of the object.
* @param[in] dispatcher Used to call the actual object.
/**
* @brief Constructor for member function.
*
+ * @SINCE_1_0.0
* @param[in] object The object to call (owned).
* @param[in] function The member function of the object.
* @param dispatcher Used to call the actual object.
/**
* @brief struct to hold the extra data needed for member functions.
+ * @SINCE_1_0.0
*/
struct Impl
{
- Impl(); ///< Default constructor
+ Impl(); ///< Default constructor @SINCE_1_0.0
void* mObjectPointer; ///< Object whose member function will be called. Not owned if mDestructorDispatcher is NULL.
Dispatcher mMemberFunctionDispatcher; ///< Dispatcher for member functions
/**
* @brief Non-member equality operator
+ * @SINCE_1_0.0
+ * @param[in] lhs A reference to compare
+ * @param[in] rhs A reference to compare to
+ * @return true if lhs is same as rhs
*/
bool operator==( const CallbackBase& lhs, const CallbackBase& rhs );
/**
* @brief Dispatcher to delete an object.
+ * @SINCE_1_0.0
*/
template< class T >
struct Destroyer
{
/**
* @brief Dispatcher to delete an object.
+ * @SINCE_1_0.0
+ * @param[in] object An object to delete
*/
static void Delete( void* object )
{
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T >
struct Dispatcher0
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
*/
static void Dispatch( CallbackBase& callback )
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename P1 >
struct Dispatcher1
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
*/
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2 >
struct Dispatcher2
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename P3 >
struct Dispatcher3
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename R >
struct DispatcherReturn0
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @return the value.
*/
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1 >
struct DispatcherReturn1
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @return The return value from the function
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2 >
struct DispatcherReturn2
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2, typename P3 >
struct DispatcherReturn3
/**
* @brief Call an actual member function.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T >
struct FunctorDispatcher0
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
*/
static void Dispatch( CallbackBase& callback )
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename P1 >
struct FunctorDispatcher1
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
*/
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2 >
struct FunctorDispatcher2
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename P3 >
struct FunctorDispatcher3
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename R >
struct FunctorDispatcherReturn0
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @return the value.
*/
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1 >
struct FunctorDispatcherReturn1
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @return The return value from the function
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2 >
struct FunctorDispatcherReturn2
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2, typename P3 >
struct FunctorDispatcherReturn3
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
/**
* @brief Dispatcher to call a functor.
+ *
* This variant calls a specific void() member function.
+ * @SINCE_1_0.0
*/
template< class T >
struct VoidFunctorDispatcher0
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
*/
static void Dispatch( CallbackBase& callback )
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, ignoring any signal parameters
+ * @SINCE_1_0.0
*/
template< class T, typename P1 >
struct VoidFunctorDispatcher1
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
*/
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, ignoring any signal parameters
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2 >
struct VoidFunctorDispatcher2
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, ignoring any signal parameters
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename P3 >
struct VoidFunctorDispatcher3
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, and returns a default-constructed value
+ * @SINCE_1_0.0
*/
template< class T, typename R >
struct VoidFunctorDispatcherReturn0
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @return the value.
*/
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, and returns a default-constructed value
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1 >
struct VoidFunctorDispatcherReturn1
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @return The return value from the function
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, and returns a default-constructed value
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2 >
struct VoidFunctorDispatcherReturn2
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
* @brief Dispatcher to call a functor.
*
* This variant calls a void() member, and returns a default-constructed value
+ * @SINCE_1_0.0
*/
template< class T, typename R, typename P1, typename P2, typename P3 >
struct VoidFunctorDispatcherReturn3
/**
* @brief Call a function object.
*
+ * @SINCE_1_0.0
* @param[in] callback The callback information.
* @param[in] param1 The first parameter to pass to the real member function.
* @param[in] param2 The second parameter to pass to the real member function.
* @brief Thin template to provide type safety for member function callbacks.
*
* version with two parameters and return value
+ * @SINCE_1_0.0
*/
template< class T >
class Callback : public CallbackBase
/**
* @brief Default constructor.
*
+ * @SINCE_1_0.0
*/
Callback()
: CallbackBase()
* @brief Constructor for member function.
*
* Copies the function object.
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] memberFunction The member function of the object.
*/
/**
* @brief Specializations for static function callbacks.
+ * @SINCE_1_0.0
*/
class CallbackFunction : public CallbackBase
{
/**
* @brief Default constructor.
+ * @SINCE_1_0.0
*/
CallbackFunction()
: CallbackBase()
/**
* @brief Constructors for functions with static linkage.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
*/
CallbackFunction( void(*function)() )
/**
* @brief Specializations for function object callbacks.
+ * @SINCE_1_0.0
*/
template< class T >
class CallbackFunctor0 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctor0( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
class CallbackFunctorDelegate0 : public CallbackBase
{
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object A newly allocated object (ownership is transferred).
*/
CallbackFunctorDelegate0( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature.
+ * @SINCE_1_0.0
*/
template< class T, typename P1 >
class CallbackFunctor1 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctor1( const T& object )
/**
* @brief Function object callback for connecting void() methods.
+ * @SINCE_1_0.0
*/
template< typename P1 >
class CallbackFunctorDelegate1 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegate1( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2 >
class CallbackFunctor2 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctor2( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename P1, typename P2 >
class CallbackFunctorDelegate2 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegate2( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename P3 >
class CallbackFunctor3 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctor3( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename P1, typename P2, typename P3 >
class CallbackFunctorDelegate3 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegate3( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename R >
class CallbackFunctorReturn0 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorReturn0( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename R >
class CallbackFunctorDelegateReturn0 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegateReturn0( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename R >
class CallbackFunctorReturn1 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorReturn1( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename P1, typename R >
class CallbackFunctorDelegateReturn1 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegateReturn1( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename R >
class CallbackFunctorReturn2 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorReturn2( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename P1, typename P2, typename R >
class CallbackFunctorDelegateReturn2 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegateReturn2( FunctorDelegate* object )
/**
* @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
*/
template< class T, typename P1, typename P2, typename P3, typename R >
class CallbackFunctorReturn3 : public CallbackBase
/**
* @brief Constructor which copies a function object.
*
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorReturn3( const T& object )
/**
* @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
*/
template< typename P1, typename P2, typename P3, typename R >
class CallbackFunctorDelegateReturn3 : public CallbackBase
* @brief Constructor which copies a function object.
*
* This variant calls a void() member, ignoring any signal parameters.
+ * @SINCE_1_0.0
* @param[in] object The object to copy.
*/
CallbackFunctorDelegateReturn3( FunctorDelegate* object )
/**
* @brief Creates a callback from a C function or static member function with no parameters.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with one parameter.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with no parameters and a return type.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with one parameter and a return type.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with two parameters.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with two parameters and a return type.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with three parameters.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
/**
* @brief Creates a callback from a C function or static member function with three parameters and a return type.
*
+ * @SINCE_1_0.0
* @param[in] function The function to call.
* @return a newly allocated Callback object, ownership transferred to caller
*/
* @brief Creates a callback from a class member function with no parameters.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with one parameter.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with two parameters.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with three parameters.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with no parameters and a return type.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with one parameter and a return type.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with two parameters and a return type.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class member function with three parameters and a return type.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class's parent member function with no parameters.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
* @brief Creates a callback from a class's parent member function with no parameters.
*
* requires the function to be member of the same class
+ * @SINCE_1_0.0
* @param[in] object The object to call.
* @param[in] function The member function to call.
* @return a newly allocated Callback object, ownership transferred to caller
return new Callback< T >( object, function );
}
+/**
+ * @}
+ */
} // namespace DALI
#endif // __DALI_CALLBACK_H__