diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2018-07-24 10:09:25 -0700 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2018-07-24 11:08:40 -0700 |
commit | f6659c729f29fe65789ee08d50d438cf05623f6f (patch) | |
tree | 8c13dfd5a61305911d775e58056d7f9d3ade724b /src/mbgl/tile/tile.hpp | |
parent | 2bbc79206073d260863c887a95ee4ba25bc45910 (diff) | |
download | qtlocation-mapboxgl-f6659c729f29fe65789ee08d50d438cf05623f6f.tar.gz |
[core] Use hand-rolled RTTI
Diffstat (limited to 'src/mbgl/tile/tile.hpp')
-rw-r--r-- | src/mbgl/tile/tile.hpp | 6 |
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&&) {} |