X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fgl-view%2Fdrawable-view-impl.h;h=55f1db37a78d81ab84bafe3412102009d5efa550;hp=c61832a8f9e657ab98e1e16a9d340f34bff51f8f;hb=0255ba0039cf628d8dbc82d8898000da98833532;hpb=c202bbacd19fb0e552f15f1a4106f207927845c3 diff --git a/dali-toolkit/internal/controls/gl-view/drawable-view-impl.h b/dali-toolkit/internal/controls/gl-view/drawable-view-impl.h index c61832a..55f1db3 100644 --- a/dali-toolkit/internal/controls/gl-view/drawable-view-impl.h +++ b/dali-toolkit/internal/controls/gl-view/drawable-view-impl.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_INTERNAL_DRAWABLE_VIEW_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. @@ -29,6 +29,7 @@ // INTERNAL INCLUDES #include +#include #include #include @@ -44,15 +45,23 @@ protected: virtual ~DrawableView(); public: + /** - * @copydoc Dali::Toolkit::GlView::New() + * @brief Creates GlView interface object using DrawableView implementation + * + * @param[in] backendMode Backend mode to be used. Only DIRECT_RENDERING and DIRECT_RENDERING_THREADED + * are accepted. + * @return Valid GlView object or nullptr on error */ - static Dali::Toolkit::GlView New(); + static Dali::Toolkit::GlView New(GlView::BackendMode backendMode); /** - * Construct a new GlView. + * @brief Constructor creates GlView interface object using DrawableView implementation + * + * @param[in] backendMode Backend mode to be used. Only DIRECT_RENDERING and DIRECT_RENDERING_THREADED + * are accepted. */ - DrawableView(); + explicit DrawableView(GlView::BackendMode backendMode); /** * @copydoc Dali::Toolkit::GlView::RegisterGlCallbacks() @@ -150,15 +159,13 @@ private: ViewState mCurrentViewState{ViewState::INIT}; ///< state within RenderCallback - // These callbacks are stored for GLView API compatibility - std::unique_ptr mOnInitCallback; - std::unique_ptr mOnRenderCallback; - std::unique_ptr mOnTerminateCallback; - std::unique_ptr mOnResizeCallback; + std::unique_ptr mOnResizeCallback; ///< Resize callback called when surface size changes std::atomic_bool mSurfaceResized{false}; ///< Flag to invoke surface resize callback Size mSurfaceSize{}; ///< Surface size + + std::unique_ptr mNativeRenderer; ///< Pointer to the native renderer }; } // namespace Internal