summaryrefslogtreecommitdiff
path: root/platform/darwin/src/MGLStyleLayer_Private.h
diff options
context:
space:
mode:
authorMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2018-11-12 17:22:54 +0200
committerMikhail Pozdnyakov <mikhail.pozdnyakov@mapbox.com>2018-11-19 22:31:20 +0200
commit8077055b1ad5bb7324b81c9b199176124240237b (patch)
tree715e92591a4187469614f726566eaeefe2757e15 /platform/darwin/src/MGLStyleLayer_Private.h
parent8ac87ec5cb2374d212a31942ca19ce395704eb69 (diff)
downloadqtlocation-mapboxgl-8077055b1ad5bb7324b81c9b199176124240237b.tar.gz
[ios, macos] Layer manager for Darwin platforms
The newly introduced `MGLStyleLayerManager` is now responsible for creating both style layer objects and their obj C peers on Darwin.
Diffstat (limited to 'platform/darwin/src/MGLStyleLayer_Private.h')
-rw-r--r--platform/darwin/src/MGLStyleLayer_Private.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/platform/darwin/src/MGLStyleLayer_Private.h b/platform/darwin/src/MGLStyleLayer_Private.h
index ea43c680e0..0d6e4094bd 100644
--- a/platform/darwin/src/MGLStyleLayer_Private.h
+++ b/platform/darwin/src/MGLStyleLayer_Private.h
@@ -82,4 +82,21 @@ struct LayerWrapper {
@end
+namespace mbgl {
+
+class LayerPeerFactory {
+public:
+ virtual ~LayerPeerFactory() = default;
+ /**
+ Get the corresponding core layer factory.
+ */
+ virtual style::LayerFactory* getCoreLayerFactory() = 0;
+ /**
+ Creates an MGLStyleLayer instance with a raw pointer to the backing store.
+ */
+ virtual MGLStyleLayer* createPeer(style::Layer*) = 0;
+};
+
+} // namespace mbgl
+
NS_ASSUME_NONNULL_END