[3.0] Add missed doxygen documentation
[platform/core/uifw/dali-core.git] / dali / public-api / signals / callback.h
index 576f88d..add533c 100644 (file)
@@ -2,7 +2,7 @@
 #define __DALI_CALLBACK_H__
 
 /*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 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
 {
@@ -39,22 +44,26 @@ public:
 
   /**
    * @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 )
@@ -74,11 +83,16 @@ public:
     {
       (*(callback.mFunction))();
     }
+    else
+    {
+      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
    */
@@ -109,6 +123,7 @@ public:
    * @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.
    */
@@ -137,6 +152,7 @@ public:
    * @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
@@ -169,6 +185,7 @@ public:
    * @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.
@@ -198,6 +215,7 @@ public:
    * @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.
@@ -231,6 +249,7 @@ public:
    * @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.
@@ -261,6 +280,7 @@ public:
    * @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.
@@ -295,36 +315,46 @@ protected: // Constructors for deriving classes
 
   /**
    * @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 );
@@ -332,6 +362,7 @@ protected: // Constructors for deriving classes
   /**
    * @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.
@@ -341,6 +372,7 @@ protected: // Constructors for deriving classes
   /**
    * @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.
@@ -352,10 +384,11 @@ public: // Data for deriving classes & Dispatchers
 
   /**
    * @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
@@ -372,17 +405,24 @@ public: // Data for deriving classes & Dispatchers
 
 /**
  * @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 )
   {
@@ -394,6 +434,7 @@ struct Destroyer
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T >
 struct Dispatcher0
@@ -401,6 +442,7 @@ struct Dispatcher0
   /**
    * @brief Call an actual member function.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    */
   static void Dispatch( CallbackBase& callback )
@@ -415,6 +457,7 @@ struct Dispatcher0
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1 >
 struct Dispatcher1
@@ -422,6 +465,7 @@ 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.
    */
@@ -437,6 +481,7 @@ struct Dispatcher1
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1, typename P2 >
 struct Dispatcher2
@@ -444,6 +489,7 @@ 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.
@@ -460,6 +506,7 @@ struct Dispatcher2
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1, typename P2, typename P3 >
 struct Dispatcher3
@@ -467,6 +514,7 @@ 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.
@@ -484,6 +532,7 @@ struct Dispatcher3
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename R >
 struct DispatcherReturn0
@@ -491,6 +540,7 @@ struct DispatcherReturn0
   /**
    * @brief Call an actual member function.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    * @return the value.
    */
@@ -506,6 +556,7 @@ struct DispatcherReturn0
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename R, typename P1 >
 struct DispatcherReturn1
@@ -513,6 +564,7 @@ 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
@@ -529,6 +581,7 @@ struct DispatcherReturn1
 
 /**
  * @brief Dispatcher to call the actual member function.
+ * @SINCE_1_0.0
  */
 template< class T, typename R, typename P1, typename P2 >
 struct DispatcherReturn2
@@ -536,6 +589,7 @@ 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.
@@ -553,6 +607,7 @@ struct DispatcherReturn2
 
 /**
  * @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
@@ -560,6 +615,7 @@ 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.
@@ -578,6 +634,7 @@ struct DispatcherReturn3
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T >
 struct FunctorDispatcher0
@@ -585,6 +642,7 @@ struct FunctorDispatcher0
   /**
    * @brief Call a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    */
   static void Dispatch( CallbackBase& callback )
@@ -597,6 +655,7 @@ struct FunctorDispatcher0
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1 >
 struct FunctorDispatcher1
@@ -604,6 +663,7 @@ 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.
    */
@@ -617,6 +677,7 @@ struct FunctorDispatcher1
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1, typename P2 >
 struct FunctorDispatcher2
@@ -624,6 +685,7 @@ 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.
@@ -638,6 +700,7 @@ struct FunctorDispatcher2
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1, typename P2, typename P3 >
 struct FunctorDispatcher3
@@ -645,6 +708,7 @@ 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.
@@ -660,6 +724,7 @@ struct FunctorDispatcher3
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename R >
 struct FunctorDispatcherReturn0
@@ -667,6 +732,7 @@ struct FunctorDispatcherReturn0
   /**
    * @brief Call a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    * @return the value.
    */
@@ -680,6 +746,7 @@ struct FunctorDispatcherReturn0
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename R, typename P1 >
 struct FunctorDispatcherReturn1
@@ -687,6 +754,7 @@ 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
@@ -701,6 +769,7 @@ struct FunctorDispatcherReturn1
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename R, typename P1, typename P2 >
 struct FunctorDispatcherReturn2
@@ -708,6 +777,7 @@ 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.
@@ -723,6 +793,7 @@ struct FunctorDispatcherReturn2
 
 /**
  * @brief Dispatcher to call a functor.
+ * @SINCE_1_0.0
  */
 template< class T, typename R, typename P1, typename P2, typename P3 >
 struct FunctorDispatcherReturn3
@@ -730,6 +801,7 @@ 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.
@@ -746,7 +818,9 @@ struct FunctorDispatcherReturn3
 
 /**
  * @brief Dispatcher to call a functor.
+ *
  * This variant calls a specific void() member function.
+ * @SINCE_1_0.0
  */
 template< class T >
 struct VoidFunctorDispatcher0
@@ -754,6 +828,7 @@ struct VoidFunctorDispatcher0
   /**
    * @brief Call a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    */
   static void Dispatch( CallbackBase& callback )
@@ -770,6 +845,7 @@ struct VoidFunctorDispatcher0
  * @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
@@ -777,6 +853,7 @@ 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.
    */
@@ -794,6 +871,7 @@ struct VoidFunctorDispatcher1
  * @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
@@ -801,6 +879,7 @@ 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.
@@ -819,6 +898,7 @@ struct VoidFunctorDispatcher2
  * @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
@@ -826,6 +906,7 @@ 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.
@@ -845,6 +926,7 @@ struct VoidFunctorDispatcher3
  * @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
@@ -852,6 +934,7 @@ struct VoidFunctorDispatcherReturn0
   /**
    * @brief Call a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] callback The callback information.
    * @return the value.
    */
@@ -870,6 +953,7 @@ struct VoidFunctorDispatcherReturn0
  * @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
@@ -877,6 +961,7 @@ 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
@@ -896,6 +981,7 @@ struct VoidFunctorDispatcherReturn1
  * @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
@@ -903,6 +989,7 @@ 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.
@@ -923,6 +1010,7 @@ struct VoidFunctorDispatcherReturn2
  * @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
@@ -930,6 +1018,7 @@ 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.
@@ -951,6 +1040,7 @@ struct VoidFunctorDispatcherReturn3
  * @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
@@ -960,6 +1050,7 @@ public:
   /**
    * @brief Default constructor.
    *
+   * @SINCE_1_0.0
    */
   Callback()
   : CallbackBase()
@@ -970,6 +1061,7 @@ public:
    * @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.
    */
@@ -1017,6 +1109,7 @@ public:
 
 /**
  * @brief Specializations for static function callbacks.
+ * @SINCE_1_0.0
  */
 class CallbackFunction : public CallbackBase
 {
@@ -1024,6 +1117,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   CallbackFunction()
   : CallbackBase()
@@ -1033,6 +1127,7 @@ public:
   /**
    * @brief Constructors for functions with static linkage.
    *
+   * @SINCE_1_0.0
    * @param[in] function The function to call.
    */
   CallbackFunction( void(*function)() )
@@ -1071,6 +1166,7 @@ public:
 
 /**
  * @brief Specializations for function object callbacks.
+ * @SINCE_1_0.0
  */
 template< class T >
 class CallbackFunctor0 : public CallbackBase
@@ -1080,6 +1176,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctor0( const T& object )
@@ -1091,6 +1188,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 class CallbackFunctorDelegate0 : public CallbackBase
 {
@@ -1100,6 +1198,7 @@ public:
    * @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 )
@@ -1111,6 +1210,7 @@ public:
 
 /**
  * @brief Function object callback for matching callbacks to signal signature.
+ * @SINCE_1_0.0
  */
 template< class T, typename P1 >
 class CallbackFunctor1 : public CallbackBase
@@ -1120,6 +1220,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctor1( const T& object )
@@ -1131,6 +1232,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods.
+ * @SINCE_1_0.0
  */
 template< typename P1 >
 class CallbackFunctorDelegate1 : public CallbackBase
@@ -1141,6 +1243,7 @@ public:
    * @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 )
@@ -1152,6 +1255,7 @@ public:
 
 /**
  * @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
@@ -1161,6 +1265,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctor2( const T& object )
@@ -1172,6 +1277,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 template< typename P1, typename P2 >
 class CallbackFunctorDelegate2 : public CallbackBase
@@ -1182,6 +1288,7 @@ public:
    * @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 )
@@ -1193,6 +1300,7 @@ public:
 
 /**
  * @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
@@ -1202,6 +1310,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctor3( const T& object )
@@ -1213,6 +1322,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 template< typename P1, typename P2, typename P3 >
 class CallbackFunctorDelegate3 : public CallbackBase
@@ -1224,6 +1334,7 @@ public:
    * @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 )
@@ -1235,6 +1346,7 @@ public:
 
 /**
  * @brief Function object callback for matching callbacks to signal signature
+ * @SINCE_1_0.0
  */
 template< class T, typename R >
 class CallbackFunctorReturn0 : public CallbackBase
@@ -1244,6 +1356,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctorReturn0( const T& object )
@@ -1255,6 +1368,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 template< typename R >
 class CallbackFunctorDelegateReturn0 : public CallbackBase
@@ -1265,6 +1379,7 @@ public:
    * @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 )
@@ -1276,6 +1391,7 @@ public:
 
 /**
  * @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
@@ -1285,6 +1401,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctorReturn1( const T& object )
@@ -1296,6 +1413,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 template< typename P1, typename R >
 class CallbackFunctorDelegateReturn1 : public CallbackBase
@@ -1306,6 +1424,7 @@ public:
    * @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 )
@@ -1317,6 +1436,7 @@ public:
 
 /**
  * @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
@@ -1326,6 +1446,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctorReturn2( const T& object )
@@ -1337,6 +1458,7 @@ public:
 
 /**
  * @brief Function object callback for connecting void() methods
+ * @SINCE_1_0.0
  */
 template< typename P1, typename P2, typename R >
 class CallbackFunctorDelegateReturn2 : public CallbackBase
@@ -1347,6 +1469,7 @@ public:
    * @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 )
@@ -1358,6 +1481,7 @@ public:
 
 /**
  * @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
@@ -1367,6 +1491,7 @@ public:
   /**
    * @brief Constructor which copies a function object.
    *
+   * @SINCE_1_0.0
    * @param[in] object The object to copy.
    */
   CallbackFunctorReturn3( const T& object )
@@ -1378,6 +1503,7 @@ public:
 
 /**
  * @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
@@ -1388,6 +1514,7 @@ public:
    * @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 )
@@ -1402,6 +1529,7 @@ public:
 /**
  * @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
  */
@@ -1413,6 +1541,7 @@ inline CallbackBase* MakeCallback( void(*function)(void) )
 /**
  * @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
  */
@@ -1425,6 +1554,7 @@ inline CallbackBase* MakeCallback( void(*function)(P1) )
 /**
  * @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
  */
@@ -1437,6 +1567,7 @@ inline CallbackBase* MakeCallback( R(*function)(void) )
 /**
  * @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
  */
@@ -1449,6 +1580,7 @@ inline CallbackBase* MakeCallback( R(*function)(P1) )
 /**
  * @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
  */
@@ -1461,6 +1593,7 @@ inline CallbackBase* MakeCallback( void(*function)(P1,P2) )
 /**
  * @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
  */
@@ -1473,6 +1606,7 @@ inline CallbackBase* MakeCallback( R(*function)(P1,P2) )
 /**
  * @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
  */
@@ -1485,6 +1619,7 @@ inline CallbackBase* MakeCallback( void(*function)(P1,P2,P3) )
 /**
  * @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
  */
@@ -1498,6 +1633,7 @@ inline CallbackBase* MakeCallback( R(*function)(P1,P2,P3) )
  * @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
@@ -1512,6 +1648,7 @@ inline CallbackBase* MakeCallback( T* object, void(T::*function)(void) )
  * @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
@@ -1526,6 +1663,7 @@ inline CallbackBase* MakeCallback( T* object, void(T::*function)(P1) )
  * @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
@@ -1540,6 +1678,7 @@ inline CallbackBase* MakeCallback( T* object, void(T::*function)(P1,P2) )
  * @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
@@ -1554,6 +1693,7 @@ inline CallbackBase* MakeCallback( T* object, void(T::*function)(P1,P2,P3) )
  * @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
@@ -1568,6 +1708,7 @@ inline CallbackBase* MakeCallback( T* object, R(T::*function)() )
  * @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
@@ -1582,6 +1723,7 @@ inline CallbackBase* MakeCallback( T* object, R(T::*function)(P1) )
  * @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
@@ -1596,6 +1738,7 @@ inline CallbackBase* MakeCallback( T* object, R(T::*function)(P1,P2) )
  * @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
@@ -1610,6 +1753,7 @@ inline CallbackBase* MakeCallback( T* object, R(T::*function)(P1,P2,P3) )
  * @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
@@ -1623,6 +1767,7 @@ inline CallbackBase* MakeCallback( T* object, void(Base::*function)(void) )
  * @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
@@ -1633,6 +1778,9 @@ inline CallbackBase* MakeCallback( T& object, void(Base::*function)(void) )
   return new Callback< T >( object, function );
 }
 
+/**
+ * @}
+ */
 } // namespace DALI
 
 #endif // __DALI_CALLBACK_H__