1 // This file is generated. Edit scripts/generate-style-code.js, then run `make style-code`.
2 
3 #pragma once
4 
5 #include <mbgl/style/types.hpp>
6 #include <mbgl/style/layout_property.hpp>
7 #include <mbgl/style/paint_property.hpp>
8 #include <mbgl/style/properties.hpp>
9 #include <mbgl/programs/attributes.hpp>
10 #include <mbgl/programs/uniforms.hpp>
11 
12 namespace mbgl {
13 namespace style {
14 
15 struct LineCap : LayoutProperty<LineCapType> {
16     static constexpr const char * key = "line-cap";
defaultValuembgl::style::LineCap17     static LineCapType defaultValue() { return LineCapType::Butt; }
18 };
19 
20 struct LineJoin : DataDrivenLayoutProperty<LineJoinType> {
21     static constexpr const char * key = "line-join";
defaultValuembgl::style::LineJoin22     static LineJoinType defaultValue() { return LineJoinType::Miter; }
23 };
24 
25 struct LineMiterLimit : LayoutProperty<float> {
26     static constexpr const char * key = "line-miter-limit";
defaultValuembgl::style::LineMiterLimit27     static float defaultValue() { return 2; }
28 };
29 
30 struct LineRoundLimit : LayoutProperty<float> {
31     static constexpr const char * key = "line-round-limit";
defaultValuembgl::style::LineRoundLimit32     static float defaultValue() { return 1; }
33 };
34 
35 struct LineOpacity : DataDrivenPaintProperty<float, attributes::a_opacity, uniforms::u_opacity> {
defaultValuembgl::style::LineOpacity36     static float defaultValue() { return 1; }
37 };
38 
39 struct LineColor : DataDrivenPaintProperty<Color, attributes::a_color, uniforms::u_color> {
defaultValuembgl::style::LineColor40     static Color defaultValue() { return Color::black(); }
41 };
42 
43 struct LineTranslate : PaintProperty<std::array<float, 2>> {
defaultValuembgl::style::LineTranslate44     static std::array<float, 2> defaultValue() { return {{ 0, 0 }}; }
45 };
46 
47 struct LineTranslateAnchor : PaintProperty<TranslateAnchorType> {
defaultValuembgl::style::LineTranslateAnchor48     static TranslateAnchorType defaultValue() { return TranslateAnchorType::Map; }
49 };
50 
51 struct LineWidth : DataDrivenPaintProperty<float, attributes::a_width, uniforms::u_width> {
defaultValuembgl::style::LineWidth52     static float defaultValue() { return 1; }
53 };
54 
55 struct LineGapWidth : DataDrivenPaintProperty<float, attributes::a_gapwidth, uniforms::u_gapwidth> {
defaultValuembgl::style::LineGapWidth56     static float defaultValue() { return 0; }
57 };
58 
59 struct LineOffset : DataDrivenPaintProperty<float, attributes::a_offset<1>, uniforms::u_offset> {
defaultValuembgl::style::LineOffset60     static float defaultValue() { return 0; }
61 };
62 
63 struct LineBlur : DataDrivenPaintProperty<float, attributes::a_blur, uniforms::u_blur> {
defaultValuembgl::style::LineBlur64     static float defaultValue() { return 0; }
65 };
66 
67 struct LineDasharray : CrossFadedPaintProperty<std::vector<float>> {
defaultValuembgl::style::LineDasharray68     static std::vector<float> defaultValue() { return {  }; }
69 };
70 
71 struct LinePattern : CrossFadedPaintProperty<std::string> {
defaultValuembgl::style::LinePattern72     static std::string defaultValue() { return ""; }
73 };
74 
75 class LineLayoutProperties : public Properties<
76     LineCap,
77     LineJoin,
78     LineMiterLimit,
79     LineRoundLimit
80 > {};
81 
82 class LinePaintProperties : public Properties<
83     LineOpacity,
84     LineColor,
85     LineTranslate,
86     LineTranslateAnchor,
87     LineWidth,
88     LineGapWidth,
89     LineOffset,
90     LineBlur,
91     LineDasharray,
92     LinePattern
93 > {};
94 
95 } // namespace style
96 } // namespace mbgl
97