Configuration

public struct Configuration

The configuration used to set up Navigation SDK to work in hybrid mode. At least one of the following properties or combinations of properties must be specified:

  • onlineRoutePlanner and offlineRoutePlanner
  • routeReplanner
  • routeReplanningEngine

At least one of the following properties must be specified:

  • hybridNavigationDataStore
  • apiKey
  • navigationTileStore

At least one of the following properties must be specified:

  • hybridNavigationDataStore
  • ndsStore

Lifecycle

  • Creates a configuration to set up the Navigation SDK for hybrid mode.

    Declaration

    Swift

    public init(
        locationProvider: LocationProvider,
        apiKey: String? = nil,
        navigationTileStore: NavigationTileStore? = nil,
        ndsStore: NDSStore? = nil,
        hybridNavigationDataStore: HybridNavigationDataStore? = nil,
        dataStoreMaintenanceEngine: DataStoreMaintenanceEngine? = nil,
        dataSourceSelectionEngine: DataSourceSelectionEngine? = nil,
        mapMatchingEngine: MapMatchingEngine? = nil,
        locationContextProviderEngine: LocationContextProviderEngine? = nil,
        horizonEngine: HorizonEngine? = nil,
        routeTrackingEngine: RouteTrackingEngine? = nil,
        routeProjectionEngine: RouteProjectionEngine? = nil,
        onlineRoutePlanner: TomTomSDKRoutePlanner.RoutePlanner? = nil,
        offlineRoutePlanner: TomTomSDKRoutePlanner.RoutePlanner? = nil,
        routeReplanner: TomTomSDKRouteReplanner.RouteReplanner? = nil,
        guidanceEngine: GuidanceEngine = TomTomGuidanceEngine(),
        arrivalDetectionEngine: ArrivalDetectionEngine = TomTomArrivalDetectionEngine(),
        routeProgressEngine: RouteProgressEngine = StandaloneRouteProgressEngine(),
        routeReplanningEngine: RouteReplanningEngine = TomTomRouteReplanningEngine(),
        routeReplanningRetryPolicy: ReplanningRetryPolicy = TomTomReplanningRetryPolicy(),
        routeDeviationReplanningRetryPolicy: ReplanningRetryPolicy = TomTomReplanningRetryPolicy(forDeviation: true),
        betterProposalAcceptanceMode: BetterProposalAcceptanceMode = .default,
        deviationReplanningMode: DeviationReplanningMode = .default,
        vehicleProvider: VehicleProvider = DefaultVehicleProvider()
    )

    Parameters

    locationProvider

    The LocationProvider to be used during navigation.

    apiKey

    API key needed for navigation.

    navigationTileStore

    Online data store used during initialization of navigation engines.

    ndsStore

    Offline data store used during initialization of navigation engines.

    hybridNavigationDataStore

    Hybrid data store used during the initialization of navigation engines. If it is provided, there is no need for navigationTileStore and ndsStore.

    dataStoreMaintenanceEngine

    Engine that updates the data store. If not provided, an instance created by DataStoreMaintenanceEngineFactory is used.

    dataSourceSelectionEngine

    The [DataStoreSelectionEngine] that is to be used during navigation. If not provided, an instance of DefaultDataStoreSelectionEngine is used.

    mapMatchingEngine

    The default MapMatchingEngine during navigation. If not provided, an instance created by HybridMapMatchingEngineFactory is used.

    locationContextProviderEngine

    The default LocationContextProviderEngine during navigation. If not provided, an instance created by HybridLocationContextProviderEngineFactory is used.

    horizonEngine

    The default HorizonEngine during navigation.

    routeTrackingEngine

    The default RouteTrackingEngine during navigation. If not provided, an instance of DefaultRouteTrackingEngine is used.

    routeProjectionEngine

    The default RouteProjectionEngine during navigation. If not provided, an instance created by HybridRouteProjectionEngineFactory is used.

    onlineRoutePlanner

    Used for online route replanning during instantiation of a default RouteReplanner.

    offlineRoutePlanner

    Used for offline route replanning while instantiating a default RouteReplanner.

    routeReplanner

    Used while instantiating a default RouteReplanningEngine.

    guidanceEngine

    The default GuidanceEngine during navigation. If not provided, an instance of TomTomGuidanceEngine is used.

    arrivalDetectionEngine

    The default ArrivalDetectionEngine during navigation. If not provided, an instance of TomTomArrivalDetectionEngine is used.

    routeProgressEngine

    The default [RouteProgressEngine] during navigation. If not provided, an instance of StandaloneRouteProgressEngine is used.

    routeReplanningEngine

    The default RouteReplanningEngine during navigation. If not provided, an instance of TomTomRouteReplanningEngine is used.

    routeReplanningRetryPolicy

    The default ReplanningRetryPolicy during navigation. If not provided, an instance of TomTomReplanningRetryPolicy is used.

    routeDeviationReplanningRetryPolicy

    The default ReplanningRetryPolicy during navigation. If not provided, an instance of TomTomReplanningRetryPolicy is used.

    betterProposalAcceptanceMode

    The default BetterProposalAcceptanceMode during navigation. If not provided, the mode is set to BetterProposalAcceptanceMode.Automatic.

    deviationReplanningMode

    Defines whether RouteReplanningEngine should try replanning the active RoutePlan after deviation. If not provided, the deviation replanning mode is set to DeviationReplanningMode.Automatic.

    vehicleProvider

    The default VehicleProvider during navigation. If not provided, an instance of DefaultVehicleProvider is used.