summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAnsis Brammanis <ansis@mapbox.com>2017-11-15 11:44:42 -0500
committerChris Loer <chris.loer@mapbox.com>2017-11-17 10:05:15 -0800
commitd69c1c4806038fec756672d80cef7691c5280c6a (patch)
treeb2532bcd0daeed33d4882f2deade08a0810a09db /src
parentc39232a89f1feb18454d88f2908f5cbef306b065 (diff)
downloadqtlocation-mapboxgl-d69c1c4806038fec756672d80cef7691c5280c6a.tar.gz
[core] Add unit test for CrossTileSymbolIndex
Diffstat (limited to 'src')
-rw-r--r--src/mbgl/text/cross_tile_symbol_index.cpp6
-rw-r--r--src/mbgl/text/cross_tile_symbol_index.hpp4
2 files changed, 4 insertions, 6 deletions
diff --git a/src/mbgl/text/cross_tile_symbol_index.cpp b/src/mbgl/text/cross_tile_symbol_index.cpp
index 779bec283c..177615857f 100644
--- a/src/mbgl/text/cross_tile_symbol_index.cpp
+++ b/src/mbgl/text/cross_tile_symbol_index.cpp
@@ -57,9 +57,7 @@ void TileLayerIndex::findMatches(std::vector<SymbolInstance>& symbolInstances, c
CrossTileSymbolLayerIndex::CrossTileSymbolLayerIndex() {
}
-uint32_t CrossTileSymbolLayerIndex::maxCrossTileID = 0;
-
-void CrossTileSymbolLayerIndex::addBucket(const OverscaledTileID& coord, SymbolBucket& bucket) {
+void CrossTileSymbolLayerIndex::addBucket(const OverscaledTileID& coord, SymbolBucket& bucket, uint32_t& maxCrossTileID) {
if (bucket.bucketInstanceId) return;
bucket.bucketInstanceId = ++maxBucketInstanceId;
@@ -149,7 +147,7 @@ bool CrossTileSymbolIndex::addLayer(RenderSymbolLayer& symbolLayer) {
if (!symbolBucket.bucketInstanceId) {
symbolBucketsChanged = true;
}
- layerIndex.addBucket(renderTile.tile.id, symbolBucket);
+ layerIndex.addBucket(renderTile.tile.id, symbolBucket, maxCrossTileID);
currentBucketIDs.insert(symbolBucket.bucketInstanceId);
}
diff --git a/src/mbgl/text/cross_tile_symbol_index.hpp b/src/mbgl/text/cross_tile_symbol_index.hpp
index a32430d872..c67cd37e00 100644
--- a/src/mbgl/text/cross_tile_symbol_index.hpp
+++ b/src/mbgl/text/cross_tile_symbol_index.hpp
@@ -42,12 +42,11 @@ public:
class CrossTileSymbolLayerIndex {
public:
CrossTileSymbolLayerIndex();
- void addBucket(const OverscaledTileID&, SymbolBucket&);
+ void addBucket(const OverscaledTileID&, SymbolBucket&, uint32_t& maxCrossTileID);
bool removeStaleBuckets(const std::unordered_set<uint32_t>& currentIDs);
private:
std::map<uint8_t,std::map<OverscaledTileID,TileLayerIndex>> indexes;
uint32_t maxBucketInstanceId = 0;
- static uint32_t maxCrossTileID;
};
class CrossTileSymbolIndex {
@@ -59,6 +58,7 @@ public:
void reset();
private:
std::map<std::string, CrossTileSymbolLayerIndex> layerIndexes;
+ uint32_t maxCrossTileID = 0;
};
} // namespace mbgl