Files
MapLibreParticleLab/src/mbgl/renderer/renderer_impl.hpp
Bart Louwers 71f6da2722 Add clang-format (#1086)
Co-authored-by: mwilsnd <mwilsnd@gmail.com>
2023-05-01 16:57:37 +02:00

53 lines
949 B
C++

#pragma once
#include <mbgl/renderer/render_orchestrator.hpp>
#include <memory>
#include <string>
namespace mbgl {
class RendererObserver;
class RenderStaticData;
class RenderTree;
namespace gfx {
class RendererBackend;
class ShadeRegistry;
} // namespace gfx
class Renderer::Impl {
public:
Impl(gfx::RendererBackend&, float pixelRatio_, const std::optional<std::string>& localFontFamily_);
~Impl();
private:
friend class Renderer;
void setObserver(RendererObserver*);
void render(const RenderTree&);
void reduceMemoryUse();
// TODO: Move orchestrator to Map::Impl.
RenderOrchestrator orchestrator;
gfx::RendererBackend& backend;
RendererObserver* observer;
const float pixelRatio;
std::unique_ptr<RenderStaticData> staticData;
enum class RenderState {
Never,
Partial,
Fully,
};
RenderState renderState = RenderState::Never;
};
} // namespace mbgl