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 FillExtrusionLayer : public Layer { 18 public: 19 FillExtrusionLayer(const std::string& layerID, const std::string& sourceID); 20 ~FillExtrusionLayer() final; 21 22 // Source 23 const std::string& getSourceID() const; 24 const std::string& getSourceLayer() const; 25 void setSourceLayer(const std::string& sourceLayer); 26 27 void setFilter(const Filter&); 28 const Filter& getFilter() const; 29 30 // Visibility 31 void setVisibility(VisibilityType) final; 32 33 // Zoom range 34 void setMinZoom(float) final; 35 void setMaxZoom(float) final; 36 37 // Paint properties 38 39 static PropertyValue<float> getDefaultFillExtrusionOpacity(); 40 PropertyValue<float> getFillExtrusionOpacity() const; 41 void setFillExtrusionOpacity(PropertyValue<float>); 42 void setFillExtrusionOpacityTransition(const TransitionOptions&); 43 TransitionOptions getFillExtrusionOpacityTransition() const; 44 45 static DataDrivenPropertyValue<Color> getDefaultFillExtrusionColor(); 46 DataDrivenPropertyValue<Color> getFillExtrusionColor() const; 47 void setFillExtrusionColor(DataDrivenPropertyValue<Color>); 48 void setFillExtrusionColorTransition(const TransitionOptions&); 49 TransitionOptions getFillExtrusionColorTransition() const; 50 51 static PropertyValue<std::array<float, 2>> getDefaultFillExtrusionTranslate(); 52 PropertyValue<std::array<float, 2>> getFillExtrusionTranslate() const; 53 void setFillExtrusionTranslate(PropertyValue<std::array<float, 2>>); 54 void setFillExtrusionTranslateTransition(const TransitionOptions&); 55 TransitionOptions getFillExtrusionTranslateTransition() const; 56 57 static PropertyValue<TranslateAnchorType> getDefaultFillExtrusionTranslateAnchor(); 58 PropertyValue<TranslateAnchorType> getFillExtrusionTranslateAnchor() const; 59 void setFillExtrusionTranslateAnchor(PropertyValue<TranslateAnchorType>); 60 void setFillExtrusionTranslateAnchorTransition(const TransitionOptions&); 61 TransitionOptions getFillExtrusionTranslateAnchorTransition() const; 62 63 static PropertyValue<std::string> getDefaultFillExtrusionPattern(); 64 PropertyValue<std::string> getFillExtrusionPattern() const; 65 void setFillExtrusionPattern(PropertyValue<std::string>); 66 void setFillExtrusionPatternTransition(const TransitionOptions&); 67 TransitionOptions getFillExtrusionPatternTransition() const; 68 69 static DataDrivenPropertyValue<float> getDefaultFillExtrusionHeight(); 70 DataDrivenPropertyValue<float> getFillExtrusionHeight() const; 71 void setFillExtrusionHeight(DataDrivenPropertyValue<float>); 72 void setFillExtrusionHeightTransition(const TransitionOptions&); 73 TransitionOptions getFillExtrusionHeightTransition() const; 74 75 static DataDrivenPropertyValue<float> getDefaultFillExtrusionBase(); 76 DataDrivenPropertyValue<float> getFillExtrusionBase() const; 77 void setFillExtrusionBase(DataDrivenPropertyValue<float>); 78 void setFillExtrusionBaseTransition(const TransitionOptions&); 79 TransitionOptions getFillExtrusionBaseTransition() const; 80 81 // Private implementation 82 83 class Impl; 84 const Impl& impl() const; 85 86 Mutable<Impl> mutableImpl() const; 87 FillExtrusionLayer(Immutable<Impl>); 88 std::unique_ptr<Layer> cloneRef(const std::string& id) const final; 89 }; 90 91 template <> is() const92inline bool Layer::is<FillExtrusionLayer>() const { 93 return getType() == LayerType::FillExtrusion; 94 } 95 96 } // namespace style 97 } // namespace mbgl 98