1 // This file is generated. Do not edit.
2 
3 #pragma once
4 
5 #include <mbgl/style/layer.hpp>
6 #include <mbgl/style/filter.hpp>
7 #include <mbgl/style/property_value.hpp>
8 #include <mbgl/style/data_driven_property_value.hpp>
9 
10 #include <mbgl/util/color.hpp>
11 
12 namespace mbgl {
13 namespace style {
14 
15 class TransitionOptions;
16 
17 class RasterLayer : public Layer {
18 public:
19     RasterLayer(const std::string& layerID, const std::string& sourceID);
20     ~RasterLayer() final;
21 
22     // Source
23     const std::string& getSourceID() const;
24 
25     // Visibility
26     void setVisibility(VisibilityType) final;
27 
28     // Zoom range
29     void setMinZoom(float) final;
30     void setMaxZoom(float) final;
31 
32     // Paint properties
33 
34     static PropertyValue<float> getDefaultRasterOpacity();
35     PropertyValue<float> getRasterOpacity() const;
36     void setRasterOpacity(PropertyValue<float>);
37     void setRasterOpacityTransition(const TransitionOptions&);
38     TransitionOptions getRasterOpacityTransition() const;
39 
40     static PropertyValue<float> getDefaultRasterHueRotate();
41     PropertyValue<float> getRasterHueRotate() const;
42     void setRasterHueRotate(PropertyValue<float>);
43     void setRasterHueRotateTransition(const TransitionOptions&);
44     TransitionOptions getRasterHueRotateTransition() const;
45 
46     static PropertyValue<float> getDefaultRasterBrightnessMin();
47     PropertyValue<float> getRasterBrightnessMin() const;
48     void setRasterBrightnessMin(PropertyValue<float>);
49     void setRasterBrightnessMinTransition(const TransitionOptions&);
50     TransitionOptions getRasterBrightnessMinTransition() const;
51 
52     static PropertyValue<float> getDefaultRasterBrightnessMax();
53     PropertyValue<float> getRasterBrightnessMax() const;
54     void setRasterBrightnessMax(PropertyValue<float>);
55     void setRasterBrightnessMaxTransition(const TransitionOptions&);
56     TransitionOptions getRasterBrightnessMaxTransition() const;
57 
58     static PropertyValue<float> getDefaultRasterSaturation();
59     PropertyValue<float> getRasterSaturation() const;
60     void setRasterSaturation(PropertyValue<float>);
61     void setRasterSaturationTransition(const TransitionOptions&);
62     TransitionOptions getRasterSaturationTransition() const;
63 
64     static PropertyValue<float> getDefaultRasterContrast();
65     PropertyValue<float> getRasterContrast() const;
66     void setRasterContrast(PropertyValue<float>);
67     void setRasterContrastTransition(const TransitionOptions&);
68     TransitionOptions getRasterContrastTransition() const;
69 
70     static PropertyValue<RasterResamplingType> getDefaultRasterResampling();
71     PropertyValue<RasterResamplingType> getRasterResampling() const;
72     void setRasterResampling(PropertyValue<RasterResamplingType>);
73     void setRasterResamplingTransition(const TransitionOptions&);
74     TransitionOptions getRasterResamplingTransition() const;
75 
76     static PropertyValue<float> getDefaultRasterFadeDuration();
77     PropertyValue<float> getRasterFadeDuration() const;
78     void setRasterFadeDuration(PropertyValue<float>);
79     void setRasterFadeDurationTransition(const TransitionOptions&);
80     TransitionOptions getRasterFadeDurationTransition() const;
81 
82     // Private implementation
83 
84     class Impl;
85     const Impl& impl() const;
86 
87     Mutable<Impl> mutableImpl() const;
88     RasterLayer(Immutable<Impl>);
89     std::unique_ptr<Layer> cloneRef(const std::string& id) const final;
90 };
91 
92 template <>
is() const93 inline bool Layer::is<RasterLayer>() const {
94     return getType() == LayerType::Raster;
95 }
96 
97 } // namespace style
98 } // namespace mbgl
99