diff options
author | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2018-11-15 15:47:25 +0200 |
---|---|---|
committer | Mikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com> | 2018-11-15 17:48:36 +0200 |
commit | ff09c94d0825f5dbe7dddce52b64e74d61978976 (patch) | |
tree | 86833d95d8bf7abbcb8e6965aaba65d666ffff52 /include/mbgl/style/layers/line_layer.hpp | |
parent | 73dcfe2d0d3475ad9584969c7908ba681a3f5bfa (diff) | |
download | qtlocation-mapboxgl-upstream/mikhail_LayerTypeInfo.tar.gz |
[core][android] Introduce mbgl::style::LayerTypeInfoupstream/mikhail_LayerTypeInfo
The `LayerTypeInfo` contains static meta data about certain layer type.
Each layer module should have a single immutable `LayerTypeInfo` instance
for the represented layer type. Both `LayerImpl` and `LayerFactory` from the
module always refer to the same `LayerTypeInfo` instance, so address of this
instance can be used as a layer module Id during the process life time.
Diffstat (limited to 'include/mbgl/style/layers/line_layer.hpp')
-rw-r--r-- | include/mbgl/style/layers/line_layer.hpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/include/mbgl/style/layers/line_layer.hpp b/include/mbgl/style/layers/line_layer.hpp index 26837f4d06..0f5e2bb347 100644 --- a/include/mbgl/style/layers/line_layer.hpp +++ b/include/mbgl/style/layers/line_layer.hpp @@ -128,15 +128,11 @@ protected: class LineLayerFactory : public LayerFactory { public: LineLayerFactory(); - // LayerFactory overrides. ~LineLayerFactory() override; - bool supportsType(const std::string& type) const noexcept final; - std::unique_ptr<style::Layer> createLayer(const std::string& id, const conversion::Convertible& value) final; - - static LineLayerFactory* get() noexcept; -private: - static LineLayerFactory* instance; + // LayerFactory overrides. + const LayerTypeInfo* getTypeInfo() const noexcept final; + std::unique_ptr<style::Layer> createLayer(const std::string& id, const conversion::Convertible& value) final; }; } // namespace style |