diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2017-06-08 14:44:47 -0700 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2017-06-13 10:18:43 -0700 |
commit | f5d3b850bff06e3cd4d4bcff288dceeb53cfa82d (patch) | |
tree | e1db4a34ec7adc09d5df8f14a2c97858ef11c02c /src/mbgl/tile/geometry_tile.cpp | |
parent | 17db460345aeab21000cf7c18c9dea8d1543d835 (diff) | |
download | qtlocation-mapboxgl-f5d3b850bff06e3cd4d4bcff288dceeb53cfa82d.tar.gz |
[core] Merge RenderLayer::uploadBuckets into RenderSource::startRender
Diffstat (limited to 'src/mbgl/tile/geometry_tile.cpp')
-rw-r--r-- | src/mbgl/tile/geometry_tile.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mbgl/tile/geometry_tile.cpp b/src/mbgl/tile/geometry_tile.cpp index 32fb6148c2..c35fe42f6a 100644 --- a/src/mbgl/tile/geometry_tile.cpp +++ b/src/mbgl/tile/geometry_tile.cpp @@ -161,6 +161,22 @@ void GeometryTile::getIcons(IconDependencies iconDependencies) { spriteAtlas.getIcons(*this, std::move(iconDependencies)); } +void GeometryTile::upload(gl::Context& context) { + auto upload = [&] (Bucket& bucket) { + if (bucket.needsUpload()) { + bucket.upload(context); + } + }; + + for (auto& entry : nonSymbolBuckets) { + upload(*entry.second); + } + + for (auto& entry : symbolBuckets) { + upload(*entry.second); + } +} + Bucket* GeometryTile::getBucket(const Layer::Impl& layer) const { const auto& buckets = layer.type == LayerType::Symbol ? symbolBuckets : nonSymbolBuckets; const auto it = buckets.find(layer.id); |