| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279 |
- // This file is generated and will be overwritten automatically.
- #import <Foundation/Foundation.h>
- /**
- * List of supported event types by the `map` and `map snapshotter` objects,
- * and event data format specification for each event.
- *
- * ``` text
- * 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──┐ │
- * │ │ │ │
- * │ ◀────────────────────────────┘ │
- * │◀────────MapLoaded─────────┤ │
- * │ │ │
- * │ │ │
- * │◀─────────MapIdle──────────┤ │
- * │ ┌ ─── ─┴─ ─── ┐ │
- * │ │ offline │ │
- * │ └ ─── ─┬─ ─── ┘ │
- * │ │ │
- * ├─────────setCamera────────▶│ │
- * │ ├───────────get tiles───────────▶│
- * │ │ │
- * │ │┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
- * │◀─────────MapIdle──────────┤ waiting for connectivity │ │
- * │ ││ Map renders cached data │
- * │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┘ │
- * │ │ │
- * ```
- */
- NS_SWIFT_NAME(MapEvents)
- __attribute__((visibility ("default")))
- @interface MBMMapEvents : NSObject
- /**
- * The style has been fully loaded, and the `map` has rendered all visible tiles.
- *
- * ``` text
- * Event data format (Object).
- * ```
- */
- @property (nonatomic, class, readonly) NSString * MapLoaded;
- /**
- * Describes an error that has occurred while loading the Map. The `type` property defines what resource could
- * not be loaded and the `message` property will contain a descriptive error message.
- * In case of `source` or `tile` loading errors, `source-id` will contain the id of the source failing.
- * In case of `tile` loading errors, `tile-id` will contain the id of the tile
- *
- * ``` text
- * Event data format (Object):
- * .
- * ├── type - String ("style" | "sprite" | "source" | "tile" | "glyphs")
- * ├── message - String
- * ├── source-id - optional String
- * └── tile-id - optional Object
- * ├── z Number (zoom level)
- * ├── x Number (x coordinate)
- * └── y Number (y coordinate)
- * ```
- */
- @property (nonatomic, class, readonly) NSString * MapLoadingError;
- /**
- * The `map` has entered the idle state. The `map` is in the idle state when there are no ongoing transitions
- * and the `map` has rendered all requested non-volatile tiles. The event will not be emitted if `setUserAnimationInProgress`
- * and / or `setGestureInProgress` is set to `true`.
- *
- * ``` text
- * Event data format (Object).
- * ```
- */
- @property (nonatomic, class, readonly) NSString * MapIdle;
- /**
- * The requested style data has been loaded. The `type` property defines what kind of style data has been loaded.
- * Event may be emitted synchronously, for example, when `setStyleJSON` is used to load style.
- *
- * Based on an event data `type` property value, following use-cases may be implemented:
- * - `style`: Style is parsed, style layer properties could be read and modified, style layers and sources could be
- * added or removed before rendering is started.
- * - `sprite`: Style's sprite sheet is parsed and it is possible to add or update images.
- * - `sources`: All sources defined by the style are loaded and their properties could be read and updated if needed.
- *
- * ``` text
- * Event data format (Object):
- * .
- * └── type - String ("style" | "sprite" | "sources")
- * ```
- */
- @property (nonatomic, class, readonly) NSString * StyleDataLoaded;
- /**
- * The requested style has been fully loaded, including the style, specified sprite and sources' metadata.
- *
- * ``` text
- * Event data format (Object).
- * ```
- *
- * Note: The style specified sprite would be marked as loaded even with sprite loading error (An error will be emitted via `MapLoadingError`).
- * Sprite loading error is not fatal and we don't want it to block the map rendering, thus this event will still be emitted if style and sources are fully loaded.
- *
- */
- @property (nonatomic, class, readonly) NSString * StyleLoaded;
- /**
- * A style has a missing image. This event is emitted when the `map` renders visible tiles and
- * one of the required images is missing in the sprite sheet. Subscriber has to provide the missing image
- * by calling `addStyleImage` method.
- *
- * ``` text
- * Event data format (Object):
- * .
- * └── id - String
- * ```
- */
- @property (nonatomic, class, readonly) NSString * StyleImageMissing;
- /**
- * An image added to the style is no longer needed and can be removed using `removeStyleImage` method.
- *
- * ``` text
- * Event data format (Object):
- * .
- * └── id - String
- * ```
- */
- @property (nonatomic, class, readonly) NSString * StyleImageRemoveUnused;
- /**
- * A source data has been loaded.
- * Event may be emitted synchronously in cases when source's metadata is available when source is added to the style.
- *
- * The `id` property defines the source id.
- *
- * The `type` property defines if source's metadata (e.g., TileJSON) or tile has been loaded. The property of `metadata`
- * value might be useful to identify when particular source's metadata is loaded, thus all source's properties are
- * readable and can be updated before `map` will start requesting data to be rendered.
- *
- * The `loaded` property will be set to `true` if all source's data required for visible viewport of the `map`, are loaded.
- * The `tile-id` property defines the tile id if the `type` field equals `tile`.
- *
- * ``` text
- * Event data format (Object):
- * .
- * ├── id - String
- * ├── type - String ("metadata" | "tile")
- * ├── loaded - optional Boolean
- * └── tile-id - optional Object
- * ├── z Number (zoom level)
- * ├── x Number (x coordinate)
- * └── y Number (y coordinate)
- * ```
- */
- @property (nonatomic, class, readonly) NSString * SourceDataLoaded;
- /**
- * The source has been added with `addStyleSource` method.
- * The event is emitted synchronously, therefore, it is possible to immediately
- * read added source's properties.
- *
- * ``` text
- * Event data format (Object):
- * .
- * └── id - String
- * ```
- */
- @property (nonatomic, class, readonly) NSString * SourceAdded;
- /**
- * The source has been removed with `removeStyleSource` method.
- * The event is emitted synchronously, thus, `getStyleSources` will be
- * in sync when the `observer` receives the notification.
- *
- * ``` text
- * Event data format (Object):
- * .
- * └── id - String
- * ```
- */
- @property (nonatomic, class, readonly) NSString * SourceRemoved;
- /**
- * The `map` started rendering a frame.
- *
- * Event data format (Object).
- */
- @property (nonatomic, class, readonly) NSString * RenderFrameStarted;
- /**
- * The `map` finished rendering a frame.
- * The `render-mode` property tells whether the `map` has all data (`full`) required to render the visible viewport.
- * The `needs-repaint` property provides information about ongoing transitions that trigger `map` repaint.
- * The `placement-changed` property tells if the symbol placement has been changed in the visible viewport.
- *
- * ``` text
- * Event data format (Object):
- * .
- * ├── render-mode - String ("partial" | "full")
- * ├── needs-repaint - Boolean
- * └── placement-changed - Boolean
- * ```
- */
- @property (nonatomic, class, readonly) NSString * RenderFrameFinished;
- /**
- * The camera has changed. This event is emitted whenever the visible viewport
- * changes due to the invocation of `setSize`, `setBounds` methods or when the camera
- * is modified by calling camera methods. The event is emitted synchronously,
- * so that an updated camera state can be fetched immediately.
- *
- * ``` text
- * Event data format (Object).
- * ```
- */
- @property (nonatomic, class, readonly) NSString * CameraChanged;
- /**
- * The `ResourceRequest` event allows client to observe resource requests made by a
- * `map` or `map snapshotter` objects.
- *
- * ``` text
- * Event data format (Object):
- * .
- * ├── data-source - String ("resource-loader" | "network" | "database" | "asset" | "file-system")
- * ├── request - Object
- * │ ├── url - String
- * │ ├── kind - String ("unknown" | "style" | "source" | "tile" | "glyphs" | "sprite-image" | "sprite-json" | "image")
- * │ ├── priority - String ("regular" | "low")
- * │ └── loading-method - Array ["cache" | "network"]
- * ├── response - optional Object
- * │ ├── no-content - Boolean
- * │ ├── not-modified - Boolean
- * │ ├── must-revalidate - Boolean
- * │ ├── source - String ("network" | "cache" | "tile-store" | "local-file")
- * │ ├── size - Number (size in bytes)
- * │ ├── modified - optional String, rfc1123 timestamp
- * │ ├── expires - optional String, rfc1123 timestamp
- * │ ├── etag - optional String
- * │ └── error - optional Object
- * │ ├── reason - String ("success" | "not-found" | "server" | "connection" | "rate-limit" | "in-offline-mode" | "other")
- * │ └── message - String
- * └── cancelled - Boolean
- * ```
- */
- @property (nonatomic, class, readonly) NSString * ResourceRequest;
- @end
|