[dali_2.3.32] Merge branch 'devel/master'
[platform/core/uifw/dali-core.git] / dali / devel-api / update / update-proxy.h
index 31b0afb..eb093a0 100644 (file)
@@ -46,6 +46,12 @@ class DALI_CORE_API UpdateProxy
 {
 public:
   /**
+   * Type to define a unique sync point.
+   */
+  using NotifySyncPoint = int;
+  static constexpr NotifySyncPoint INVALID_SYNC{-1};
+
+  /**
    * @brief Given the Actor ID, this retrieves that Actor's local position.
    * @param[in]   id        The Actor ID
    * @param[out]  position  Set to the Actor's current position, if Actor ID is valid
@@ -205,6 +211,32 @@ public:
    */
   bool BakeColor(uint32_t id, const Vector4& color);
 
+  /**
+   * @brief Pop a sync point off the stack.
+   *
+   * Sync points can be added from the event side using Dali::DevelStage::NotifyFrameCallback().
+   * @return INVALID_SYNC if there was no SyncPoint, or a unique value if there was a sync point.
+   */
+  NotifySyncPoint PopSyncPoint();
+
+  /**
+   * @brief Given the Actor ID, Gets the updated area of the actor.
+   *
+   * @param[in]   id     The Actor ID
+   * @param[out]  updateArea  Get to the Actor's current updated area, if Actor ID is valid
+   * @return Whether the method call was successful or not.
+   */
+  bool GetUpdateArea(uint32_t id, Vector4& updateArea) const;
+
+  /**
+   * @brief Given the Actor ID, Sets the updated area of the actor.
+   *
+   * @param[in]   id     The Actor ID
+   * @param[in]   updateArea  Set to the Actor's current updated area, if Actor ID is valid
+   * @return Whether the method call was successful or not.
+   */
+  bool SetUpdateArea(uint32_t id, const Vector4& updateArea);
+
 public: // Not intended for application developers
   /// @cond internal