public enum Feature : UInt32, CaseIterable, Codable

Defines a list of possible map data features that can be enabled / disabled. See SDKOptions.layerConfiguration

Following features are enabled by default:

All other features are disabled, by default.

Each feature enables a set of OCM layer groups to be downloaded by sdk.maploader.MapDownloader and prefetched by sdk.prefetcher.RoutePrefetcher. Detailed description of each layer group available in Developer Portal

Following features are enabled by default for implicit prefetch:

Implicit prefetch downloads map content for enabled features within a view port currently showed by MapView.

Feature might have more than one layer group predefined to enable full experience. For example, LayerConfiguration.Feature.navigation requires routing attributes, visual-friendly street names, maneuvers data and ability to interconnect those data sets.

The same map data is useful for different features, for example LayerConfiguration.Feature.rendering uses Places data to present it on the MapView, while LayerConfiguration.Feature.offlineSearch uses the same data to enable discoverability by name or category. Hence, features might have overlapping sets of enabled layer groups.

  • Additional rendering details like buildings. Only used for the MapView. When not set, the data will be excluded when downloading offline regions or prefetching areas that contain such data. However, during online usage such data may still be downloaded into the cache and shown. Increase of 11-16% is to be expected for map size, in case of enabling this feature.

    Feature enables following OCM layer groups:

    • “detailed_rendering”

    Declaration

    Swift

    case detailRendering
  • Map data that is used for map matching during navigation. When not set, navigation may not work properly when being used offline. Increase of 5-7% is to be expected for map size, but pay attention, that this feature is depended on other layer groups (e.g. routing), so, in total is takes about 21-29 % of map size.

    Feature enables following OCM layer groups:

    • “interop”
    • “rendering”
    • “navigation”
    • “routing”

    Declaration

    Swift

    case navigation
  • Map data that is used to search. When not set, the OfflineSearchEngine may not work properly when being used offline.

    Feature enables following OCM layer groups:

    • “rendering”
    • “routing”
    • “search”

    Declaration

    Swift

    case offlineSearch
  • Map data that is used to calculate routes. When not set, the OfflineRoutingEngine may not work properly when being used offline. Increase of 12-16.5% is to be expected for map size, but pay attention, that this feature is depended on other layer groups (e.g. navigation), so, in total is takes about 33-45 % of map size.

    Feature enables following OCM layer groups:

    • “rendering”
    • “navigation”
    • “routing”
    • “interop”
    • “car_offline_routing”

    Declaration

    Swift

    case offlineRouting
  • A basic set of rendering features such as carto POIs. Increase of 16-22% is to be expected for map size, but pay attention, that this feature is depended on other layer groups (e.g. navigation), so, in total is takes about 21-29 % of map size.

    Feature enables following OCM layer groups:

    • “rendering”

    Declaration

    Swift

    case rendering
  • Map data that is used to calculate truck routes. When not set, the OfflineRoutingEngine may not work properly when being used to calculate truck routes. It is also used for map matching during truck navigation. When not set, truck navigation may not work properly when being used offline. Online truck navigation will still work when the device has an online connection. Increase of 0.7-1.1% is to be expected for map size, in case of enabling this feature.

    Feature enables following OCM layer groups:

    • “truck”
    • “long_truck_offline_routing”
    • “truck_offline_routing”

    Declaration

    Swift

    case truck
  • Map data that is used to render textured 3D landmarks. When not set, the data will be excluded when downloading offline regions or prefetching areas that contain such data. When the landmarks layer is set to be visible for a MapScene, 3D landmarks will still be visible during online usage. Increase of 2-3% is to be expected for map size, in case of enabling this feature. Disabled by default.

    Feature enables following OCM layer groups:

    • “landmarks”

    Declaration

    Swift

    case landmarks3d
  • Map data that provides traffic broadcast functionality using RDS-TMC format. It should be used when there is no internet connection, so that the routing module can utilize traffic data coming over the radio channel to build a route in the offline mode. Feature enables following OCM layer groups:

    • “traffic”

    Declaration

    Swift

    case traffic
  • Offline map data for EVChargingStation.

    Feature enables following OCM layer groups:

    • “ev_charging_station_rendering_premium”
    • “ev_charging_station_search_premium”

    Declaration

    Swift

    case ev
  • Enables truck related attributes to be returned by Offline Search engine. Feature enables following OCM layer groups:

    • “truck_service_premium”

    Declaration

    Swift

    case truckServiceAttributes
  • Enables fuel attributes to be returned by Offline Search engine.

    Feature enables following OCM layer groups:

    • “fueling_station_premium”

    Declaration

    Swift

    case fuelStationAttributes
  • Map data that is used to calculate bus routes. When not set, the OfflineRoutingEngine may not be able to calculate routes with BusOptions.

    Feature enables following OCM layer groups:

    • “bus_offline_routing”

    Declaration

    Swift

    case offlineBusRouting
  • Map data that provides junction view images and assets with aspect ratio 3x4. This will also provide common assets that do not depend on specific aspect ratio. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_view_file_3x4”
    • “junction_view_asset_3x4”
    • “junction_view_asset_common”

    Declaration

    Swift

    case junctionView3x4
  • Map data that provides junction view images and assets with aspect ratio 16x9. This will also provide common assets that do not depend on specific aspect ratio. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_view_file_16x9”
    • “junction_view_asset_16x9”
    • “junction_view_asset_common”

    Declaration

    Swift

    case junctionView16x9
  • Map data that provides junction sign images with aspect ratio 3x4. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_sign_file_3x4”

    Declaration

    Swift

    case junctionSign3x4
  • Map data that provides junction sign images with aspect ratio 3x5. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_sign_file_3x5”

    Declaration

    Swift

    case junctionSign3x5
  • Map data that provides junction sign images with aspect ratio 4x3. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_sign_file_4x3”

    Declaration

    Swift

    case junctionSign4x3
  • Map data that provides junction sign images with aspect ratio 5x3. By default this feature is disabled. Feature enables following OCM layer groups:

    • “junction_sign_file_5x3”

    Declaration

    Swift

    case junctionSign5x3
  • Map data that provides junction sign images with aspect ratio 16x9. By default this feature is disabled.

    Feature enables following OCM layer groups:

    • “junction_sign_file_16x9”

    Declaration

    Swift

    case junctionSign16x9
  • Map data that provides topography information. By default this feature is disabled. Feature enables following OCM layer groups:

    • “terrain”

    Declaration

    Swift

    case terrain
  • Map data which provides ADAS information which includes slope, elevation and curvature information. By default this feature is disabled. Feature enables following OCM layer groups:

    • “adas”

    Declaration

    Swift

    case adas
  • Map data which provides information about the parts of foreign segments in a tile, where a foreign segment is a segment that is stored in another tile but intersects the current tile. By default this feature is disabled. Feature enables following OCM layer groups:

    • “ehorizon”

    Declaration

    Swift

    case ehorizon
  • Map data that provides traffic broadcast functionality using RDS-TMC format. It should be used when there is no internet connection, so that the routing module can utilize traffic data coming over the radio channel to build a route in the offline mode. Feature enables following OCM layer groups:

    • “traffic”

    Declaration

    Swift

    case rdsTraffic
  • Declaration

    Swift

    public static var allCases: [Feature] { get }
  • A type that can be used as a key for encoding and decoding.

    See more

    Declaration

    Swift

    public enum Key : CodingKey
  • The error which is thrown if initialisation with decoder has failed

    See more

    Declaration

    Swift

    public enum CodingError : Error
  • Creates a new instance by decoding from the given decoder

    Declaration

    Swift

    public init(from decoder: Decoder) throws
  • Encodes this value into the given encoder

    Declaration

    Swift

    public func encode(to encoder: Encoder) throws