X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fpublic-api%2Frendering%2Frenderer.h;h=3dfd9eaabb8ce1f6a4881ec531e81bb85d34e69a;hb=0b501ba800a263b97d99adf224fc42d0c2aa8b37;hp=d384918bf3129aa4b02e2bcf6c7be5ce03485700;hpb=2d419da00f8544182a37e4009248a0b669f4790a;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/public-api/rendering/renderer.h b/dali/public-api/rendering/renderer.h index d384918..3dfd9ea 100644 --- a/dali/public-api/rendering/renderer.h +++ b/dali/public-api/rendering/renderer.h @@ -2,7 +2,7 @@ #define DALI_RENDERER_H /* - * Copyright (c) 2020 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. @@ -26,6 +26,8 @@ namespace Dali { +class RenderCallback; + /** * @addtogroup dali_core_rendering_effects * @{ @@ -60,10 +62,11 @@ namespace BlendMode */ enum Type { - OFF, ///< Blending is disabled. @SINCE_1_1.43 - AUTO, ///< Blending is enabled if there is alpha channel. This is the default mode. @SINCE_1_1.43 - ON, ///< Blending is enabled. @SINCE_1_1.43 - ON_WITHOUT_CULL ///< Blending is enabled, and don't cull the renderer @SINCE_2_0.43 + OFF, ///< Blending is disabled. @SINCE_1_1.43 + AUTO, ///< Blending is enabled if there is alpha channel. This is the default mode. @SINCE_1_1.43 + ON, ///< Blending is enabled. @SINCE_1_1.43 + ON_WITHOUT_CULL, ///< Blending is enabled, and don't cull the renderer @SINCE_2_0.43 + USE_ACTOR_OPACITY ///< Blending is enabled when the actor is not opaque @SINCE_2_2.7 }; } // namespace BlendMode @@ -426,6 +429,15 @@ public: static Renderer New(Geometry& geometry, Shader& shader); /** + * @brief Creates a new Renderer object with RenderCallback. + * + * @SINCE_2_1.18 + * @param[in] renderCallback Valid RenderCallback + * @return A handle to the Renderer + */ + static Renderer New(RenderCallback& renderCallback); + + /** * @brief Default constructor, creates an empty handle * * @SINCE_1_1.43 @@ -472,7 +484,7 @@ public: * @SINCE_1_9.22 * @param[in] rhs A reference to the moved handle */ - Renderer(Renderer&& rhs); + Renderer(Renderer&& rhs) noexcept; /** * @brief Move assignment operator. @@ -481,7 +493,7 @@ public: * @param[in] rhs A reference to the moved handle * @return A reference to this handle */ - Renderer& operator=(Renderer&& rhs); + Renderer& operator=(Renderer&& rhs) noexcept; /** * @brief Sets the geometry to be used by this renderer. @@ -544,7 +556,16 @@ public: */ Shader GetShader() const; + /** + * @brief Sets RenderCallback to be used for native rendering + * + * @SINCE_2_1.15 + * @param[in] callback Pointer to a valid RenderCallback object + */ + void SetRenderCallback(RenderCallback* callback); + public: + /// @cond internal /** * @brief The constructor. * @note Not intended for application developers. @@ -552,6 +573,7 @@ public: * @param[in] pointer A pointer to a newly allocated Renderer */ explicit DALI_INTERNAL Renderer(Internal::Renderer* pointer); + /// @endcond }; /**