Files
MapLibreParticleLab/include/mbgl/style/style_property.hpp

27 lines
612 B
C++

#pragma once
#include <mbgl/util/feature.hpp>
namespace mbgl {
namespace style {
/**
* @brief Generic representation of a style property.
*/
class StyleProperty {
public:
enum class Kind : uint8_t { Undefined, Constant, Expression, Transition };
StyleProperty(Value value_, Kind kind_) : value(std::move(value_)), kind(kind_) {}
StyleProperty() = default;
const Value& getValue() const { return value; }
Value& getValue() { return value; }
Kind getKind() const { return kind; }
private:
Value value;
Kind kind = Kind::Undefined;
};
} // namespace style
} // namespace mbgl