A RouteLeg object defines a single leg of a route between two waypoints.
If the overall route has only two waypoints, it has a single RouteLeg object that covers the entire route.
The route leg object includes information about the leg, such as its name, distance, and expected travel time.
Depending on the criteria used to calculate the route, the route leg object may also include detailed turn-by-turn instructions.
This class contains all progress information at any given time during a navigation session.
This progress includes information for the current route, leg and step the user is traversing along.
With every new valid location update, a new route progress will be generated using the latest information.
A RouteStep object represents a single distinct maneuver along a route and the approach to the next maneuver.
The route step object corresponds to a single instruction the user must follow to complete a portion of the route.
For example, a step might require the user to turn then follow a road.