#ifndef MBGL_STYLE_FADEDFUNCTION_PROPERTIES #define MBGL_STYLE_FADEDFUNCTION_PROPERTIES #include #include namespace mbgl { template struct PiecewiseConstantFunction { inline PiecewiseConstantFunction(const std::vector> &values_, std::chrono::duration duration_) : values(values_), duration(duration_) {} inline PiecewiseConstantFunction(T &value, std::chrono::duration duration_) : values({{ 0, value }}), duration(duration_) {} inline PiecewiseConstantFunction() : values(), duration(std::chrono::milliseconds(300)) {} T evaluate(float z, const ZoomHistory &zoomHistory) const; private: const std::vector> values; const std::chrono::duration duration; }; } #endif