#pragma once #include #include namespace mbgl { template class Function { public: using Stop = std::pair; using Stops = std::vector; explicit Function(const T& constant) : stops({{ 0, constant }}) {} explicit Function(const Stops& stops_, float base_) : base(base_), stops(stops_) {} float getBase() const { return base; } const std::vector>& getStops() const { return stops; } private: float base = 1; std::vector> stops; }; } // namespace mbgl