Fix partial update issues
[platform/core/uifw/dali-core.git] / dali / internal / render / data-providers / render-data-provider.h
index f33822d..d8a3a0b 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_INTERNAL_SCENE_GRAPH_RENDER_DATA_PROVIDER_H
 
 /*
- * Copyright (c) 2021 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.
@@ -82,9 +82,24 @@ public:
 
   /**
    * Get the opacity
+   * @param[in] bufferIndex The current buffer index.
    * @return The opacity
    */
   virtual float GetOpacity(BufferIndex bufferIndex) const = 0;
+
+  /**
+   * @brief Retrieve if the render data is updated
+   * @return An updated flag
+   */
+  virtual bool IsUpdated() const = 0;
+
+  /**
+   * @brief Get the update area after visual properties applied.
+   * @param[in] bufferIndex The current buffer index.
+   * @param[in] originalUpdateArea The original update area before apply the visual properties.
+   * @return The recalculated size after visual properties applied.
+   */
+  virtual Vector4 GetVisualTransformedUpdateArea(BufferIndex bufferIndex, const Vector4& originalUpdateArea) noexcept = 0;
 };
 
 } // namespace SceneGraph