diff options
Diffstat (limited to 'src/mbgl/renderer/renderer_impl.hpp')
-rw-r--r-- | src/mbgl/renderer/renderer_impl.hpp | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/src/mbgl/renderer/renderer_impl.hpp b/src/mbgl/renderer/renderer_impl.hpp index 2294dde91e..521df6ca63 100644 --- a/src/mbgl/renderer/renderer_impl.hpp +++ b/src/mbgl/renderer/renderer_impl.hpp @@ -1,26 +1,23 @@ #pragma once + #include <mbgl/renderer/renderer.hpp> #include <mbgl/renderer/renderer_backend.hpp> #include <mbgl/renderer/renderer_observer.hpp> #include <mbgl/renderer/render_style_observer.hpp> -#include <mbgl/style/style.hpp> +#include <mbgl/renderer/frame_history.hpp> +#include <mbgl/map/transform_state.hpp> #include <memory> #include <string> +#include <vector> namespace mbgl { -enum class RenderState : uint8_t { - Never, - Partial, - Fully, -}; - -class Painter; -class RenderStyle; -class TransformState; class View; - +class UpdateParameters; +class PaintParameters; +class RenderStyle; +class RenderStaticData; class Renderer::Impl : public RenderStyleObserver { public: @@ -36,29 +33,36 @@ public: std::vector<Feature> querySourceFeatures(const std::string& sourceID, const SourceQueryOptions&) const; void onLowMemory(); - - void dumDebugLogs() ; + void dumDebugLogs(); // RenderStyleObserver implementation - void onInvalidate()override; + void onInvalidate() override; void onResourceError(std::exception_ptr) override; private: + void doRender(PaintParameters&); + friend class Renderer; RendererBackend& backend; - RendererObserver* observer; const GLContextMode contextMode; const float pixelRatio; const optional<std::string> programCacheDir; + enum class RenderState { + Never, + Partial, + Fully, + }; + RenderState renderState = RenderState::Never; + FrameHistory frameHistory; + TransformState transformState; std::unique_ptr<RenderStyle> renderStyle; - std::unique_ptr<Painter> painter; - + std::unique_ptr<RenderStaticData> staticData; }; } // namespace mbgl |