DefaultTomTomNavigation
@available(*, deprecated, message: "This API is deprecated and will be removed with the next major release.")
public class DefaultTomTomNavigation : TomTomNavigation
The DefaultTomTomNavigation object defines the functionality of the navigation.
-
init(locationProvider:dataSourceSelectionEngine: dataStoreMaintenanceEngine: mapMatchingEngine: routeProgressEngine: guidanceEngine: routeTrackingEngine: arrivalDetectionEngine: locationContextProviderEngine: horizonEngine: routeReplanner: routeReplanningEngine: routeProjectionEngine: routeReplanningRetryPolicy: routeDeviationReplanningRetryPolicy: betterProposalAcceptanceMode: deviationReplanningMode: vehicleProvider: usePredictions: ) Initializer.
Declaration
Swift
public init( locationProvider: LocationProvider, dataSourceSelectionEngine: DataSourceSelectionEngine?, dataStoreMaintenanceEngine: DataStoreMaintenanceEngine?, mapMatchingEngine: MapMatchingEngine, routeProgressEngine: RouteProgressEngine, guidanceEngine: GuidanceEngine, routeTrackingEngine: RouteTrackingEngine?, arrivalDetectionEngine: ArrivalDetectionEngine, locationContextProviderEngine: LocationContextProviderEngine, horizonEngine: HorizonEngine?, routeReplanner: TomTomSDKRouteReplanner.RouteReplanner, routeReplanningEngine: RouteReplanningEngine, routeProjectionEngine: RouteProjectionEngine?, routeReplanningRetryPolicy: ReplanningRetryPolicy, routeDeviationReplanningRetryPolicy: ReplanningRetryPolicy, betterProposalAcceptanceMode: BetterProposalAcceptanceMode, deviationReplanningMode: DeviationReplanningMode, vehicleProvider: VehicleProvider, usePredictions: Bool ) -
init(locationProvider:dataSourceSelectionEngine: dataStoreMaintenanceEngine: mapMatchingEngine: routeProgressEngine: guidanceEngine: routeTrackingEngine: arrivalDetectionEngine: locationContextProviderEngine: horizonEngine: routeReplanner: routeReplanningEngine: routeProjectionEngine: routeReplanningRetryPolicy: routeDeviationReplanningRetryPolicy: betterProposalAcceptanceMode: deviationReplanningMode: vehicleProvider: ) Convenience initializer.
Declaration
Swift
public convenience init( locationProvider: LocationProvider, dataSourceSelectionEngine: DataSourceSelectionEngine?, dataStoreMaintenanceEngine: DataStoreMaintenanceEngine?, mapMatchingEngine: MapMatchingEngine, routeProgressEngine: RouteProgressEngine, guidanceEngine: GuidanceEngine, routeTrackingEngine: RouteTrackingEngine?, arrivalDetectionEngine: ArrivalDetectionEngine, locationContextProviderEngine: LocationContextProviderEngine, horizonEngine: HorizonEngine?, routeReplanner: TomTomSDKRouteReplanner.RouteReplanner, routeReplanningEngine: RouteReplanningEngine, routeProjectionEngine: RouteProjectionEngine?, routeReplanningRetryPolicy: ReplanningRetryPolicy, routeDeviationReplanningRetryPolicy: ReplanningRetryPolicy, betterProposalAcceptanceMode: BetterProposalAcceptanceMode, deviationReplanningMode: DeviationReplanningMode, vehicleProvider: VehicleProvider )
-
Provides access to current registered engines and allows updating them.
Declaration
Swift
public var navigationEngineRegistry: NavigationEngineRegistry -
The
VehicleProviderused by theNavigationfor providing vehicle updates to the navigation.Declaration
Swift
public let vehicleProvider: VehicleProvider -
The unit system used by the SDK.
Propagated to other components (e.g.,
GuidanceEngine) withNavigationSnapshot.If the
UnitSystemTypeinstance is dynamic, then unit system is resolved based on current location country:- “USA” and “PRI” -
SpecificUnitSystem/imperialFeet. - “GBR” -
SpecificUnitSystem/imperialYards. - Other countries -
SpecificUnitSystem/metric.
Declaration
Swift
public var unitSystem: UnitSystemType { get set } - “USA” and “PRI” -
-
The language used by Navigation SDK, stored as a Locale. Propagated to other components (e.g.
GuidanceEngine) withNavigationSnapshot.Note
Defaults to current system locale.Declaration
Swift
public var language: Locale { get set } -
Provides a
CLLocationfor map matching.Declaration
Swift
public var mapMatchedLocationProvider: LocationProvider { get } -
Provides a
CLLocationfor raw GPS position.Declaration
Swift
public var locationProvider: LocationProvider { get set } -
A publishable variable that can be used to receive the same events that the delegate presents
Declaration
Swift
public var eventPublisher: AnyPublisher<NavigationEvent, Never> { get } -
Adds a
NavigationObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addNavigationObserver(_ observer: NavigationObserver)Parameters
observerA class that can handle all navigation events except for error events.
-
Removes the
NavigationObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeNavigationObserver(_ observer: NavigationObserver)Parameters
observerA class that can handle all navigation events except for error events.
-
Adds a
NavigationStartObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addStartObserver(_ observer: NavigationStartObserver)Parameters
observerA class that can handle navigation start events.
-
Removes the
NavigationStartObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeStartObserver(_ observer: NavigationStartObserver)Parameters
observerA class that can handle navigation start events.
-
Adds a
NavigationMapMatchingObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addMapMatchingObserver(_ observer: NavigationMapMatchingObserver)Parameters
observerA class that can handle navigation map matching events.
-
Removes the
NavigationMapMatchingObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeMapMatchingObserver(_ observer: NavigationMapMatchingObserver)Parameters
observerA class that can handle navigation map matching events.
-
Adds a
NavigationProgressObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addProgressObserver(_ observer: NavigationProgressObserver)Parameters
observerA class that can handle navigation start events.
-
Removes the
NavigationProgressObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeProgressObserver(_ observer: NavigationProgressObserver)Parameters
observerA class that can handle navigation progress events.
-
Adds a
NavigationRouteObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addRouteObserver(_ observer: NavigationRouteObserver)Parameters
observerA class that can handle navigation route events.
-
Removes the
NavigationRouteObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeRouteObserver(_ observer: NavigationRouteObserver)Parameters
observerA class that can handle navigation route events.
-
Adds a
NavigationGuidanceObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addGuidanceObserver(_ observer: NavigationGuidanceObserver)Parameters
observerA class that can handle navigation guidance events.
-
Removes the
NavigationGuidanceObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeGuidanceObserver(_ observer: NavigationGuidanceObserver)Parameters
observerA class that can handle navigation guidance events.
-
Adds a
NavigationLocationContextObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addLocationContextObserver(_ observer: NavigationLocationContextObserver)Parameters
observerA class that can handle navigation location context events.
-
Removes the
NavigationLocationContextObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeLocationContextObserver(_ observer: NavigationLocationContextObserver)Parameters
observerA class that can handle navigation location context events.
-
Adds a
NavigationArrivalObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addArrivalObserver(_ observer: NavigationArrivalObserver)Parameters
observerA class that can handle navigation arrival events.
-
Removes the
NavigationArrivalObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeArrivalObserver(_ observer: NavigationArrivalObserver)Parameters
observerA class that can handle navigation arrival events.
-
Adds a
NavigationHorizonObservertoNavigation. It is expected to be called on the main queue.Throws
HorizonError.observerAlreadyRegisteredif thisNavigationHorizonObserverobject is already registered for horizon updates.HorizonError.optionsAlreadyRegisteredif theseHorizonOptionsare already being observed.Declaration
Swift
public func addHorizonObserver(_ observer: NavigationHorizonObserver, options: HorizonOptions) throwsParameters
observerA class that can handle navigation horizon events. To register a new observer with the same options, the previous one must be removed first. To register different options with the same observer, the previous one must be removed first.
optionsThe options that define the extent of the paths on the horizon and which map attributes to collect.
-
Removes the
NavigationHorizonObserverfromNavigation. This method should be called on the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeHorizonObserver(_ observer: NavigationHorizonObserver) throwsParameters
observerA class that can handle navigation trip events.
-
Adds a
NavigationRouteTrackingStateUpdateObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
public func addRouteTrackingStateUpdateObserver(_ observer: NavigationRouteTrackingStateUpdateObserver)Parameters
observerA class that can handle navigation follow the route events.
-
Removes the
NavigationRouteTrackingStateUpdateObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
public func removeRouteTrackingStateUpdateObserver(_ observer: NavigationRouteTrackingStateUpdateObserver)Parameters
observerA class that can handle navigation follow the route events.
-
Adds a
NavigationErrorObservertoNavigation. Keeps a weak pointer to the observer. It is expected to be called on the main queue.Declaration
Swift
public func addErrorObserver(_ observer: NavigationErrorObserver)Parameters
observerA class that can handle navigation error events.
-
Removes the
NavigationErrorObserverfromNavigation. There is no need to call this function from the deinit of the observer. It is expected to be called on the main queue.Declaration
Swift
public func removeErrorObserver(_ observer: NavigationErrorObserver)Parameters
observerA class that can handle navigation error events.
-
Starts navigation with the default routing.
Declaration
Swift
public func start() -
Starts navigation with a navigation plan.
Warning
NavigationOptions.alternativeRoutePlans is not used as multi-route navigation is not supported.Declaration
Swift
public func start(navigationOptions: NavigationOptions)Parameters
navigationOptionsNavigationOptionsto be used during the navigation session. -
Updates the route plan during ongoing navigation.
Declaration
Swift
public func update(navigationOptions: NavigationOptions)Parameters
navigationOptionsNavigationOptionsto be used during the navigation session. -
Accept the better route proposed and update the route plan during navigation.
Declaration
Swift
public func acceptBetterProposal() -
Manually marks the waypoint as visited. This action requires that the waypoint was previously announced as reached via
NavigationArrivalObserverand that it has not been announced as visited viaNavigationArrivalObserver. The navigation service marks the waypoint as visited, andNavigationArrivalObserveris notified.Throws
NavigationProcessingError.nextWaypointErrorif calling requirements are not met.Declaration
Swift
public func markWaypointAsVisited(waypoint: RouteStop) throwsParameters
waypointThe waypoint to mark as visited.
-
Stops the current navigation.
Declaration
Swift
public func stop()
DefaultTomTomNavigation Class Reference