diff --git a/src/mbgl/renderer/layers/background_layer_tweaker.cpp b/src/mbgl/renderer/layers/background_layer_tweaker.cpp index b513116b8..2e05debbc 100644 --- a/src/mbgl/renderer/layers/background_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/background_layer_tweaker.cpp @@ -82,7 +82,7 @@ void BackgroundLayerTweaker::execute(LayerGroupBase& layerGroup, const RenderTre layerGroup.setEnabled(true); int32_t samplerLocation = -1; - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { assert(drawable.getTileID()); // We assume that drawables don't change between pattern and non-pattern. diff --git a/src/mbgl/renderer/layers/circle_layer_tweaker.cpp b/src/mbgl/renderer/layers/circle_layer_tweaker.cpp index cafc17385..039b0bf7c 100644 --- a/src/mbgl/renderer/layers/circle_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/circle_layer_tweaker.cpp @@ -90,7 +90,7 @@ void CircleLayerTweaker::execute(LayerGroupBase& layerGroup, evaluatedPropsUniformBuffer = context.createUniformBuffer(&evaluatedPropsUBO, sizeof(evaluatedPropsUBO)); } - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { auto& uniforms = drawable.mutableUniformBuffers(); uniforms.addOrReplace(CirclePaintParamsUBOName, paintParamsUniformBuffer); uniforms.addOrReplace(CircleEvaluatedPropsUBOName, evaluatedPropsUniformBuffer); diff --git a/src/mbgl/renderer/layers/fill_extrusion_layer_tweaker.cpp b/src/mbgl/renderer/layers/fill_extrusion_layer_tweaker.cpp index 15ec8b15c..e387cb995 100644 --- a/src/mbgl/renderer/layers/fill_extrusion_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/fill_extrusion_layer_tweaker.cpp @@ -101,7 +101,7 @@ void FillExtrusionLayerTweaker::execute(LayerGroupBase& layerGroup, propsBuffer->update(¶msUBO, sizeof(paramsUBO)); } - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { auto& uniforms = drawable.mutableUniformBuffers(); uniforms.addOrReplace(FillExtrusionDrawablePropsUBOName, propsBuffer); diff --git a/src/mbgl/renderer/layers/fill_layer_tweaker.cpp b/src/mbgl/renderer/layers/fill_layer_tweaker.cpp index 48e6337db..5bfb800db 100644 --- a/src/mbgl/renderer/layers/fill_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/fill_layer_tweaker.cpp @@ -69,7 +69,7 @@ void FillLayerTweaker::execute(LayerGroupBase& layerGroup, propsBuffer = context.createUniformBuffer(¶msUBO, sizeof(paramsUBO)); } - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { auto& uniforms = drawable.mutableUniformBuffers(); uniforms.addOrReplace(FillDrawablePropsUBOName, propsBuffer); diff --git a/src/mbgl/renderer/layers/heatmap_layer_tweaker.cpp b/src/mbgl/renderer/layers/heatmap_layer_tweaker.cpp index 1bce27a72..e9f88abc4 100644 --- a/src/mbgl/renderer/layers/heatmap_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/heatmap_layer_tweaker.cpp @@ -56,7 +56,7 @@ void HeatmapLayerTweaker::execute(LayerGroupBase& layerGroup, sizeof(evaluatedPropsUBO)); } - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { auto& uniforms = drawable.mutableUniformBuffers(); uniforms.addOrReplace(HeatmapEvaluatedPropsUBOName, evaluatedPropsUniformBuffer); diff --git a/src/mbgl/renderer/layers/heatmap_texture_layer_tweaker.cpp b/src/mbgl/renderer/layers/heatmap_texture_layer_tweaker.cpp index 99708bc0c..68b6ef82b 100644 --- a/src/mbgl/renderer/layers/heatmap_texture_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/heatmap_texture_layer_tweaker.cpp @@ -37,7 +37,7 @@ void HeatmapTextureLayerTweaker::execute(LayerGroupBase& layerGroup, const auto debugGroup = parameters.encoder->createDebugGroup(label.c_str()); #endif - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { const auto& size = parameters.staticData.backendSize; mat4 viewportMat; matrix::ortho(viewportMat, 0, size.width, size.height, 0, 0, 1); diff --git a/src/mbgl/renderer/layers/hillshade_layer_tweaker.cpp b/src/mbgl/renderer/layers/hillshade_layer_tweaker.cpp index 332038c8e..8bdb09771 100644 --- a/src/mbgl/renderer/layers/hillshade_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/hillshade_layer_tweaker.cpp @@ -65,7 +65,7 @@ void HillshadeLayerTweaker::execute(LayerGroupBase& layerGroup, sizeof(evaluatedPropsUBO)); } - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { drawable.mutableUniformBuffers().addOrReplace(HillshadeEvaluatedPropsUBOName, evaluatedPropsUniformBuffer); if (!drawable.getTileID()) { diff --git a/src/mbgl/renderer/layers/hillshade_prepare_layer_tweaker.cpp b/src/mbgl/renderer/layers/hillshade_prepare_layer_tweaker.cpp index 2c508e16b..a20c80763 100644 --- a/src/mbgl/renderer/layers/hillshade_prepare_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/hillshade_prepare_layer_tweaker.cpp @@ -47,7 +47,7 @@ void HillshadePrepareLayerTweaker::execute(LayerGroupBase& layerGroup, const auto debugGroup = parameters.encoder->createDebugGroup(label.c_str()); #endif - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { if (!drawable.getTileID() || !drawable.getData()) { return; } diff --git a/src/mbgl/renderer/layers/line_layer_tweaker.cpp b/src/mbgl/renderer/layers/line_layer_tweaker.cpp index f100f8792..4348ea97d 100644 --- a/src/mbgl/renderer/layers/line_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/line_layer_tweaker.cpp @@ -170,7 +170,7 @@ void LineLayerTweaker::execute(LayerGroupBase& layerGroup, return lineSDFPropertiesBuffer; }; - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { const auto shader = drawable.getShader(); if (!drawable.getTileID() || !shader) { return; diff --git a/src/mbgl/renderer/layers/raster_layer_tweaker.cpp b/src/mbgl/renderer/layers/raster_layer_tweaker.cpp index 9f31384d6..05479b0e6 100644 --- a/src/mbgl/renderer/layers/raster_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/raster_layer_tweaker.cpp @@ -37,7 +37,7 @@ void RasterLayerTweaker::execute([[maybe_unused]] LayerGroupBase& layerGroup, [[maybe_unused]] const PaintParameters& parameters) { const auto& evaluated = static_cast(*evaluatedProperties).evaluated; - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { const auto spinWeights = [](float spin) -> std::array { spin = util::deg2radf(spin); const float s = std::sin(spin); diff --git a/src/mbgl/renderer/layers/render_background_layer.cpp b/src/mbgl/renderer/layers/render_background_layer.cpp index cfa204886..e55c5a68c 100644 --- a/src/mbgl/renderer/layers/render_background_layer.cpp +++ b/src/mbgl/renderer/layers/render_background_layer.cpp @@ -281,7 +281,7 @@ void RenderBackgroundLayer::update(gfx::ShaderRegistry& shaders, std::unique_ptr builder; - tileLayerGroup->observeDrawables([&](gfx::Drawable& drawable) -> bool { + tileLayerGroup->visitDrawables([&](gfx::Drawable& drawable) -> bool { // Has this tile dropped out of the cover set? return (!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); diff --git a/src/mbgl/renderer/layers/render_circle_layer.cpp b/src/mbgl/renderer/layers/render_circle_layer.cpp index 85d36dfcd..725321f80 100644 --- a/src/mbgl/renderer/layers/render_circle_layer.cpp +++ b/src/mbgl/renderer/layers/render_circle_layer.cpp @@ -319,8 +319,8 @@ void RenderCircleLayer::update(gfx::ShaderRegistry& shaders, return; } - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove( - [&](gfx::Drawable& drawable) { return (!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf( + [&](gfx::Drawable& drawable) { return !(!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); const auto& evaluated = static_cast(*evaluatedProperties).evaluated; @@ -363,7 +363,7 @@ void RenderCircleLayer::update(gfx::ShaderRegistry& shaders, auto& uniforms = drawable.mutableUniformBuffers(); uniforms.createOrUpdate(CircleInterpolateUBOName, &interpolateUBO, context); }; - if (0 < tileLayerGroup->observeDrawables(renderPass, tileID, std::move(updateExisting))) { + if (0 < tileLayerGroup->visitDrawables(renderPass, tileID, std::move(updateExisting))) { continue; } diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp index b788e43ce..d9e658959 100644 --- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp @@ -308,9 +308,9 @@ void RenderFillExtrusionLayer::update(gfx::ShaderRegistry& shaders, // in the "3D pass". constexpr auto drawPass = RenderPass::Translucent; - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove([&](gfx::Drawable& drawable) { + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf([&](gfx::Drawable& drawable) { // If the render pass has changed or the tile has dropped out of the cover set, remove it. - return (drawable.getRenderPass() == drawPass && + return !(drawable.getRenderPass() == drawPass && (!drawable.getTileID() || hasRenderTile(*drawable.getTileID()))); }); @@ -384,7 +384,7 @@ void RenderFillExtrusionLayer::update(gfx::ShaderRegistry& shaders, // If we already have drawables for this tile, update them. if (tileLayerGroup->getDrawableCount(drawPass, tileID) > 0) { // Just update the drawables we already created - tileLayerGroup->observeDrawables(drawPass, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(drawPass, tileID, [&](gfx::Drawable& drawable) { auto& uniforms = drawable.mutableUniformBuffers(); uniforms.createOrUpdate( FillExtrusionLayerTweaker::FillExtrusionTilePropsUBOName, &tilePropsUBO, context); diff --git a/src/mbgl/renderer/layers/render_fill_layer.cpp b/src/mbgl/renderer/layers/render_fill_layer.cpp index b1c3a74bb..dbb0c6d96 100644 --- a/src/mbgl/renderer/layers/render_fill_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_layer.cpp @@ -362,9 +362,9 @@ void RenderFillLayer::update(gfx::ShaderRegistry& shaders, builder.setEnableStencil(true); }; - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove([&](gfx::Drawable& drawable) { + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf([&](gfx::Drawable& drawable) { // If the render pass has changed or the tile has dropped out of the cover set, remove it. - return drawable.getRenderPass() == renderPass && drawable.getTileID() && hasRenderTile(*drawable.getTileID()); + return !(drawable.getRenderPass() == renderPass && drawable.getTileID() && hasRenderTile(*drawable.getTileID())); }); for (const RenderTile& tile : *renderTiles) { @@ -432,7 +432,7 @@ void RenderFillLayer::update(gfx::ShaderRegistry& shaders, uniforms.createOrUpdate(FillLayerTweaker::FillTilePropsUBOName, &tileProps, context); drawable.setVertexAttributes(vertexAttrs); }; - if (0 < tileLayerGroup->observeDrawables(renderPass, tileID, std::move(updateExisting))) { + if (0 < tileLayerGroup->visitDrawables(renderPass, tileID, std::move(updateExisting))) { continue; } diff --git a/src/mbgl/renderer/layers/render_heatmap_layer.cpp b/src/mbgl/renderer/layers/render_heatmap_layer.cpp index 335eb4563..6e3eb9a49 100644 --- a/src/mbgl/renderer/layers/render_heatmap_layer.cpp +++ b/src/mbgl/renderer/layers/render_heatmap_layer.cpp @@ -338,8 +338,8 @@ void RenderHeatmapLayer::update(gfx::ShaderRegistry& shaders, return; } - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove( - [&](gfx::Drawable& drawable) { return (!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf( + [&](gfx::Drawable& drawable) { return !(!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); const auto& evaluated = static_cast(*evaluatedProperties).evaluated; @@ -369,7 +369,7 @@ void RenderHeatmapLayer::update(gfx::ShaderRegistry& shaders, /* .radius_t = */ std::get<0>(paintPropertyBinders.get()->interpolationFactor(zoom)), /* .padding = */ {0}}; - tileLayerGroup->observeDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { drawable.mutableUniformBuffers().createOrUpdate(HeatmapInterpolateUBOName, &interpolateUBO, context); }); diff --git a/src/mbgl/renderer/layers/render_hillshade_layer.cpp b/src/mbgl/renderer/layers/render_hillshade_layer.cpp index c64422a43..012793241 100644 --- a/src/mbgl/renderer/layers/render_hillshade_layer.cpp +++ b/src/mbgl/renderer/layers/render_hillshade_layer.cpp @@ -324,8 +324,8 @@ void RenderHillshadeLayer::update(gfx::ShaderRegistry& shaders, return; } - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove( - [&](gfx::Drawable& drawable) { return (!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf( + [&](gfx::Drawable& drawable) { return !(!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); if (!staticDataSharedVertices) { staticDataSharedVertices = std::make_shared(RenderStaticData::rasterVertices()); @@ -454,7 +454,7 @@ void RenderHillshadeLayer::update(gfx::ShaderRegistry& shaders, hillshadeBuilder = context.createDrawableBuilder("hillshade"); if (tileLayerGroup->getDrawableCount(renderPass, tileID) > 0) { - tileLayerGroup->observeDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { drawable.setVertexAttributes(std::move(hillshadeVertexAttrs)); drawable.setVertices({}, vertices->elements(), gfx::AttributeDataType::Short2); diff --git a/src/mbgl/renderer/layers/render_line_layer.cpp b/src/mbgl/renderer/layers/render_line_layer.cpp index 757018a95..c19e11413 100644 --- a/src/mbgl/renderer/layers/render_line_layer.cpp +++ b/src/mbgl/renderer/layers/render_line_layer.cpp @@ -455,9 +455,9 @@ void RenderLineLayer::update(gfx::ShaderRegistry& shaders, const RenderPass renderPass = static_cast(evaluatedProperties->renderPasses & ~mbgl::underlying_type(RenderPass::Opaque)); - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove([&](gfx::Drawable& drawable) { + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf([&](gfx::Drawable& drawable) { // If the render pass has changed or the tile has dropped out of the cover set, remove it. - return (drawable.getRenderPass() == renderPass && + return !(drawable.getRenderPass() == renderPass && (!drawable.getTileID() || hasRenderTile(*drawable.getTileID()))); }); @@ -573,7 +573,7 @@ void RenderLineLayer::update(gfx::ShaderRegistry& shaders, /*pattern_to =*/patternPosB ? util::cast(patternPosB->tlbr()) : std::array{0}}; // update existing drawables - tileLayerGroup->observeDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { // simple line interpolation UBO if (drawable.getShader()->getUniformBlocks().get(std::string(LineInterpolationUBOName))) { drawable.mutableUniformBuffers().createOrUpdate( diff --git a/src/mbgl/renderer/layers/render_raster_layer.cpp b/src/mbgl/renderer/layers/render_raster_layer.cpp index 354f603fa..031fa7272 100644 --- a/src/mbgl/renderer/layers/render_raster_layer.cpp +++ b/src/mbgl/renderer/layers/render_raster_layer.cpp @@ -425,7 +425,7 @@ void RenderRasterLayer::update(gfx::ShaderRegistry& shaders, gfx::AttributeDataType::Short4); } - tileLayerGroup->observeDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(renderPass, tileID, [&](gfx::Drawable& drawable) { drawable.setVertexAttributes(std::move(vertexAttrs)); drawable.setVertices({}, vertices->elements(), gfx::AttributeDataType::Short2); @@ -504,9 +504,9 @@ void RenderRasterLayer::update(gfx::ShaderRegistry& shaders, } } else if (renderTiles) { if (layerGroup) { - stats.drawablesRemoved += layerGroup->observeDrawablesRemove([&](gfx::Drawable& drawable) { + stats.drawablesRemoved += layerGroup->removeDrawablesIf([&](gfx::Drawable& drawable) { // Has this tile dropped out of the cover set? - return (!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); + return !(!drawable.getTileID() || hasRenderTile(*drawable.getTileID())); }); } else { // Set up a tile layer group diff --git a/src/mbgl/renderer/layers/render_symbol_layer.cpp b/src/mbgl/renderer/layers/render_symbol_layer.cpp index acfdfea86..e167bbba8 100644 --- a/src/mbgl/renderer/layers/render_symbol_layer.cpp +++ b/src/mbgl/renderer/layers/render_symbol_layer.cpp @@ -873,13 +873,13 @@ void RenderSymbolLayer::update(gfx::ShaderRegistry& shaders, } auto* tileLayerGroup = static_cast(layerGroup.get()); - stats.drawablesRemoved += tileLayerGroup->observeDrawablesRemove([&](gfx::Drawable& drawable) { + stats.drawablesRemoved += tileLayerGroup->removeDrawablesIf([&](gfx::Drawable& drawable) { // If the render pass has changed or the tile has dropped out of the cover set, remove it. const auto& tileID = drawable.getTileID(); if (drawable.getRenderPass() != passes || (tileID && !hasRenderTile(*tileID))) { - return false; + return true; } - return true; + return false; }); const bool sortFeaturesByKey = !impl_cast(baseImpl).layout.get().isUndefined(); @@ -914,7 +914,7 @@ void RenderSymbolLayer::update(gfx::ShaderRegistry& shaders, // If we already have drawables for this tile, update them. if (tileLayerGroup->getDrawableCount(passes, tileID) > 0) { // Just update the drawables we already created - tileLayerGroup->observeDrawables(passes, tileID, [&](gfx::Drawable& drawable) { + tileLayerGroup->visitDrawables(passes, tileID, [&](gfx::Drawable& drawable) { const auto& evaluated = getEvaluated(renderData.layerProperties); updateTileDrawable(drawable, context, bucket, bucketPaintProperties, evaluated, state); }); diff --git a/src/mbgl/renderer/layers/symbol_layer_tweaker.cpp b/src/mbgl/renderer/layers/symbol_layer_tweaker.cpp index 0dde5c103..2f1a54e94 100644 --- a/src/mbgl/renderer/layers/symbol_layer_tweaker.cpp +++ b/src/mbgl/renderer/layers/symbol_layer_tweaker.cpp @@ -111,7 +111,7 @@ void SymbolLayerTweaker::execute(LayerGroupBase& layerGroup, const auto debugGroup = parameters.encoder->createDebugGroup(label.c_str()); #endif - layerGroup.observeDrawables([&](gfx::Drawable& drawable) { + layerGroup.visitDrawables([&](gfx::Drawable& drawable) { if (!drawable.getTileID() || !drawable.getData()) { return; } diff --git a/src/mbgl/renderer/render_orchestrator.cpp b/src/mbgl/renderer/render_orchestrator.cpp index 2cbddf30d..4eb043f7b 100644 --- a/src/mbgl/renderer/render_orchestrator.cpp +++ b/src/mbgl/renderer/render_orchestrator.cpp @@ -844,7 +844,7 @@ const LayerGroupBasePtr& RenderOrchestrator::getLayerGroup(const int32_t layerIn return (hit == layerGroupsByLayerIndex.end()) ? no_group : hit->second; } -void RenderOrchestrator::observeLayerGroups(std::function f) { +void RenderOrchestrator::visitLayerGroups(std::function f) { for (auto& pair : layerGroupsByLayerIndex) { if (pair.second) { f(*pair.second); @@ -852,7 +852,7 @@ void RenderOrchestrator::observeLayerGroups(std::function } } -void RenderOrchestrator::observeLayerGroups(std::function f) const { +void RenderOrchestrator::visitLayerGroups(std::function f) const { for (const auto& pair : layerGroupsByLayerIndex) { if (pair.second) { f(*pair.second); diff --git a/src/mbgl/renderer/render_orchestrator.hpp b/src/mbgl/renderer/render_orchestrator.hpp index d6e9b7b73..7c1753356 100644 --- a/src/mbgl/renderer/render_orchestrator.hpp +++ b/src/mbgl/renderer/render_orchestrator.hpp @@ -104,8 +104,8 @@ public: bool removeLayerGroup(const int32_t layerIndex); size_t numLayerGroups() const noexcept; const LayerGroupBasePtr& getLayerGroup(const int32_t layerIndex) const; - void observeLayerGroups(std::function); - void observeLayerGroups(std::function) const; + void visitLayerGroups(std::function); + void visitLayerGroups(std::function) const; void updateLayers(gfx::ShaderRegistry&, gfx::Context&, diff --git a/src/mbgl/renderer/renderer_impl.cpp b/src/mbgl/renderer/renderer_impl.cpp index 61ba71d7e..82c3deb5e 100644 --- a/src/mbgl/renderer/renderer_impl.cpp +++ b/src/mbgl/renderer/renderer_impl.cpp @@ -144,14 +144,14 @@ void Renderer::Impl::render(const RenderTree& renderTree, orchestrator.processChanges(); // Run layer tweakers to update any dynamic elements - orchestrator.observeLayerGroups([&](LayerGroupBase& layerGroup) { + orchestrator.visitLayerGroups([&](LayerGroupBase& layerGroup) { if (layerGroup.getLayerTweaker()) { layerGroup.getLayerTweaker()->execute(layerGroup, renderTree, parameters); } }); // Give the layers a chance to do setup - // orchestrator.observeLayerGroups([&](LayerGroup& layerGroup) { layerGroup.preRender(orchestrator, parameters); + // orchestrator.visitLayerGroups([&](LayerGroup& layerGroup) { layerGroup.preRender(orchestrator, parameters); // }); // Upload layer groups @@ -159,7 +159,7 @@ void Renderer::Impl::render(const RenderTree& renderTree, const auto uploadPass = parameters.encoder->createUploadPass("layerGroup-upload"); // Give the layers a chance to upload - orchestrator.observeLayerGroups([&](LayerGroupBase& layerGroup) { layerGroup.upload(*uploadPass); }); + orchestrator.visitLayerGroups([&](LayerGroupBase& layerGroup) { layerGroup.upload(*uploadPass); }); // Give the render targets a chance to upload orchestrator.observeRenderTargets([&](RenderTarget& renderTarget) { renderTarget.upload(*uploadPass); }); @@ -194,7 +194,7 @@ void Renderer::Impl::render(const RenderTree& renderTree, parameters.currentLayer = 0; // draw layer groups, opaque pass - orchestrator.observeLayerGroups([&](LayerGroupBase& layerGroup) { + orchestrator.visitLayerGroups([&](LayerGroupBase& layerGroup) { layerGroup.render(orchestrator, parameters); parameters.currentLayer++; }); @@ -252,7 +252,7 @@ void Renderer::Impl::render(const RenderTree& renderTree, PaintParameters::depthEpsilon; // draw layer groups, opaque pass - orchestrator.observeLayerGroups([&](LayerGroupBase& layerGroup) { + orchestrator.visitLayerGroups([&](LayerGroupBase& layerGroup) { layerGroup.render(orchestrator, parameters); parameters.currentLayer++; }); @@ -266,7 +266,7 @@ void Renderer::Impl::render(const RenderTree& renderTree, PaintParameters::depthEpsilon; // draw layer groups, translucent pass - orchestrator.observeLayerGroups([&](LayerGroupBase& layerGroup) { + orchestrator.visitLayerGroups([&](LayerGroupBase& layerGroup) { layerGroup.render(orchestrator, parameters); if (parameters.currentLayer != 0) { parameters.currentLayer--; @@ -443,7 +443,7 @@ void Renderer::Impl::render(const RenderTree& renderTree, #if MLN_DRAWABLE_RENDERER // Give the layers a chance to do cleanup - orchestrator.observeLayerGroups( + orchestrator.visitLayerGroups( [&](LayerGroupBase& layerGroup) { layerGroup.postRender(orchestrator, parameters); }); #endif