1 #pragma once 2 3 #include "qmapboxgl.hpp" 4 5 #include <mbgl/renderer/renderer_backend.hpp> 6 #include <mbgl/storage/default_file_source.hpp> 7 #include <mbgl/util/shared_thread_pool.hpp> 8 9 class QMapboxGLRendererBackend : public mbgl::RendererBackend 10 { 11 public: 12 QMapboxGLRendererBackend() = default; 13 virtual ~QMapboxGLRendererBackend() = default; 14 15 // mbgl::RendererBackend implementation 16 void updateAssumedState() final; 17 void bind() final; 18 mbgl::Size getFramebufferSize() const final; 19 20 void updateFramebuffer(quint32 fbo, const mbgl::Size &); 21 22 protected: 23 mbgl::gl::ProcAddress getExtensionFunctionPointer(const char*) final; 24 25 // No-op, implicit mode. activate()26 void activate() final {} deactivate()27 void deactivate() final {} 28 29 private: 30 quint32 m_fbo = 0; 31 mbgl::Size m_size = { 0, 0 }; 32 33 Q_DISABLE_COPY(QMapboxGLRendererBackend) 34 }; 35