#define DALI_RENDER_SURFACE_INTERFACE_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 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.
*/
// EXTERNAL INCLUDES
-#include <dali/integration-api/render-surface.h>
#include <dali/integration-api/core-enumerations.h>
#include <dali/public-api/math/vector4.h>
+#include <dali/public-api/math/rect.h>
+#include <dali/public-api/object/any.h>
namespace Dali
{
}
/**
+ * @brief The position and size of the render surface.
+ */
+typedef Dali::Rect<int> PositionSize;
+
+/**
* @brief Interface for a render surface onto which Dali draws.
*
* Dali::Adaptor requires a render surface to draw on to. This is
* implementation of RenderSurface for the given platform
*/
-class RenderSurfaceInterface : public Dali::Integration::RenderSurface
+class RenderSurfaceInterface
{
public:
+ enum Type
+ {
+ WINDOW_RENDER_SURFACE,
+ PIXMAP_RENDER_SURFACE,
+ NATIVE_RENDER_SURFACE
+ };
+
/**
* @brief Constructor
* Inlined as this is a pure abstract interface
virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) = 0;
/**
- * @brief Return the orientation of the surface.
- * @return The orientation
- */
- virtual int GetOrientation() const = 0;
-
- /**
* @brief InitializeGraphics the platform specific graphics surface interfaces
*/
virtual void InitializeGraphics() = 0;
/**
* @brief Gets the surface type
*/
- virtual Dali::Integration::RenderSurface::Type GetSurfaceType() = 0;
+ virtual Dali::RenderSurfaceInterface::Type GetSurfaceType() = 0;
/**
* @brief Makes the graphics context current
*/
virtual Integration::StencilBufferAvailable GetStencilBufferRequired() = 0;
- /**
- * @brief Sets currentframe damaged rects
- * @param[in] Sets currentframe damaged rects
- * @param[out] return merged rect
- */
- virtual void SetDamagedRect( const Dali::DamagedRect& damagedRect, Dali::DamagedRect& mergedRectArray ) = 0;
-
- /**
- * @brief Gets buffer age
- */
- virtual int32_t GetBufferAge() = 0;
-
public:
void SetAdaptor( Dali::Internal::Adaptor::AdaptorInternalServices& adaptor )