summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/sources/render_raster_source.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/renderer/sources/render_raster_source.cpp')
-rw-r--r--src/mbgl/renderer/sources/render_raster_source.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mbgl/renderer/sources/render_raster_source.cpp b/src/mbgl/renderer/sources/render_raster_source.cpp
index c5a29eebf5..e2d641c4e4 100644
--- a/src/mbgl/renderer/sources/render_raster_source.cpp
+++ b/src/mbgl/renderer/sources/render_raster_source.cpp
@@ -6,12 +6,15 @@ namespace mbgl {
using namespace style;
-RenderRasterSource::RenderRasterSource(const style::RasterSource::Impl& impl_)
- : RenderSource(impl_),
- impl(impl_) {
+RenderRasterSource::RenderRasterSource(Immutable<style::RasterSource::Impl> impl_)
+ : RenderSource(impl_) {
tilePyramid.setObserver(this);
}
+const style::RasterSource::Impl& RenderRasterSource::impl() const {
+ return static_cast<const style::RasterSource::Impl&>(*baseImpl);
+}
+
bool RenderRasterSource::isLoaded() const {
return tilePyramid.isLoaded();
}
@@ -33,7 +36,7 @@ std::map<UnwrappedTileID, RenderTile>& RenderRasterSource::getRenderTiles() {
}
void RenderRasterSource::updateTiles(const TileParameters& parameters) {
- optional<Tileset> tileset = impl.getTileset();
+ optional<Tileset> tileset = impl().getTileset();
if (!tileset) {
return;
@@ -46,7 +49,7 @@ void RenderRasterSource::updateTiles(const TileParameters& parameters) {
tilePyramid.updateTiles(parameters,
SourceType::Raster,
- impl.getTileSize(),
+ impl().getTileSize(),
tileset->zoomRange,
[&] (const OverscaledTileID& tileID) {
return std::make_unique<RasterTile>(tileID, parameters, *tileset);