summaryrefslogtreecommitdiff
path: root/include/mbgl/style/layers/location_indicator_layer.hpp
blob: f112664dabad7c975184c94c1f0c2765ac9cd224 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
// clang-format off

// This file is generated. Do not edit.

#pragma once

#include <mbgl/style/layer.hpp>
#include <mbgl/style/filter.hpp>
#include <mbgl/style/property_value.hpp>
#include <mbgl/style/rotation.hpp>
#include <mbgl/util/color.hpp>

namespace mbgl {
namespace style {

class TransitionOptions;

class LocationIndicatorLayer : public Layer {
public:
    LocationIndicatorLayer(const std::string& layerID);
    ~LocationIndicatorLayer() final;

    // Layout properties

    static PropertyValue<expression::Image> getDefaultBearingImage();
    const PropertyValue<expression::Image>& getBearingImage() const;
    void setBearingImage(const PropertyValue<expression::Image>&);

    static PropertyValue<float> getDefaultImageTiltDisplacement();
    const PropertyValue<float>& getImageTiltDisplacement() const;
    void setImageTiltDisplacement(const PropertyValue<float>&);

    static PropertyValue<float> getDefaultPerspectiveCompensation();
    const PropertyValue<float>& getPerspectiveCompensation() const;
    void setPerspectiveCompensation(const PropertyValue<float>&);

    static PropertyValue<expression::Image> getDefaultShadowImage();
    const PropertyValue<expression::Image>& getShadowImage() const;
    void setShadowImage(const PropertyValue<expression::Image>&);

    static PropertyValue<expression::Image> getDefaultTopImage();
    const PropertyValue<expression::Image>& getTopImage() const;
    void setTopImage(const PropertyValue<expression::Image>&);

    // Paint properties

    static PropertyValue<float> getDefaultAccuracyRadius();
    const PropertyValue<float>& getAccuracyRadius() const;
    void setAccuracyRadius(const PropertyValue<float>&);
    void setAccuracyRadiusTransition(const TransitionOptions&);
    TransitionOptions getAccuracyRadiusTransition() const;

    static PropertyValue<Color> getDefaultAccuracyRadiusBorderColor();
    const PropertyValue<Color>& getAccuracyRadiusBorderColor() const;
    void setAccuracyRadiusBorderColor(const PropertyValue<Color>&);
    void setAccuracyRadiusBorderColorTransition(const TransitionOptions&);
    TransitionOptions getAccuracyRadiusBorderColorTransition() const;

    static PropertyValue<Color> getDefaultAccuracyRadiusColor();
    const PropertyValue<Color>& getAccuracyRadiusColor() const;
    void setAccuracyRadiusColor(const PropertyValue<Color>&);
    void setAccuracyRadiusColorTransition(const TransitionOptions&);
    TransitionOptions getAccuracyRadiusColorTransition() const;

    static PropertyValue<Rotation> getDefaultBearing();
    const PropertyValue<Rotation>& getBearing() const;
    void setBearing(const PropertyValue<Rotation>&);
    void setBearingTransition(const TransitionOptions&);
    TransitionOptions getBearingTransition() const;

    static PropertyValue<float> getDefaultBearingImageSize();
    const PropertyValue<float>& getBearingImageSize() const;
    void setBearingImageSize(const PropertyValue<float>&);
    void setBearingImageSizeTransition(const TransitionOptions&);
    TransitionOptions getBearingImageSizeTransition() const;

    static PropertyValue<std::array<double, 3>> getDefaultLocation();
    const PropertyValue<std::array<double, 3>>& getLocation() const;
    void setLocation(const PropertyValue<std::array<double, 3>>&);
    void setLocationTransition(const TransitionOptions&);
    TransitionOptions getLocationTransition() const;

    static PropertyValue<float> getDefaultShadowImageSize();
    const PropertyValue<float>& getShadowImageSize() const;
    void setShadowImageSize(const PropertyValue<float>&);
    void setShadowImageSizeTransition(const TransitionOptions&);
    TransitionOptions getShadowImageSizeTransition() const;

    static PropertyValue<float> getDefaultTopImageSize();
    const PropertyValue<float>& getTopImageSize() const;
    void setTopImageSize(const PropertyValue<float>&);
    void setTopImageSizeTransition(const TransitionOptions&);
    TransitionOptions getTopImageSizeTransition() const;

    // Private implementation

    class Impl;
    const Impl& impl() const;

    Mutable<Impl> mutableImpl() const;
    LocationIndicatorLayer(Immutable<Impl>);
    std::unique_ptr<Layer> cloneRef(const std::string& id) const final;

protected:
    // Dynamic properties
    optional<conversion::Error> setPropertyInternal(const std::string& name, const conversion::Convertible& value) final;

    StyleProperty getProperty(const std::string& name) const final;
    Value serialize() const final;

    Mutable<Layer::Impl> mutableBaseImpl() const final;
};

} // namespace style
} // namespace mbgl

// clang-format on