diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2017-07-18 16:11:44 -0700 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2017-07-19 09:31:07 -0700 |
commit | 64203ba53fa2384db60476afa9041b0d656cca1c (patch) | |
tree | 5a4b6d3410a491d351f2ec0c901b8fb1d7457754 /src/mbgl/renderer/renderer_impl.hpp | |
parent | 72b7e39074056eb5317fe98660488a0b0a13fbe9 (diff) | |
download | qtlocation-mapboxgl-64203ba53fa2384db60476afa9041b0d656cca1c.tar.gz |
[core] Refactor Painter away
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 |