diff options
-rw-r--r-- | src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp | 4 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_fill_layer.cpp | 3 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_line_layer.cpp | 3 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_line_layer.hpp | 1 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_symbol_layer.cpp | 3 | ||||
-rw-r--r-- | src/mbgl/tile/geometry_tile_worker.cpp | 2 |
6 files changed, 10 insertions, 6 deletions
diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp index 717408fbd1..8f1b961d1a 100644 --- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp @@ -28,11 +28,11 @@ const style::FillExtrusionLayer::Impl& RenderFillExtrusionLayer::impl() const { } std::unique_ptr<Bucket> RenderFillExtrusionLayer::createBucket(const BucketParameters&, const std::vector<const RenderLayer*>&) const { - assert(false); // Should be calling createLayout() instead. + // Should be calling createLayout() instead. + assert(baseImpl->getTypeInfo()->layout == LayerTypeInfo::Layout::NotRequired); return nullptr; } - std::unique_ptr<Layout> RenderFillExtrusionLayer::createLayout(const BucketParameters& parameters, const std::vector<const RenderLayer*>& group, std::unique_ptr<GeometryTileLayer> layer, diff --git a/src/mbgl/renderer/layers/render_fill_layer.cpp b/src/mbgl/renderer/layers/render_fill_layer.cpp index a0453121a8..83be3ccd57 100644 --- a/src/mbgl/renderer/layers/render_fill_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_layer.cpp @@ -26,7 +26,8 @@ const style::FillLayer::Impl& RenderFillLayer::impl() const { } std::unique_ptr<Bucket> RenderFillLayer::createBucket(const BucketParameters&, const std::vector<const RenderLayer*>&) const { - assert(false); // Should be calling createLayout() instead. + // Should be calling createLayout() instead. + assert(baseImpl->getTypeInfo()->layout == LayerTypeInfo::Layout::NotRequired); return nullptr; } diff --git a/src/mbgl/renderer/layers/render_line_layer.cpp b/src/mbgl/renderer/layers/render_line_layer.cpp index 1edd69237e..94081b5f09 100644 --- a/src/mbgl/renderer/layers/render_line_layer.cpp +++ b/src/mbgl/renderer/layers/render_line_layer.cpp @@ -28,7 +28,8 @@ const style::LineLayer::Impl& RenderLineLayer::impl() const { } std::unique_ptr<Bucket> RenderLineLayer::createBucket(const BucketParameters&, const std::vector<const RenderLayer*>&) const { - assert(false); // Should be calling createLayout() instead. + // Should be calling createLayout() instead. + assert(baseImpl->getTypeInfo()->layout == LayerTypeInfo::Layout::NotRequired); return nullptr; } diff --git a/src/mbgl/renderer/layers/render_line_layer.hpp b/src/mbgl/renderer/layers/render_line_layer.hpp index cd657dfe16..1b26419238 100644 --- a/src/mbgl/renderer/layers/render_line_layer.hpp +++ b/src/mbgl/renderer/layers/render_line_layer.hpp @@ -51,6 +51,7 @@ public: std::unique_ptr<GeometryTileLayer>, GlyphDependencies&, ImageDependencies&) const override; + // Paint properties style::LinePaintProperties::Unevaluated unevaluated; RenderLinePaintProperties::PossiblyEvaluated evaluated; diff --git a/src/mbgl/renderer/layers/render_symbol_layer.cpp b/src/mbgl/renderer/layers/render_symbol_layer.cpp index cc084c5e1a..6d2c090aef 100644 --- a/src/mbgl/renderer/layers/render_symbol_layer.cpp +++ b/src/mbgl/renderer/layers/render_symbol_layer.cpp @@ -32,7 +32,8 @@ const style::SymbolLayer::Impl& RenderSymbolLayer::impl() const { } std::unique_ptr<Bucket> RenderSymbolLayer::createBucket(const BucketParameters&, const std::vector<const RenderLayer*>&) const { - assert(false); // Should be calling createLayout() instead. + // Should be calling createLayout() instead. + assert(baseImpl->getTypeInfo()->layout == LayerTypeInfo::Layout::NotRequired); return nullptr; } diff --git a/src/mbgl/tile/geometry_tile_worker.cpp b/src/mbgl/tile/geometry_tile_worker.cpp index e16b805f6b..89592e12be 100644 --- a/src/mbgl/tile/geometry_tile_worker.cpp +++ b/src/mbgl/tile/geometry_tile_worker.cpp @@ -375,7 +375,7 @@ void GeometryTileWorker::parse() { // are needed to render the layer. They use the intermediate Layout data structure to accomplish this, // and either immediately create a bucket if no images/glyphs are used, or the Layout is stored until // the images/glyphs are available to add the features to the buckets. - if (leader.as<RenderSymbolLayer>() ||leader.as<RenderLineLayer>() || leader.as<RenderFillLayer>() || leader.as<RenderFillExtrusionLayer>()) { + if (leader.baseImpl->getTypeInfo()->layout == LayerTypeInfo::Layout::Required) { auto layout = leader.createLayout(parameters, group, std::move(geometryLayer), glyphDependencies, imageDependencies); if (layout->hasDependencies()) { layouts.push_back(std::move(layout)); |