diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2014-06-27 16:42:44 +0200 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2014-06-27 16:42:44 +0200 |
commit | d75f0075f3356f8c0b8616ae93a9973d01cfbcfd (patch) | |
tree | 7503182c328f6adaad89374e161ad662c7264828 | |
parent | 3d18b84deb99f9c49d355b1ee561bb3d5cc0b144 (diff) | |
download | qtlocation-mapboxgl-d75f0075f3356f8c0b8616ae93a9973d01cfbcfd.tar.gz |
even more refactoring
-rw-r--r-- | include/llmr/map/map.hpp | 1 | ||||
-rw-r--r-- | include/llmr/map/tile_parser.hpp | 2 | ||||
-rw-r--r-- | include/llmr/map/vector_tile.hpp | 2 | ||||
-rw-r--r-- | include/llmr/style/filter_expression.hpp (renamed from include/llmr/map/filter_expression.hpp) | 4 | ||||
-rw-r--r-- | include/llmr/style/style.hpp | 35 | ||||
-rw-r--r-- | include/llmr/style/style_bucket.hpp | 2 | ||||
-rw-r--r-- | include/llmr/style/style_layer.hpp | 46 | ||||
-rw-r--r-- | include/llmr/style/style_parser.hpp | 3 | ||||
-rw-r--r-- | src/map/map.cpp | 3 | ||||
-rw-r--r-- | src/map/source.cpp | 1 | ||||
-rw-r--r-- | src/map/tile_parser.cpp | 1 | ||||
-rw-r--r-- | src/map/vector_tile_data.cpp | 2 | ||||
-rw-r--r-- | src/renderer/icon_bucket.cpp | 1 | ||||
-rw-r--r-- | src/renderer/painter.cpp | 1 | ||||
-rw-r--r-- | src/renderer/painter_fill.cpp | 1 | ||||
-rw-r--r-- | src/renderer/painter_icon.cpp | 2 | ||||
-rw-r--r-- | src/renderer/painter_line.cpp | 1 | ||||
-rw-r--r-- | src/renderer/painter_raster.cpp | 1 | ||||
-rw-r--r-- | src/renderer/painter_text.cpp | 1 | ||||
-rw-r--r-- | src/style/filter_expression.cpp (renamed from src/map/filter_expression.cpp) | 2 | ||||
-rw-r--r-- | src/style/style.cpp | 3 | ||||
-rw-r--r-- | src/style/style_parser.cpp | 1 |
22 files changed, 76 insertions, 40 deletions
diff --git a/include/llmr/map/map.hpp b/include/llmr/map/map.hpp index 621fdb3887..54cbdcb168 100644 --- a/include/llmr/map/map.hpp +++ b/include/llmr/map/map.hpp @@ -20,6 +20,7 @@ namespace llmr { class Source; +class SpriteAtlas; class Map : private util::noncopyable { public: diff --git a/include/llmr/map/tile_parser.hpp b/include/llmr/map/tile_parser.hpp index 2809c6b4e7..c4fd3d8bc4 100644 --- a/include/llmr/map/tile_parser.hpp +++ b/include/llmr/map/tile_parser.hpp @@ -6,7 +6,7 @@ #include <llmr/text/glyph_store.hpp> #include <llmr/text/glyph.hpp> #include <llmr/util/utf.hpp> -#include <llmr/map/filter_expression.hpp> +#include <llmr/style/filter_expression.hpp> namespace llmr { diff --git a/include/llmr/map/vector_tile.hpp b/include/llmr/map/vector_tile.hpp index f9e01c38b6..ad7a0eea14 100644 --- a/include/llmr/map/vector_tile.hpp +++ b/include/llmr/map/vector_tile.hpp @@ -5,7 +5,7 @@ #include <llmr/util/vec.hpp> #include <llmr/style/value.hpp> #include <llmr/text/glyph.hpp> -#include <llmr/map/filter_expression.hpp> +#include <llmr/style/filter_expression.hpp> #include <vector> #include <map> #include <unordered_map> diff --git a/include/llmr/map/filter_expression.hpp b/include/llmr/style/filter_expression.hpp index 3c4ac857e5..696aa04aeb 100644 --- a/include/llmr/map/filter_expression.hpp +++ b/include/llmr/style/filter_expression.hpp @@ -1,5 +1,5 @@ -#ifndef LLMR_MAP_FILTER_EXPRESSION -#define LLMR_MAP_FILTER_EXPRESSION +#ifndef LLMR_STYLE_FILTER_EXPRESSION +#define LLMR_STYLE_FILTER_EXPRESSION #include <llmr/style/value.hpp> #include <llmr/util/recursive_wrapper.hpp> diff --git a/include/llmr/style/style.hpp b/include/llmr/style/style.hpp index f2b4cd4920..383aa5d75d 100644 --- a/include/llmr/style/style.hpp +++ b/include/llmr/style/style.hpp @@ -3,15 +3,8 @@ #include <cstdint> -#include <llmr/style/style_bucket.hpp> -#include <llmr/util/pbf.hpp> -#include <llmr/geometry/sprite_atlas.hpp> -#include <llmr/util/transition.hpp> +#include <llmr/util/time.hpp> #include <llmr/util/uv.hpp> -#include <llmr/style/class_dictionary.hpp> -#include <llmr/style/class_properties.hpp> -#include <llmr/style/style_properties.hpp> -#include <llmr/style/rasterize_properties.hpp> #include <map> #include <unordered_map> @@ -22,34 +15,10 @@ namespace llmr { class Sprite; - +class Source; class StyleLayer; typedef std::vector<std::shared_ptr<StyleLayer>> StyleLayerGroup; -class StyleLayer { -public: - typedef std::shared_ptr<StyleLayer> Ptr; - -public: - template <typename T> const T &getProperties() { - if (style.is<T>()) { - return style.get<T>(); - } else { - return defaultStyleProperties<T>(); - } - } - -public: - std::string id; - StyleBucket::Ptr bucket; - std::map<ClassID, ClassProperties> styles; - StyleProperties style; - std::unique_ptr<RasterizeProperties> rasterize; - std::shared_ptr<StyleLayerGroup> layers; -}; - - - class Style { public: struct exception : std::runtime_error { exception(const char *msg) : std::runtime_error(msg) {} }; diff --git a/include/llmr/style/style_bucket.hpp b/include/llmr/style/style_bucket.hpp index eee9929a89..1e3cb2db0a 100644 --- a/include/llmr/style/style_bucket.hpp +++ b/include/llmr/style/style_bucket.hpp @@ -2,7 +2,7 @@ #define LLMR_STYLE_STYLE_BUCKET #include <llmr/style/types.hpp> -#include <llmr/map/filter_expression.hpp> +#include <llmr/style/filter_expression.hpp> #include <llmr/util/vec.hpp> #include <llmr/util/variant.hpp> diff --git a/include/llmr/style/style_layer.hpp b/include/llmr/style/style_layer.hpp new file mode 100644 index 0000000000..889cd8648e --- /dev/null +++ b/include/llmr/style/style_layer.hpp @@ -0,0 +1,46 @@ +#ifndef LLMR_STYLE_STYLE_LAYER +#define LLMR_STYLE_STYLE_LAYER + +#include <llmr/style/class_dictionary.hpp> +#include <llmr/style/class_properties.hpp> +#include <llmr/style/style_properties.hpp> + +#include <vector> +#include <memory> +#include <string> +#include <map> + +namespace llmr { + +class StyleBucket; +class RasterizeProperties; + +class StyleLayer; +typedef std::vector<std::shared_ptr<StyleLayer>> StyleLayerGroup; + +class StyleLayer { +public: + typedef std::shared_ptr<StyleLayer> Ptr; + +public: + template <typename T> const T &getProperties() { + if (style.is<T>()) { + return style.get<T>(); + } else { + return defaultStyleProperties<T>(); + } + } + +public: + std::string id; + std::shared_ptr<StyleBucket> bucket; + std::map<ClassID, ClassProperties> styles; + StyleProperties style; + std::unique_ptr<RasterizeProperties> rasterize; + std::shared_ptr<StyleLayerGroup> layers; +}; + + +} + +#endif diff --git a/include/llmr/style/style_parser.hpp b/include/llmr/style/style_parser.hpp index 29a41fb141..8d78653694 100644 --- a/include/llmr/style/style_parser.hpp +++ b/include/llmr/style/style_parser.hpp @@ -4,6 +4,9 @@ #include <rapidjson/document.h> #include <llmr/style/style.hpp> #include <llmr/map/source.hpp> +#include <llmr/style/filter_expression.hpp> +#include <llmr/style/class_properties.hpp> +#include <llmr/style/style_bucket.hpp> #include <unordered_map> #include <forward_list> diff --git a/src/map/map.cpp b/src/map/map.cpp index db94ca97db..44c62eeb2d 100644 --- a/src/map/map.cpp +++ b/src/map/map.cpp @@ -9,6 +9,9 @@ #include <llmr/util/string.hpp> #include <llmr/util/constants.hpp> #include <llmr/util/uv.hpp> +#include <llmr/style/style_layer.hpp> +#include <llmr/style/style_bucket.hpp> +#include <llmr/geometry/sprite_atlas.hpp> #include <algorithm> #include <memory> diff --git a/src/map/source.cpp b/src/map/source.cpp index b03d83ca45..6f7bb811fd 100644 --- a/src/map/source.cpp +++ b/src/map/source.cpp @@ -9,6 +9,7 @@ #include <llmr/util/vec.hpp> #include <llmr/util/std.hpp> #include <llmr/geometry/glyph_atlas.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/map/vector_tile_data.hpp> diff --git a/src/map/tile_parser.cpp b/src/map/tile_parser.cpp index e834e6fa95..847c57d088 100644 --- a/src/map/tile_parser.cpp +++ b/src/map/tile_parser.cpp @@ -2,6 +2,7 @@ #include <llmr/map/vector_tile_data.hpp> #include <llmr/style/style.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/renderer/fill_bucket.hpp> #include <llmr/renderer/line_bucket.hpp> #include <llmr/renderer/icon_bucket.hpp> diff --git a/src/map/vector_tile_data.cpp b/src/map/vector_tile_data.cpp index de99bb5d39..051ebb7eac 100644 --- a/src/map/vector_tile_data.cpp +++ b/src/map/vector_tile_data.cpp @@ -1,6 +1,8 @@ #include <llmr/map/vector_tile_data.hpp> #include <llmr/util/std.hpp> #include <llmr/map/map.hpp> +#include <llmr/style/style_layer.hpp> +#include <llmr/style/style_bucket.hpp> using namespace llmr; diff --git a/src/renderer/icon_bucket.cpp b/src/renderer/icon_bucket.cpp index 1a1c104507..9cc1407e6d 100644 --- a/src/renderer/icon_bucket.cpp +++ b/src/renderer/icon_bucket.cpp @@ -2,6 +2,7 @@ #include <llmr/geometry/icon_buffer.hpp> #include <llmr/geometry/elements_buffer.hpp> #include <llmr/geometry/geometry.hpp> +#include <llmr/geometry/sprite_atlas.hpp> #include <llmr/renderer/painter.hpp> #include <llmr/style/style.hpp> diff --git a/src/renderer/painter.cpp b/src/renderer/painter.cpp index 0739eea323..665c7baece 100644 --- a/src/renderer/painter.cpp +++ b/src/renderer/painter.cpp @@ -1,5 +1,6 @@ #include <llmr/renderer/painter.hpp> #include <llmr/map/map.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/util/std.hpp> #include <llmr/util/string.hpp> #include <llmr/util/time.hpp> diff --git a/src/renderer/painter_fill.cpp b/src/renderer/painter_fill.cpp index fa79cb8de0..e651d3f36a 100644 --- a/src/renderer/painter_fill.cpp +++ b/src/renderer/painter_fill.cpp @@ -1,5 +1,6 @@ #include <llmr/renderer/painter.hpp> #include <llmr/renderer/fill_bucket.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/map/map.hpp> #include <llmr/style/sprite.hpp> #include <llmr/geometry/sprite_atlas.hpp> diff --git a/src/renderer/painter_icon.cpp b/src/renderer/painter_icon.cpp index f720a24000..59ae67746e 100644 --- a/src/renderer/painter_icon.cpp +++ b/src/renderer/painter_icon.cpp @@ -2,6 +2,8 @@ #include <llmr/renderer/icon_bucket.hpp> #include <llmr/map/map.hpp> #include <llmr/style/sprite.hpp> +#include <llmr/style/style_layer.hpp> +#include <llmr/geometry/sprite_atlas.hpp> #include <llmr/util/math.hpp> using namespace llmr; diff --git a/src/renderer/painter_line.cpp b/src/renderer/painter_line.cpp index 6ec7a1e7e6..990c80b89c 100644 --- a/src/renderer/painter_line.cpp +++ b/src/renderer/painter_line.cpp @@ -1,5 +1,6 @@ #include <llmr/renderer/painter.hpp> #include <llmr/renderer/line_bucket.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/map/map.hpp> using namespace llmr; diff --git a/src/renderer/painter_raster.cpp b/src/renderer/painter_raster.cpp index 4cfe7c0c68..8f330898da 100644 --- a/src/renderer/painter_raster.cpp +++ b/src/renderer/painter_raster.cpp @@ -1,5 +1,6 @@ #include <llmr/renderer/painter.hpp> #include <llmr/renderer/raster_bucket.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/map/map.hpp> using namespace llmr; diff --git a/src/renderer/painter_text.cpp b/src/renderer/painter_text.cpp index 47fea57c93..89c9d41077 100644 --- a/src/renderer/painter_text.cpp +++ b/src/renderer/painter_text.cpp @@ -1,5 +1,6 @@ #include <llmr/renderer/painter.hpp> #include <llmr/renderer/text_bucket.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/map/map.hpp> #include <cmath> diff --git a/src/map/filter_expression.cpp b/src/style/filter_expression.cpp index 9e293b0026..a0454d8af4 100644 --- a/src/map/filter_expression.cpp +++ b/src/style/filter_expression.cpp @@ -1,4 +1,4 @@ -#include <llmr/map/filter_expression.hpp> +#include <llmr/style/filter_expression.hpp> #include <llmr/map/vector_tile.hpp> namespace llmr { diff --git a/src/style/style.cpp b/src/style/style.cpp index d6d7a72918..f6de8c013b 100644 --- a/src/style/style.cpp +++ b/src/style/style.cpp @@ -1,5 +1,7 @@ #include <llmr/style/style.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/style/style_parser.hpp> +#include <llmr/style/style_bucket.hpp> #include <llmr/util/constants.hpp> #include <csscolorparser/csscolorparser.hpp> @@ -194,7 +196,6 @@ void Style::cascade(float z) { } } - bool Style::needsTransition() const { uv::readlock lock(mtx); diff --git a/src/style/style_parser.cpp b/src/style/style_parser.cpp index 7bb05ecc66..1bbb4fd522 100644 --- a/src/style/style_parser.cpp +++ b/src/style/style_parser.cpp @@ -1,4 +1,5 @@ #include <llmr/style/style_parser.hpp> +#include <llmr/style/style_layer.hpp> #include <llmr/util/constants.hpp> #include <llmr/util/std.hpp> #include <csscolorparser/csscolorparser.hpp> |