Files
MapLibreParticleLab/include/mbgl/style/light.hpp.ejs
2023-03-17 13:51:59 +02:00

52 lines
1.3 KiB
Plaintext

<%
const properties = locals.properties;
-%>
// clang-format off
// This file is generated. Do not edit.
#pragma once
#include <mbgl/style/conversion.hpp>
#include <mbgl/style/property_value.hpp>
#include <mbgl/style/style_property.hpp>
#include <mbgl/style/transition_options.hpp>
#include <mbgl/style/types.hpp>
#include <mbgl/util/immutable.hpp>
namespace mbgl {
namespace style {
class LightObserver;
class Light {
public:
Light();
~Light();
// Dynamic properties
std::optional<conversion::Error> setProperty(const std::string& name, const conversion::Convertible& value);
StyleProperty getProperty(const std::string&) const;
<% for (const property of properties) { -%>
static <%- evaluatedType(property) %> getDefault<%- camelize(property.name) %>();
<%- propertyValueType(property) %> get<%- camelize(property.name) %>() const;
void set<%- camelize(property.name) %>(<%- propertyValueType(property) %>);
void set<%- camelize(property.name) %>Transition(const TransitionOptions&);
TransitionOptions get<%- camelize(property.name) %>Transition() const;
<% } -%>
class Impl;
Immutable<Impl> impl;
explicit Light(Immutable<Impl>);
Mutable<Impl> mutableImpl() const;
LightObserver* observer = nullptr;
void setObserver(LightObserver*);
};
} // namespace style
} // namespace mbgl
// clang-format on