diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-01-30 17:45:31 +0200 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2019-01-31 11:50:17 +0200 |
commit | 429ea6aba5a2600628278d647cbd4eb0b1b7c968 (patch) | |
tree | 3d7ee0aacf94387d86b4381757ca22fee627e6de /src/mbgl/layout | |
parent | 1d6c36a3e730e5a0ef8cdb14a0e4cebe38c57654 (diff) | |
download | qtlocation-mapboxgl-429ea6aba5a2600628278d647cbd4eb0b1b7c968.tar.gz |
[core] Remove paintProperties() method from some render layers
PatternLayout can directly access layer's `evaluated` field.
Besides, obviates accessing of moved `evaluatedProps` inside
PatternLayout constructor.
Diffstat (limited to 'src/mbgl/layout')
-rw-r--r-- | src/mbgl/layout/pattern_layout.hpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mbgl/layout/pattern_layout.hpp b/src/mbgl/layout/pattern_layout.hpp index a29221c547..744f6ab170 100644 --- a/src/mbgl/layout/pattern_layout.hpp +++ b/src/mbgl/layout/pattern_layout.hpp @@ -13,7 +13,7 @@ public: std::string max; }; -using PatternLayerMap = std::unordered_map<std::string, PatternDependency>; +using PatternLayerMap = std::map<std::string, PatternDependency>; class PatternFeature { public: @@ -44,8 +44,7 @@ public: groupID = renderLayer->getID(); for (const auto& layer : layers) { - const typename B::PossiblyEvaluatedPaintProperties evaluatedProps = static_cast<const PatternLayer*>(layer)->paintProperties(); - layerPaintProperties.emplace(layer->getID(), std::move(evaluatedProps)); + const typename B::PossiblyEvaluatedPaintProperties evaluatedProps = static_cast<const PatternLayer*>(layer)->evaluated; const auto patternProperty = evaluatedProps.template get<typename PatternLayer::PatternProperty>(); const auto constantPattern = patternProperty.constantOr(Faded<std::basic_string<char> >{ "", ""}); // determine if layer group has any layers that use *-pattern property and add @@ -57,6 +56,7 @@ public: patternDependencies.emplace(constantPattern.to, ImageType::Pattern); patternDependencies.emplace(constantPattern.from, ImageType::Pattern); } + layerPaintProperties.emplace(layer->getID(), std::move(evaluatedProps)); } const size_t featureCount = sourceLayer->featureCount(); @@ -65,7 +65,7 @@ public: if (!leader.filter(style::expression::EvaluationContext { this->zoom, feature.get() })) continue; - std::unordered_map<std::string, PatternDependency> patternDependencyMap; + PatternLayerMap patternDependencyMap; if (hasPattern) { for (const auto& layer : layers) { const auto it = layerPaintProperties.find(layer->getID()); |