summaryrefslogtreecommitdiff
path: root/src/mbgl/tile/tile.hpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2018-07-24 10:09:25 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2018-07-24 11:08:40 -0700
commitf6659c729f29fe65789ee08d50d438cf05623f6f (patch)
tree8c13dfd5a61305911d775e58056d7f9d3ade724b /src/mbgl/tile/tile.hpp
parent2bbc79206073d260863c887a95ee4ba25bc45910 (diff)
downloadqtlocation-mapboxgl-f6659c729f29fe65789ee08d50d438cf05623f6f.tar.gz
[core] Use hand-rolled RTTI
Diffstat (limited to 'src/mbgl/tile/tile.hpp')
-rw-r--r--src/mbgl/tile/tile.hpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mbgl/tile/tile.hpp b/src/mbgl/tile/tile.hpp
index 2182ec722f..5cf74abff5 100644
--- a/src/mbgl/tile/tile.hpp
+++ b/src/mbgl/tile/tile.hpp
@@ -48,6 +48,12 @@ public:
virtual void upload(gl::Context&) = 0;
virtual Bucket* getBucket(const style::Layer::Impl&) const = 0;
+ template <class T>
+ T* getBucket(const style::Layer::Impl& layer) const {
+ Bucket* bucket = getBucket(layer);
+ return bucket ? bucket->as<T>() : nullptr;
+ }
+
virtual void setShowCollisionBoxes(const bool) {}
virtual void setLayers(const std::vector<Immutable<style::Layer::Impl>>&) {}
virtual void setMask(TileMask&&) {}