1 | #pragma once |
---|---|
2 | |
3 | #include <mbgl/style/property_value.hpp> |
4 | #include <mbgl/style/data_driven_property_value.hpp> |
5 | #include <mbgl/renderer/property_evaluator.hpp> |
6 | #include <mbgl/renderer/data_driven_property_evaluator.hpp> |
7 | |
8 | namespace mbgl { |
9 | namespace style { |
10 | |
11 | template <class T> |
12 | class LayoutProperty { |
13 | public: |
14 | using TransitionableType = std::nullptr_t; |
15 | using UnevaluatedType = PropertyValue<T>; |
16 | using EvaluatorType = PropertyEvaluator<T>; |
17 | using PossiblyEvaluatedType = T; |
18 | using Type = T; |
19 | static constexpr bool IsDataDriven = false; |
20 | }; |
21 | |
22 | template <class T> |
23 | class DataDrivenLayoutProperty { |
24 | public: |
25 | using TransitionableType = std::nullptr_t; |
26 | using UnevaluatedType = DataDrivenPropertyValue<T>; |
27 | using EvaluatorType = DataDrivenPropertyEvaluator<T>; |
28 | using PossiblyEvaluatedType = PossiblyEvaluatedPropertyValue<T>; |
29 | using Type = T; |
30 | static constexpr bool IsDataDriven = true; |
31 | }; |
32 | |
33 | } // namespace style |
34 | } // namespace mbgl |
35 |