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 #include <vector> 13 14 namespace mbgl { 15 namespace style { 16 17 class TransitionOptions; 18 19 class LineLayer : public Layer { 20 public: 21 LineLayer(const std::string& layerID, const std::string& sourceID); 22 ~LineLayer() final; 23 24 // Source 25 const std::string& getSourceID() const; 26 const std::string& getSourceLayer() const; 27 void setSourceLayer(const std::string& sourceLayer); 28 29 void setFilter(const Filter&); 30 const Filter& getFilter() const; 31 32 // Visibility 33 void setVisibility(VisibilityType) final; 34 35 // Zoom range 36 void setMinZoom(float) final; 37 void setMaxZoom(float) final; 38 39 // Layout properties 40 41 static PropertyValue<LineCapType> getDefaultLineCap(); 42 PropertyValue<LineCapType> getLineCap() const; 43 void setLineCap(PropertyValue<LineCapType>); 44 45 static DataDrivenPropertyValue<LineJoinType> getDefaultLineJoin(); 46 DataDrivenPropertyValue<LineJoinType> getLineJoin() const; 47 void setLineJoin(DataDrivenPropertyValue<LineJoinType>); 48 49 static PropertyValue<float> getDefaultLineMiterLimit(); 50 PropertyValue<float> getLineMiterLimit() const; 51 void setLineMiterLimit(PropertyValue<float>); 52 53 static PropertyValue<float> getDefaultLineRoundLimit(); 54 PropertyValue<float> getLineRoundLimit() const; 55 void setLineRoundLimit(PropertyValue<float>); 56 57 // Paint properties 58 59 static DataDrivenPropertyValue<float> getDefaultLineOpacity(); 60 DataDrivenPropertyValue<float> getLineOpacity() const; 61 void setLineOpacity(DataDrivenPropertyValue<float>); 62 void setLineOpacityTransition(const TransitionOptions&); 63 TransitionOptions getLineOpacityTransition() const; 64 65 static DataDrivenPropertyValue<Color> getDefaultLineColor(); 66 DataDrivenPropertyValue<Color> getLineColor() const; 67 void setLineColor(DataDrivenPropertyValue<Color>); 68 void setLineColorTransition(const TransitionOptions&); 69 TransitionOptions getLineColorTransition() const; 70 71 static PropertyValue<std::array<float, 2>> getDefaultLineTranslate(); 72 PropertyValue<std::array<float, 2>> getLineTranslate() const; 73 void setLineTranslate(PropertyValue<std::array<float, 2>>); 74 void setLineTranslateTransition(const TransitionOptions&); 75 TransitionOptions getLineTranslateTransition() const; 76 77 static PropertyValue<TranslateAnchorType> getDefaultLineTranslateAnchor(); 78 PropertyValue<TranslateAnchorType> getLineTranslateAnchor() const; 79 void setLineTranslateAnchor(PropertyValue<TranslateAnchorType>); 80 void setLineTranslateAnchorTransition(const TransitionOptions&); 81 TransitionOptions getLineTranslateAnchorTransition() const; 82 83 static DataDrivenPropertyValue<float> getDefaultLineWidth(); 84 DataDrivenPropertyValue<float> getLineWidth() const; 85 void setLineWidth(DataDrivenPropertyValue<float>); 86 void setLineWidthTransition(const TransitionOptions&); 87 TransitionOptions getLineWidthTransition() const; 88 89 static DataDrivenPropertyValue<float> getDefaultLineGapWidth(); 90 DataDrivenPropertyValue<float> getLineGapWidth() const; 91 void setLineGapWidth(DataDrivenPropertyValue<float>); 92 void setLineGapWidthTransition(const TransitionOptions&); 93 TransitionOptions getLineGapWidthTransition() const; 94 95 static DataDrivenPropertyValue<float> getDefaultLineOffset(); 96 DataDrivenPropertyValue<float> getLineOffset() const; 97 void setLineOffset(DataDrivenPropertyValue<float>); 98 void setLineOffsetTransition(const TransitionOptions&); 99 TransitionOptions getLineOffsetTransition() const; 100 101 static DataDrivenPropertyValue<float> getDefaultLineBlur(); 102 DataDrivenPropertyValue<float> getLineBlur() const; 103 void setLineBlur(DataDrivenPropertyValue<float>); 104 void setLineBlurTransition(const TransitionOptions&); 105 TransitionOptions getLineBlurTransition() const; 106 107 static PropertyValue<std::vector<float>> getDefaultLineDasharray(); 108 PropertyValue<std::vector<float>> getLineDasharray() const; 109 void setLineDasharray(PropertyValue<std::vector<float>>); 110 void setLineDasharrayTransition(const TransitionOptions&); 111 TransitionOptions getLineDasharrayTransition() const; 112 113 static PropertyValue<std::string> getDefaultLinePattern(); 114 PropertyValue<std::string> getLinePattern() const; 115 void setLinePattern(PropertyValue<std::string>); 116 void setLinePatternTransition(const TransitionOptions&); 117 TransitionOptions getLinePatternTransition() const; 118 119 // Private implementation 120 121 class Impl; 122 const Impl& impl() const; 123 124 Mutable<Impl> mutableImpl() const; 125 LineLayer(Immutable<Impl>); 126 std::unique_ptr<Layer> cloneRef(const std::string& id) const final; 127 }; 128 129 template <> is() const130inline bool Layer::is<LineLayer>() const { 131 return getType() == LayerType::Line; 132 } 133 134 } // namespace style 135 } // namespace mbgl 136