Implemented the Handle assignment operators properly
[platform/core/uifw/dali-core.git] / dali / public-api / images / image.h
index de5dfe1..b941759 100644 (file)
@@ -158,9 +158,29 @@ public:
   ~Image();
 
   /**
-   * @copydoc Dali::BaseHandle::operator=
+   * @brief This copy constructor is required for (smart) pointer semantics.
+   *
+   * @param [in] handle A reference to the copied handle
+   */
+  Image(const Image& handle);
+
+  /**
+   * @brief This assignment operator is required for (smart) pointer semantics.
+   *
+   * @param [in] rhs  A reference to the copied handle
+   * @return A reference to this
+   */
+  Image& operator=(const Image& rhs);
+
+  /**
+   * @brief This method is defined to allow assignment of the NULL value,
+   * and will throw an exception if passed any other value.
+   *
+   * Assigning to NULL is an alias for Reset().
+   * @param [in] rhs  A NULL pointer
+   * @return A reference to this handle
    */
-  using BaseHandle::operator=;
+  Image& operator=(BaseHandle::NullType* rhs);
 
   /**
    * @brief Create an initialised image object.