MBMObservable
@interface MBMObservable : NSObject
The observable
class provides Publish&Subscribe functionality for map
and
map snapshotter
objects. The dedicated methods return a cancellable object
whose cancel
method can be used to cancel an active subscription.
Simplified diagram for events emitted by the map object. ┌─────────────┐ ┌─────────┐ ┌──────────────┐ │ Application │ │ Map │ │ResourceLoader│ └──────┬──────┘ └────┬────┘ └───────┬──────┘ │ │ │ ├───────setStyleURI────────▶│ │ │ ├───────────get style───────────▶│ │ │ │ │ │◀─────────style data────────────┤ │ │ │ │ ├─parse style─┐ │ │ │ │ │ │ StyleDataLoaded ◀─────────────┘ │ │◀───────type: Style────────┤ │ │ ├─────────get sprite────────────▶│ │ │ │ │ │◀────────sprite data────────────┤ │ │ │ │ ├──────parse sprite───────┐ │ │ │ │ │ │ StyleDataLoaded ◀─────────────────────────┘ │ │◀──────type: Sprite────────┤ │ │ ├─────get source TileJSON(s)────▶│ │ │ │ │ SourceDataLoaded │◀─────parse TileJSON data───────┤ │◀─────type: Metadata───────┤ │ │ │ │ │ │ │ │ StyleDataLoaded │ │ │◀──────type: Sources───────┤ │ │ ├──────────get tiles────────────▶│ │ │ │ │◀───────StyleLoaded────────┤ │ │ │ │ │ SourceDataLoaded │◀─────────tile data─────────────┤ │◀───────type: Tile─────────┤ │ │ │ │ │ │ │ │◀────RenderFrameStarted────┤ │ │ ├─────render─────┐ │ │ │ │ │ │ ◀────────────────┘ │ │◀───RenderFrameFinished────┤ │ │ ├──render, all tiles loaded──┐ │ │ │ │ │ │ ◀────────────────────────────┘ │ │◀────PerfStatsCollected────┤ │ │ │ │ │ │ │ │◀────────MapLoaded─────────┤ │ │ │ │ │ │ │ │◀─────────MapIdle──────────┤ │ │ ┌ ─── ─┴─ ─── ┐ │ │ │ offline │ │ │ └ ─── ─┬─ ─── ┘ │ │ │ │ ├─────────setCamera────────▶│ │ │ ├───────────get tiles───────────▶│ │ │ │ │ │┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │◀─────────MapIdle──────────┤ waiting for connectivity │ │ │ ││ Map renders cached data │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┘ │ │ │ │
-
Subscribes to
MapLoaded
event.See
MapLoadedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForMapLoaded: (nonnull MBMMapLoadedCallback)mapLoaded;
Return Value
cancellation object.
-
Subscribes to
MapIdle
event.See
MapIdleCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForMapIdle: (nonnull MBMMapIdleCallback)mapIdle;
Return Value
cancellation object.
-
Subscribes to
MapLoadingError
event.See
MapLoadingErrorCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForMapLoadingError: (nonnull MBMMapLoadingErrorCallback)mapLoadingError;
Return Value
cancellation object.
-
Subscribes to
StyleLoaded
event.See
StyleLoadedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForStyleLoaded: (nonnull MBMStyleLoadedCallback)styleLoaded;
Return Value
cancellation object.
-
Subscribes to
StyleDataLoaded
event.See
StyleDataLoadedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForStyleDataLoaded: (nonnull MBMStyleDataLoadedCallback)styleDataLoaded;
Return Value
cancellation object.
-
Subscribes to
SourceDataLoaded
event.See
SourceDataLoadedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForSourceDataLoaded: (nonnull MBMSourceDataLoadedCallback)sourceDataLoaded;
Return Value
cancellation object.
-
Subscribes to
SourceAdded
event.See
SourceAddedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForSourceAdded: (nonnull MBMSourceAddedCallback)sourceAdded;
Return Value
cancellation object.
-
Subscribes to
SourceRemoved
event.See
SourceRemovedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForSourceRemoved: (nonnull MBMSourceRemovedCallback)sourceRemoved;
Return Value
cancellation object.
-
Subscribes to
StyleImageMissing
event.See
StyleImageMissingCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForStyleImageMissing: (nonnull MBMStyleImageMissingCallback)styleImageMissing;
Return Value
cancellation object.
-
Subscribes to
StyleImageRemoveUnused
event.See
StyleImageRemoveUnusedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForStyleImageRemoveUnused: (nonnull MBMStyleImageRemoveUnusedCallback)styleImageRemoveUnused;
Return Value
cancellation object.
-
Subscribes to
CameraChanged
event.See
CameraChangedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForCameraChanged: (nonnull MBMCameraChangedCallback)cameraChanged;
Return Value
cancellation object.
-
Subscribes to
RenderFrameStarted
event.See
RenderFrameStartedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForRenderFrameStarted: (nonnull MBMRenderFrameStartedCallback)renderFrameStarted;
Return Value
cancellation object.
-
Subscribes to
RenderFrameFinished
event.See
RenderFrameFinishedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForRenderFrameFinished: (nonnull MBMRenderFrameFinishedCallback)renderFrameFinished;
Return Value
cancellation object.
-
Subscribes to
PerfStatsCollected
event.See
PerfStatsCollectedCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForPerfStatsCollected: (nonnull MBMPerfStatsCollectedCallback)perfStatsCollected;
Return Value
cancellation object.
-
Subscribes to
ResourceRequest
event.See
ResourceRequestCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>)subscribeForResourceRequest: (nonnull MBMResourceRequestCallback)resourceRequest;
Return Value
cancellation object.
-
Subscribes to an experimental
GenericEvent
event.See
GenericEventCallback
Declaration
Objective-C
- (nonnull id<MBXCancelable>) subscribeForEventName:(nonnull NSString *)eventName callback:(nonnull MBMGenericEventCallback)callback;
Return Value
cancellation object.