summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-04-14 16:00:36 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-04-15 09:56:18 -0700
commit25ff2696a1c6741a5a61334f1bd965e9d5099f05 (patch)
tree7057c8decb0b7137b372e8e6350070e8ed1419e9
parentce4270b01c692bcb1af64a774e2d595438057375 (diff)
downloadqtlocation-mapboxgl-25ff2696a1c6741a5a61334f1bd965e9d5099f05.tar.gz
[core] Remove MapData dependency from AnnotationTile and StyleUpdateParameters
-rw-r--r--src/mbgl/annotation/annotation_tile.cpp8
-rw-r--r--src/mbgl/annotation/annotation_tile.hpp7
-rw-r--r--src/mbgl/source/source.cpp2
-rw-r--r--src/mbgl/style/style.cpp2
-rw-r--r--src/mbgl/style/style_update_parameters.hpp8
5 files changed, 13 insertions, 14 deletions
diff --git a/src/mbgl/annotation/annotation_tile.cpp b/src/mbgl/annotation/annotation_tile.cpp
index ee468902cb..a8195d0dc8 100644
--- a/src/mbgl/annotation/annotation_tile.cpp
+++ b/src/mbgl/annotation/annotation_tile.cpp
@@ -28,18 +28,18 @@ util::ptr<GeometryTileLayer> AnnotationTile::getLayer(const std::string& name) c
return nullptr;
}
-AnnotationTileMonitor::AnnotationTileMonitor(const TileID& tileID_, MapData& data_)
+AnnotationTileMonitor::AnnotationTileMonitor(const TileID& tileID_, AnnotationManager& annotationManager_)
: tileID(tileID_),
- data(data_) {
+ annotationManager(annotationManager_) {
}
AnnotationTileMonitor::~AnnotationTileMonitor() {
- data.getAnnotationManager()->removeTileMonitor(*this);
+ annotationManager.removeTileMonitor(*this);
}
std::unique_ptr<AsyncRequest> AnnotationTileMonitor::monitorTile(const GeometryTileMonitor::Callback& callback_) {
callback = callback_;
- data.getAnnotationManager()->addTileMonitor(*this);
+ annotationManager.addTileMonitor(*this);
return nullptr;
}
diff --git a/src/mbgl/annotation/annotation_tile.hpp b/src/mbgl/annotation/annotation_tile.hpp
index ca6b074c21..bd233e8057 100644
--- a/src/mbgl/annotation/annotation_tile.hpp
+++ b/src/mbgl/annotation/annotation_tile.hpp
@@ -38,12 +38,11 @@ public:
std::map<std::string, util::ptr<AnnotationTileLayer>> layers;
};
-class MapData;
+class AnnotationManager;
class AnnotationTileMonitor : public GeometryTileMonitor {
public:
- // TODO: should just take AnnotationManager&, but we need to eliminate util::exclusive<AnnotationManager> from MapData first.
- AnnotationTileMonitor(const TileID&, MapData&);
+ AnnotationTileMonitor(const TileID&, AnnotationManager&);
~AnnotationTileMonitor();
void update(std::unique_ptr<GeometryTile>);
@@ -52,7 +51,7 @@ public:
TileID tileID;
private:
- MapData& data;
+ AnnotationManager& annotationManager;
GeometryTileMonitor::Callback callback;
};
diff --git a/src/mbgl/source/source.cpp b/src/mbgl/source/source.cpp
index 5dc61c02cf..01819b3823 100644
--- a/src/mbgl/source/source.cpp
+++ b/src/mbgl/source/source.cpp
@@ -267,7 +267,7 @@ TileData::State Source::addTile(const TileID& tileID, const StyleUpdateParameter
if (type == SourceType::Vector) {
monitor = std::make_unique<VectorTileMonitor>(normalizedID, parameters.pixelRatio, info->tiles.at(0), parameters.fileSource);
} else if (type == SourceType::Annotations) {
- monitor = std::make_unique<AnnotationTileMonitor>(normalizedID, parameters.data);
+ monitor = std::make_unique<AnnotationTileMonitor>(normalizedID, parameters.annotationManager);
} else if (type == SourceType::GeoJSON) {
monitor = std::make_unique<GeoJSONTileMonitor>(geojsonvt.get(), normalizedID);
} else {
diff --git a/src/mbgl/style/style.cpp b/src/mbgl/style/style.cpp
index e2f8e74845..fc2bebdafc 100644
--- a/src/mbgl/style/style.cpp
+++ b/src/mbgl/style/style.cpp
@@ -159,7 +159,7 @@ void Style::update(const TransformState& transform, const TimePoint& timePoint,
texturePool,
shouldReparsePartialTiles,
data.mode,
- data,
+ *data.getAnnotationManager(),
*this);
for (const auto& source : sources) {
diff --git a/src/mbgl/style/style_update_parameters.hpp b/src/mbgl/style/style_update_parameters.hpp
index 9ea7e112eb..e620f249f8 100644
--- a/src/mbgl/style/style_update_parameters.hpp
+++ b/src/mbgl/style/style_update_parameters.hpp
@@ -8,9 +8,9 @@ namespace mbgl {
class TransformState;
class Worker;
class FileSource;
-class MapData;
class Style;
namespace gl { class TexturePool; }
+class AnnotationManager;
class StyleUpdateParameters {
public:
@@ -23,7 +23,7 @@ public:
gl::TexturePool& texturePool_,
bool shouldReparsePartialTiles_,
const MapMode mode_,
- MapData& data_,
+ AnnotationManager& annotationManager_,
Style& style_)
: pixelRatio(pixelRatio_),
debugOptions(debugOptions_),
@@ -34,7 +34,7 @@ public:
texturePool(texturePool_),
shouldReparsePartialTiles(shouldReparsePartialTiles_),
mode(mode_),
- data(data_),
+ annotationManager(annotationManager_),
style(style_) {}
float pixelRatio;
@@ -46,9 +46,9 @@ public:
gl::TexturePool& texturePool;
bool shouldReparsePartialTiles;
const MapMode mode;
+ AnnotationManager& annotationManager;
// TODO: remove
- MapData& data;
Style& style;
};