summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/update_parameters.hpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2017-05-31 13:53:48 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2017-06-05 19:38:08 -0700
commit9dfc2d924d440560adb2db13c758b2c5b3b7dd47 (patch)
tree8d1868b5b011676fd0a7d260e0c3560cd36db6b9 /src/mbgl/renderer/update_parameters.hpp
parent97eb62fe7cc10fd882f6e361c461900687361460 (diff)
downloadqtlocation-mapboxgl-9dfc2d924d440560adb2db13c758b2c5b3b7dd47.tar.gz
[core] Collection-level immutability
Introduce a second level of immutability, over each of the collections held by a style: sources, images, and layers. Tracking immutability at this level allows us to short-circuit significant portions of the RenderStyle update logic via a simple equality check, greatly improving performance.
Diffstat (limited to 'src/mbgl/renderer/update_parameters.hpp')
-rw-r--r--src/mbgl/renderer/update_parameters.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mbgl/renderer/update_parameters.hpp b/src/mbgl/renderer/update_parameters.hpp
index e35ee80a10..7c44064b0b 100644
--- a/src/mbgl/renderer/update_parameters.hpp
+++ b/src/mbgl/renderer/update_parameters.hpp
@@ -22,9 +22,9 @@ public:
const bool spriteLoaded;
const style::TransitionOptions transitionOptions;
const Immutable<style::Light::Impl> light;
- const std::vector<Immutable<style::Image::Impl>> images;
- const std::vector<Immutable<style::Source::Impl>> sources;
- const std::vector<Immutable<style::Layer::Impl>> layers;
+ const Immutable<std::vector<Immutable<style::Image::Impl>>> images;
+ const Immutable<std::vector<Immutable<style::Source::Impl>>> sources;
+ const Immutable<std::vector<Immutable<style::Layer::Impl>>> layers;
Scheduler& scheduler;
FileSource& fileSource;