summaryrefslogtreecommitdiff
path: root/platform/default/mbgl/gl/headless_backend.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/default/mbgl/gl/headless_backend.hpp')
-rw-r--r--platform/default/mbgl/gl/headless_backend.hpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/platform/default/mbgl/gl/headless_backend.hpp b/platform/default/mbgl/gl/headless_backend.hpp
index 128b579bd2..66f861e213 100644
--- a/platform/default/mbgl/gl/headless_backend.hpp
+++ b/platform/default/mbgl/gl/headless_backend.hpp
@@ -1,6 +1,6 @@
#pragma once
-#include <mbgl/map/backend.hpp>
+#include <mbgl/renderer/renderer_backend.hpp>
#include <memory>
#include <functional>
@@ -9,18 +9,20 @@ namespace mbgl {
class HeadlessDisplay;
-class HeadlessBackend : public Backend {
+class HeadlessBackend : public RendererBackend {
public:
- HeadlessBackend();
- HeadlessBackend(std::shared_ptr<HeadlessDisplay>);
+ HeadlessBackend(Size = { 256, 256 });
~HeadlessBackend() override;
+ void bind() override;
+ Size getFramebufferSize() const override;
void updateAssumedState() override;
- void invalidate() override;
+ void setSize(Size);
+ PremultipliedImage readStillImage();
struct Impl {
- virtual ~Impl() {}
+ virtual ~Impl() = default;
virtual void activateContext() = 0;
virtual void deactivateContext() {}
};
@@ -40,7 +42,12 @@ private:
std::shared_ptr<HeadlessDisplay> display;
std::unique_ptr<Impl> impl;
+ Size size;
+ float pixelRatio;
bool active = false;
+
+ class View;
+ std::unique_ptr<View> view;
};
} // namespace mbgl