*/
void MakeContextCurrent();
+ /**
+ * @brief Sets currentframe damaged rects
+ * @param[in] Sets currentframe damaged rects
+ * @param[out] return merged rect
+ */
+ void SetDamagedRect( const Dali::DamagedRect& damagedRect, Dali::DamagedRect& mergedRect );
+
+ /**
+ * @brief Gets whether partial update is required for partial update
+ * @return whether partial update or not
+ */
+ bool IsPartialUpdateEnabled() const;
+
+ /**
+ * @brief Sets whether partial update is required for partial update
+ * @param[in] value whether partial update or not
+ */
+ void SetPartialUpdateEnabled( bool value );
+
private:
Integration::RenderSurface* mSurface; ///< The render surface
uint32_t mHeight;
bool mSizeChanged;
std::atomic<bool> mIsSurfaceInvalid; ///< This is set only from the event thread and read only from the render thread
+ bool mPartialUpdateEnabled; ///< This value is whether partial update is required
};
// Messages for FrameBuffer
new (slot) LocalType( surfaceFrameBuffer, &SurfaceFrameBuffer::SetSize, width, height );
}
+inline void SetFrameBufferPartialUpdateMessage( SceneGraph::UpdateManager& updateManager, SurfaceFrameBuffer* surfaceFrameBuffer, bool value )
+{
+ typedef MessageValue1< SurfaceFrameBuffer, bool > LocalType;
+
+ // Reserve some memory inside the message queue
+ uint32_t* slot = updateManager.ReserveMessageSlot( sizeof( LocalType ) );
+
+ // Construct message in the message queue memory; note that delete should not be called on the return value
+ new (slot) LocalType( surfaceFrameBuffer, &SurfaceFrameBuffer::SetPartialUpdateEnabled, value );
+}
+
} // namespace Render
} // namespace Internal