X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Fupdate%2Fcontrollers%2Frender-message-dispatcher.h;h=59a6e819cfa755e9b395b958b59ce5a2f4e26f80;hb=23a2b8163c01a41b35dfbe8b8d9f2641777a7245;hp=7980606315c65f74643f0434e54277969ddd91e6;hpb=7e14935f42dc79f6b8239b0301078d004d3ebaba;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/update/controllers/render-message-dispatcher.h b/dali/internal/update/controllers/render-message-dispatcher.h index 7980606..59a6e81 100644 --- a/dali/internal/update/controllers/render-message-dispatcher.h +++ b/dali/internal/update/controllers/render-message-dispatcher.h @@ -1,8 +1,8 @@ -#ifndef __DALI_INTERNAL_SCENE_GRAPH_RENDER_MESSAGE_DISPATCHER_H__ -#define __DALI_INTERNAL_SCENE_GRAPH_RENDER_MESSAGE_DISPATCHER_H__ +#ifndef DALI_INTERNAL_SCENE_GRAPH_RENDER_MESSAGE_DISPATCHER_H +#define DALI_INTERNAL_SCENE_GRAPH_RENDER_MESSAGE_DISPATCHER_H /* - * Copyright (c) 2014 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. @@ -19,35 +19,35 @@ */ // INTERNAL INCLUDES +#include #include -#include namespace Dali { - namespace Internal { class MessageBase; +namespace Render +{ +class RenderTracker; +} + namespace SceneGraph { -class Renderer; class RenderManager; class RenderQueue; -class RenderTracker; -class RenderGeometry; -class PropertyBufferDataProvider; + /** * A utility class for sending messages to the render-thread. */ class RenderMessageDispatcher { public: - /** * Constructor */ - RenderMessageDispatcher( RenderManager& renderManager, RenderQueue& renderQueue, const SceneGraphBuffers& buffers ); + RenderMessageDispatcher(RenderManager& renderManager, RenderQueue& renderQueue, const SceneGraphBuffers& buffers); /** * Destructor @@ -59,64 +59,32 @@ public: * @param[in] renderer The renderer to add. * @post renderer ownership is transferred. */ - void AddRenderer( Renderer& renderer ); + void AddRenderer(const Render::RendererKey& renderer); /** * Remove a Renderer. * @param[in] renderer The renderer to remove. * @post renderer will be destroyed in the next Render. */ - void RemoveRenderer( Renderer& renderer ); - - /** - * Add a Geometry - * @param[in] renderGeometry The geometry to add. - * @post RenderGeometry ownership is transferred. - */ - void AddGeometry( RenderGeometry& renderGeometry ); - - /** - * Remove a Geometry. - * @param[in] renderGeometry The geometry to remove. - * @post RenderGeometry will be destroyed in the next Render. - */ - void RemoveGeometry( RenderGeometry& renderGeometry ); - - /** - * Add a PropertyBuffer. - * @param[in] renderGeometry The geometry - * @param[in] propertyBuffer The PropertyBuffer - * @param[in] target Specifies the type of the buffer - * @param[in] usage Specifies how will the buffer be used - */ - void AddPropertyBuffer( RenderGeometry& renderGeometry, PropertyBufferDataProvider* propertyBuffer, GpuBuffer::Target target, GpuBuffer::Usage usage ); - - /** - * Remove a PropertyBuffer. - * @param[in] renderGeometry The geometry - * @param[in] propertyBuffer The PropertyBuffer - * @post PropertyBuffer will be destroyed in the next Render. - */ - void RemovePropertyBuffer( RenderGeometry& renderGeometry, PropertyBufferDataProvider* propertyBuffer ); + void RemoveRenderer(const Render::RendererKey& renderer); /** * Add a Render tracker. * @param[in] renderTracker The render tracker to add. * @post ownership is transferred */ - void AddRenderTracker( RenderTracker& renderTracker ); + void AddRenderTracker(Render::RenderTracker& renderTracker); /** * Remove a Render tracker. * @param[in] renderTracker The render tracker to add. * @post render tracker will be destroyed in the next Render pass. */ - void RemoveRenderTracker( RenderTracker& renderTracker ); + void RemoveRenderTracker(Render::RenderTracker& renderTracker); private: - RenderManager& mRenderManager; - RenderQueue& mRenderQueue; + RenderQueue& mRenderQueue; const SceneGraphBuffers& mBuffers; }; @@ -127,4 +95,4 @@ private: } // namespace Dali -#endif // __DALI_INTERNAL_SCENE_GRAPH_RENDERER_DISPATCHER_H__ +#endif // DALI_INTERNAL_SCENE_GRAPH_RENDER_MESSAGE_DISPATCHER_H