Merge "Add BuildPickingRay to devel api" into devel/master
[platform/core/uifw/dali-core.git] / dali / integration-api / scene.h
index aac126f..75d4939 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_SCENE_H
 
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 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.
@@ -126,7 +126,7 @@ public:
    *
    * @param [in] handle A reference to the moved handle
    */
-  Scene(Scene&& handle);
+  Scene(Scene&& handle) noexcept;
 
   /**
    * @brief This move assignment operator is required for (smart) pointer semantics.
@@ -134,7 +134,7 @@ public:
    * @param [in] rhs  A reference to the moved handle
    * @return A reference to this
    */
-  Scene& operator=(Scene&& rhs);
+  Scene& operator=(Scene&& rhs) noexcept;
 
   /**
    * @brief Adds a child Actor to the Scene.
@@ -207,6 +207,14 @@ public:
   Layer GetRootLayer() const;
 
   /**
+   * @brief Returns the Scene's Overlay Layer.
+   * If there is no overlay layer yet, this creates the layer and an associated render task.
+   *
+   * @return The overlay layer
+   */
+  Layer GetOverlayLayer();
+
+  /**
    * @brief Queries the number of on-stage layers.
    *
    * Note that a default layer is always provided (count >= 1).
@@ -237,6 +245,11 @@ public:
   void SurfaceReplaced();
 
   /**
+   * @brief Removes the scene graph object.
+   */
+  void RemoveSceneObject();
+
+  /**
    * @brief Discards this Scene from the Core.
    */
   void Discard();