diff options
Diffstat (limited to 'include/mbgl/style/light.hpp')
-rw-r--r-- | include/mbgl/style/light.hpp | 72 |
1 files changed, 34 insertions, 38 deletions
diff --git a/include/mbgl/style/light.hpp b/include/mbgl/style/light.hpp index bec8e6ddeb..7942d0d237 100644 --- a/include/mbgl/style/light.hpp +++ b/include/mbgl/style/light.hpp @@ -1,52 +1,48 @@ -#pragma once +// This file is generated. Do not edit. +#pragma once #include <mbgl/style/property_value.hpp> #include <mbgl/style/transition_options.hpp> #include <mbgl/style/types.hpp> -#include <mbgl/style/position.hpp> -#include <mbgl/util/color.hpp> -#include <mbgl/util/indexed_tuple.hpp> namespace mbgl { -namespace style { -template <class T> -class LightProperty { -public: - using Type = T; - using ValueType = PropertyValue<T>; +class RenderLight; - PropertyValue<T> value; - TransitionOptions transition; -}; - -struct LightAnchor : LightProperty<LightAnchorType> { - static LightAnchorType defaultValue() { - return LightAnchorType::Viewport; - } -}; - -struct LightPosition : LightProperty<Position> { - static Position defaultValue() { - std::array<float, 3> default_ = { { 1.15, 210, 30 } }; - return Position{ { default_ } }; - } -}; +namespace style { -struct LightColor : LightProperty<Color> { - static Color defaultValue() { - return Color::white(); - } -}; +class Light { +public: -struct LightIntensity : LightProperty<float> { - static float defaultValue() { - return 0.5; - } + static LightAnchorType getDefaultAnchor(); + PropertyValue<LightAnchorType> getAnchor() const; + void setAnchor(PropertyValue<LightAnchorType>); + void setAnchorTransition(const TransitionOptions&); + TransitionOptions getAnchorTransition() const; + + static Position getDefaultPosition(); + PropertyValue<Position> getPosition() const; + void setPosition(PropertyValue<Position>); + void setPositionTransition(const TransitionOptions&); + TransitionOptions getPositionTransition() const; + + static Color getDefaultColor(); + PropertyValue<Color> getColor() const; + void setColor(PropertyValue<Color>); + void setColorTransition(const TransitionOptions&); + TransitionOptions getColorTransition() const; + + static float getDefaultIntensity(); + PropertyValue<float> getIntensity() const; + void setIntensity(PropertyValue<float>); + void setIntensityTransition(const TransitionOptions&); + TransitionOptions getIntensityTransition() const; + +private: + IndexedTuple<LightProperties, LightProperties> properties; + + friend class mbgl::RenderLight; }; -using LightProperties = TypeList<LightAnchor, LightPosition, LightColor, LightIntensity>; -class Light : public IndexedTuple<LightProperties, LightProperties> {}; - } // namespace style } // namespace mbgl |