[dali_2.3.19] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / rendering / text-backend.h
index df7bfa2..733e688 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_TOOLKIT_TEXT_BACKEND_H__
-#define __DALI_TOOLKIT_TEXT_BACKEND_H__
+#ifndef DALI_TOOLKIT_TEXT_BACKEND_H
+#define DALI_TOOLKIT_TEXT_BACKEND_H
 
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 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
 {
-
 namespace Toolkit
 {
-
 namespace Text
 {
-
 namespace Internal DALI_INTERNAL
 {
 class Backend;
@@ -41,10 +38,9 @@ class Backend;
 /**
  * @brief Provides access to different text rendering backends.
  */
-class DALI_IMPORT_API Backend : public BaseHandle
+class Backend : public BaseHandle
 {
 public:
-
   /**
    * @brief Retrieve a handle to the Backend instance.
    *
@@ -58,7 +54,7 @@ public:
    * @param[in] renderingType The type of rendering required.
    * @return A handle to the newly created renderer.
    */
-  RendererPtr NewRenderer( unsigned int renderingType );
+  RendererPtr NewRenderer(unsigned int renderingType);
 
   /**
    * @brief Create an uninitialized TextAbstraction handle.
@@ -77,7 +73,7 @@ public:
    *
    * @param[in] handle A reference to the copied handle.
    */
-  Backend( const Backend& handle );
+  Backend(const Backend& handle);
 
   /**
    * @brief This assignment operator is required for (smart) pointer semantics.
@@ -85,16 +81,30 @@ public:
    * @param [in] handle  A reference to the copied handle.
    * @return A reference to this.
    */
-  Backend& operator=( const Backend& handle );
+  Backend& operator=(const Backend& handle);
 
-public: // Not intended for application developers
+  /**
+   * @brief This move constructor is required for (smart) pointer semantics.
+   *
+   * @param[in] handle A reference to the moved handle.
+   */
+  Backend(Backend&& handle);
 
   /**
+   * @brief This move assignment operator is required for (smart) pointer semantics.
+   *
+   * @param [in] handle  A reference to the moved handle.
+   * @return A reference to this.
+   */
+  Backend& operator=(Backend&& handle);
+
+public: // Not intended for application developers
+  /**
    * @brief This constructor is used by Backend::Get().
    *
    * @param[in] backend A pointer to the internal backend object.
    */
-  explicit DALI_INTERNAL Backend( Internal::Backend* backend );
+  explicit DALI_INTERNAL Backend(Internal::Backend* backend);
 };
 
 } // namespace Text
@@ -103,4 +113,4 @@ public: // Not intended for application developers
 
 } // namespace Dali
 
-#endif // __DALI_TOOLKIT_TEXT_BACKEND_H__
+#endif // DALI_TOOLKIT_TEXT_BACKEND_H