1 #pragma once
2 
3 #include <mbgl/map/zoom_history.hpp>
4 #include <mbgl/util/chrono.hpp>
5 
6 namespace mbgl {
7 
8 class PropertyEvaluationParameters {
9 public:
PropertyEvaluationParameters(float z_)10     explicit PropertyEvaluationParameters(float z_)
11         : z(z_),
12           now(Clock::time_point::max()),
13           zoomHistory(),
14           defaultFadeDuration(0),
15           useIntegerZoom(false) {}
16 
PropertyEvaluationParameters(ZoomHistory zoomHistory_,TimePoint now_,Duration defaultFadeDuration_,bool useIntegerZoom_=false)17     PropertyEvaluationParameters(ZoomHistory zoomHistory_,
18                           TimePoint now_,
19                           Duration defaultFadeDuration_,
20                           bool useIntegerZoom_ = false)
21         : z(zoomHistory_.lastZoom),
22           now(std::move(now_)),
23           zoomHistory(std::move(zoomHistory_)),
24           defaultFadeDuration(std::move(defaultFadeDuration_)),
25           useIntegerZoom(useIntegerZoom_) {}
26 
27     float z;
28     TimePoint now;
29     ZoomHistory zoomHistory;
30     Duration defaultFadeDuration;
31     bool useIntegerZoom;
32 };
33 
34 } // namespace mbgl
35