diff options
-rw-r--r-- | platform/default/include/mbgl/gfx/headless_backend.hpp | 9 | ||||
-rw-r--r-- | platform/default/src/mbgl/gfx/headless_frontend.cpp | 4 | ||||
-rw-r--r-- | platform/default/src/mbgl/gl/headless_backend.cpp | 2 |
3 files changed, 10 insertions, 5 deletions
diff --git a/platform/default/include/mbgl/gfx/headless_backend.hpp b/platform/default/include/mbgl/gfx/headless_backend.hpp index e18ad21ce0..de9283dcdf 100644 --- a/platform/default/include/mbgl/gfx/headless_backend.hpp +++ b/platform/default/include/mbgl/gfx/headless_backend.hpp @@ -9,15 +9,20 @@ namespace mbgl { namespace gfx { +// Common headless backend interface, provides HeadlessBackend backend factory +// and enables extending gfx::Renderable with platform specific implementation +// of readStillImage. class HeadlessBackend : public gfx::Renderable { public: // Factory. - static std::unique_ptr<HeadlessBackend> makeBackend(Size = { 256, 256 }, gfx::ContextMode = gfx::ContextMode::Unique); + static std::unique_ptr<HeadlessBackend> make(Size = { 256, 256 }, gfx::ContextMode = gfx::ContextMode::Unique); - HeadlessBackend(Size); virtual PremultipliedImage readStillImage() = 0; virtual RendererBackend* getRendererBackend() = 0; void setSize(Size); + +protected: + HeadlessBackend(Size); }; } // namespace gfx diff --git a/platform/default/src/mbgl/gfx/headless_frontend.cpp b/platform/default/src/mbgl/gfx/headless_frontend.cpp index 0655d82e95..025abdd87a 100644 --- a/platform/default/src/mbgl/gfx/headless_frontend.cpp +++ b/platform/default/src/mbgl/gfx/headless_frontend.cpp @@ -24,8 +24,8 @@ HeadlessFrontend::HeadlessFrontend(Size size_, const optional<std::string> localFontFamily) : size(size_), pixelRatio(pixelRatio_), - backend(gfx::HeadlessBackend::makeBackend( { static_cast<uint32_t>(size.width * pixelRatio), - static_cast<uint32_t>(size.height * pixelRatio) }, contextMode)), + backend(gfx::HeadlessBackend::make( { static_cast<uint32_t>(size.width * pixelRatio), + static_cast<uint32_t>(size.height * pixelRatio) }, contextMode)), asyncInvalidate([this] { if (renderer && updateParameters) { gfx::BackendScope guard { *getBackend() }; diff --git a/platform/default/src/mbgl/gl/headless_backend.cpp b/platform/default/src/mbgl/gl/headless_backend.cpp index 825a108937..c81952fadc 100644 --- a/platform/default/src/mbgl/gl/headless_backend.cpp +++ b/platform/default/src/mbgl/gl/headless_backend.cpp @@ -88,7 +88,7 @@ RendererBackend* HeadlessBackend::getRendererBackend() { #ifndef OVERRIDE_HEADLESS_BACKEND_FACTORY // Default factory implementation. -std::unique_ptr<gfx::HeadlessBackend> gfx::HeadlessBackend::makeBackend(Size size, gfx::ContextMode contextMode) { +std::unique_ptr<gfx::HeadlessBackend> gfx::HeadlessBackend::make(Size size, gfx::ContextMode contextMode) { return std::make_unique<gl::HeadlessBackend>(size, contextMode); } #endif |