Configuration

public struct Configuration

The configuration used to set up Navigation SDK to work in online mode.

  • Simple configuration used to set up Navigation SDK to work in online mode.

    Important

    This is a Public Preview API. It may be changed or removed at any time.

    Declaration

    Swift

    public init(
        navigationTileStore: NavigationTileStore,
        locationProvider: LocationProvider,
        routePlanner: RoutePlanner,
        vehicleProvider: VehicleProvider = VehicleProviderFactory.create(),
        betterProposalAcceptanceMode: BetterProposalAcceptanceMode = .automatic,
        deviationReplanningMode: DeviationReplanningMode = .automatic
    )

    Parameters

    navigationTileStore

    Tile data store based on an online map.

    locationProvider

    Informs navigation of location updates.

    routePlanner

    Used to update the active TomTomSDKNavigationEngines/RoutePlan or to replan after deviation.

    vehicleProvider

    Enables navigation to listen to the changes of the vehicle state. If it’s not provided, an instance created by TomTomSDKVehicle/VehicleProviderFactory/create(vehicle:observationHandler:) is used.

    betterProposalAcceptanceMode

    Specifies how better route proposals are applied during navigation. If it’s not provided, the mode is set to TomTomSDKNavigationEngines/BetterProposalAcceptanceMode/automatic.

    deviationReplanningMode

    Defines whether navigation should try to replan the active TomTomSDKNavigationEngines/RoutePlan after deviation. If it’s not provided, the deviation replanning mode is set to TomTomSDKNavigationEngines/DeviationReplanningMode/automatic.

  • Advanced configuration used to set up Navigation SDK to work in online mode.

    Declaration

    Swift

    public init(
        navigationTileStore: NavigationTileStore,
        locationProvider: LocationProvider,
        routePlanner: RoutePlanner,
        vehicleProvider: VehicleProvider = VehicleProviderFactory.create(),
        betterProposalAcceptanceMode: BetterProposalAcceptanceMode = .automatic,
        deviationReplanningMode: DeviationReplanningMode = .automatic,
        replanningRetryPolicy: ReplanningRetryPolicy = ReplanningRetryPolicyFactory.create(),
        routeReplanningEngine: RouteReplanningEngine? = nil,
        dataStoreMaintenanceEngine: DataStoreMaintenanceEngine? = nil,
        guidanceEngine: GuidanceEngine? = nil,
        horizonEngine: HorizonEngine? = nil,
        mapMatchingEngine: MapMatchingEngine? = nil,
        routeTrackingEngine: RouteTrackingEngine? = nil,
        routeProgressEngine: RouteProgressEngine? = nil,
        arrivalDetectionEngine: ArrivalDetectionEngine? = nil,
        safetyLocationsConfiguration: SafetyLocationsConfiguration? = nil,
        hazardsConfiguration: HazardsConfiguration? = nil
    )

    Parameters

    navigationTileStore

    Tile data store based on an online map.

    locationProvider

    Informs navigation of location updates.

    routePlanner

    Used by TomTomSDKNavigationEngines/RouteReplanningEngine to update the active TomTomSDKNavigationEngines/RoutePlan or to replan after a deviation. If a custom TomTomSDKNavigationEngines/RouteReplanningEngine is specified in the configuration, this parameter will be ignored.

    vehicleProvider

    Enables navigation to listen to the changes of the vehicle state. If it’s not provided, an instance created by TomTomSDKVehicle/VehicleProviderFactory/create(vehicle:observationHandler:) is used.

    betterProposalAcceptanceMode

    Specifies how better route proposals are applied during navigation. If it’s not provided, the mode is set to TomTomSDKNavigationEngines/BetterProposalAcceptanceMode/automatic.

    deviationReplanningMode

    Defines whether navigation should try to replan the active TomTomSDKNavigationEngines/RoutePlan after deviation. If it’s not provided, the deviation replanning mode is set to TomTomSDKNavigationEngines/DeviationReplanningMode/automatic.

    replanningRetryPolicy

    Specifies how to handle requests which failed during replanning of a TomTomSDKRoute/Route. If it’s not provided, an instance of TomTomSDKNavigation/ReplanningRetryPolicyFactory/create(maxRetryDelay:) is used.

    routeReplanningEngine

    Engine responsible for replanning a route during navigation. nil by default.

    dataStoreMaintenanceEngine

    Engine responsible for instantiating updates of the data store. nil by default.

    guidanceEngine

    Engine responsible for generating guidance instructions of the upcoming road maneuvers. nil by default.

    horizonEngine

    Engine responsible for providing location context data extending beyond the driver’s visible horizon. nil by default.

    mapMatchingEngine

    Engine responsible for improving position accuracy by attempting to match it to the map or the route. nil by default.

    routeTrackingEngine

    Engine responsible for detecting whether the routes are being followed or not. nil by default.

    routeProgressEngine

    Engine responsible for determining the progress made along the current route. nil by default.

    arrivalDetectionEngine

    Engine responsible for deciding if the route’s destination has been reached. nil by default.

    safetyLocationsConfiguration

    Configuration parameters for safety location data sources. If no configuration is specified, the horizon will not contain any safety location elements (TomTomSDKNavigationEngines/SafetyLocationElement). If a custom TomTomSDKNavigationEngines/HorizonEngine is specified in the configuration, this parameter will be ignored.

    hazardsConfiguration

    Configuration parameters for hazard data sources. If no configuration is specified, the horizon will not contain any hazard elements (TomTomSDKNavigationEngines/HazardElement). If a custom TomTomSDKNavigationEngines/HorizonEngine is specified in the configuration, this parameter will be ignored.