Files
MapLibreParticleLab/src/mbgl/renderer/layers/render_custom_layer.hpp
2023-08-31 15:36:19 +02:00

39 lines
1.0 KiB
C++

#pragma once
#include <mbgl/style/layers/custom_layer_impl.hpp>
#include <mbgl/renderer/render_layer.hpp>
namespace mbgl {
class RenderCustomLayer final : public RenderLayer {
public:
explicit RenderCustomLayer(Immutable<style::CustomLayer::Impl>);
~RenderCustomLayer() override;
#if MLN_DRAWABLE_RENDERER
/// Generate any changes needed by the layer
void update(gfx::ShaderRegistry&,
gfx::Context&,
const TransformState&,
const RenderTree&,
UniqueChangeRequestVec&) override;
#endif
private:
void transition(const TransitionParameters&) override {}
void evaluate(const PropertyEvaluationParameters&) override;
bool hasTransition() const override;
bool hasCrossfade() const override;
void markContextDestroyed() override;
void prepare(const LayerPrepareParameters&) override;
#if MLN_LEGACY_RENDERER
void render(PaintParameters&) override;
#endif
bool contextDestroyed = false;
std::shared_ptr<style::CustomLayerHost> host;
};
} // namespace mbgl