-#ifndef DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_FACTORY_ECORE_WL_H
-#define DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_FACTORY_ECORE_WL_H
+#ifndef DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_BASE_FACTORY_H
+#define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_BASE_FACTORY_H
/*
* Copyright (c) 2018 Samsung Electronics Co., Ltd.
*
*/
-#include <dali/internal/window-system/common/window-factory.h>
+// EXTERNAL INCLUDES
+#include <memory>
namespace Dali
{
namespace Adaptor
{
-class WindowFactoryEcoreWl : public WindowFactory
+class WindowBase;
+class Window;
+class WindowRenderSurface;
+
+class WindowBaseFactory
{
public:
- std::unique_ptr< WindowBase > CreateWindowBase( Window* window, WindowRenderSurface* windowRenderSurface ) override;
- std::unique_ptr< IndicatorInterface > CreateIndicator( Adaptor* adaptor, Dali::Window::WindowOrientation orientation, IndicatorInterface::Observer* observer ) override;
+ WindowBaseFactory() = default;
+ virtual ~WindowBaseFactory() = default;
+
+ virtual std::unique_ptr< Dali::Internal::Adaptor::WindowBase > CreateWindowBase( Window* window, WindowRenderSurface* windowRenderSurface ) = 0;
};
+extern std::unique_ptr< WindowBaseFactory > GetWindowBaseFactory();
+
} // namespace Adaptor
} // namespace Internal
} // namespace Dali
-#endif // DALI_INTERNAL_WINDOWSYSTEM_TIZENWAYLAND_WINDOW_FACTORY_ECORE_WL_H
+#endif // DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_BASE_FACTORY_H