diff options
-rw-r--r-- | src/mbgl/annotation/annotation_tile.cpp | 10 | ||||
-rw-r--r-- | src/mbgl/annotation/annotation_tile.hpp | 3 | ||||
-rw-r--r-- | src/mbgl/annotation/symbol_annotation_impl.cpp | 2 |
3 files changed, 10 insertions, 5 deletions
diff --git a/src/mbgl/annotation/annotation_tile.cpp b/src/mbgl/annotation/annotation_tile.cpp index e5e3b68dff..74a7dad682 100644 --- a/src/mbgl/annotation/annotation_tile.cpp +++ b/src/mbgl/annotation/annotation_tile.cpp @@ -24,7 +24,7 @@ public: AnnotationTileFeatureData(const AnnotationID id_, FeatureType type_, GeometryCollection&& geometries_, - std::unordered_map<std::string, std::string>&& properties_) + PropertyMap&& properties_) : id(id_), type(type_), geometries(std::move(geometries_)), @@ -34,7 +34,7 @@ public: AnnotationID id; FeatureType type; GeometryCollection geometries; - std::unordered_map<std::string, std::string> properties; + PropertyMap properties; }; AnnotationTileFeature::AnnotationTileFeature(std::shared_ptr<const AnnotationTileFeatureData> data_) @@ -59,6 +59,10 @@ FeatureIdentifier AnnotationTileFeature::getID() const { return data->id; } +const PropertyMap& AnnotationTileFeature::getProperties() const { + return data->properties; +} + GeometryCollection AnnotationTileFeature::getGeometries() const { return data->geometries; } @@ -90,7 +94,7 @@ std::string AnnotationTileLayer::getName() const { void AnnotationTileLayer::addFeature(const AnnotationID id, FeatureType type, GeometryCollection geometries, - std::unordered_map<std::string, std::string> properties) { + PropertyMap properties) { layer->features.emplace_back(std::make_shared<AnnotationTileFeatureData>( id, type, std::move(geometries), std::move(properties))); diff --git a/src/mbgl/annotation/annotation_tile.hpp b/src/mbgl/annotation/annotation_tile.hpp index 1e23fdf98a..7757f0b0ce 100644 --- a/src/mbgl/annotation/annotation_tile.hpp +++ b/src/mbgl/annotation/annotation_tile.hpp @@ -28,6 +28,7 @@ public: FeatureType getType() const override; optional<Value> getValue(const std::string&) const override; FeatureIdentifier getID() const override; + const PropertyMap& getProperties() const override; GeometryCollection getGeometries() const override; private: @@ -47,7 +48,7 @@ public: void addFeature(const AnnotationID, FeatureType, GeometryCollection, - std::unordered_map<std::string, std::string> properties = { {} }); + PropertyMap properties = { {} }); private: std::shared_ptr<AnnotationTileLayerData> layer; diff --git a/src/mbgl/annotation/symbol_annotation_impl.cpp b/src/mbgl/annotation/symbol_annotation_impl.cpp index c95eb481b5..bc4dbec283 100644 --- a/src/mbgl/annotation/symbol_annotation_impl.cpp +++ b/src/mbgl/annotation/symbol_annotation_impl.cpp @@ -12,7 +12,7 @@ SymbolAnnotationImpl::SymbolAnnotationImpl(AnnotationID id_, SymbolAnnotation an } void SymbolAnnotationImpl::updateLayer(const CanonicalTileID& tileID, AnnotationTileLayer& layer) const { - std::unordered_map<std::string, std::string> featureProperties; + PropertyMap featureProperties; featureProperties.emplace("sprite", annotation.icon.empty() ? std::string("default_marker") : annotation.icon); LatLng latLng { annotation.geometry.y, annotation.geometry.x }; |