#pragma once #include #include namespace mbgl { namespace style { class LayerProperties; } // namespace style class PaintParameters; class LayerGroup; /** Base class for layer tweakers, which manipulate layer group per frame */ class LayerTweaker { protected: LayerTweaker() = delete; LayerTweaker(Immutable properties); public: virtual ~LayerTweaker() = default; virtual void execute(LayerGroup&, const PaintParameters&) = 0; protected: Immutable evaluatedProperties; }; } // namespace mbgl