From ff09c94d0825f5dbe7dddce52b64e74d61978976 Mon Sep 17 00:00:00 2001 From: Mikhail Pozdnyakov Date: Thu, 15 Nov 2018 15:47:25 +0200 Subject: [core][android] Introduce mbgl::style::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. --- src/mbgl/style/layer.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/mbgl/style/layer.cpp') diff --git a/src/mbgl/style/layer.cpp b/src/mbgl/style/layer.cpp index 2225fa921b..56b825760b 100644 --- a/src/mbgl/style/layer.cpp +++ b/src/mbgl/style/layer.cpp @@ -107,6 +107,10 @@ optional Layer::setVisibility(const conversion::Convertible& return nullopt; } +const LayerTypeInfo* Layer::getTypeInfo() const noexcept { + return baseImpl->getTypeInfo(); +} + optional LayerFactory::getSource(const conversion::Convertible& value) const noexcept { auto sourceValue = objectMember(value, "source"); if (!sourceValue) { -- cgit v1.2.1