Maps SDK for C++ 1.0.0
Loading...
Searching...
No Matches
gem::RoutePreferences Class Reference

RoutePreferences object. More...

Inheritance diagram for gem::RoutePreferences:
Collaboration diagram for gem::RoutePreferences:

Public Member Functions

 RoutePreferences (const RoutePreferences &)=default
 Default copy constructor.
 RoutePreferences (RoutePreferences &&)=default
 Default move constructor noexcept is deduced.
RoutePreferences & operator= (const RoutePreferences &)=default
 Default copy assignment.
RoutePreferences & operator= (RoutePreferences &&)=default
 Default move assignment noexcept is deduced.
bool operator== (const RoutePreferences &prefs) noexcept
 Comparison operator.
bool getAvoidMotorways () const noexcept
 Get avoid motorways status.
RoutePreferences & setAvoidMotorways (bool b) noexcept
 Set the avoid motorways flag.
bool getAvoidTollRoads () const noexcept
 Test if avoid toll roads is set.
RoutePreferences & setAvoidTollRoads (bool b) noexcept
 Set the avoid toll roads flag.
bool getAvoidFerries () const noexcept
 Test if avoid ferries is set.
RoutePreferences & setAvoidFerries (bool avoidFerries) noexcept
 Set the avoid ferries flag.
bool getAvoidTurnAroundInstruction () const noexcept
 Test if avoid turnaround instruction flag is set.
RoutePreferences & setAvoidTurnAroundInstruction (bool avoidUTurn) noexcept
 Set the avoid turnaround instruction flag.
bool getAvoidUnpavedRoads () const noexcept
 Test if avoid unpaved roads is set.
RoutePreferences & setAvoidUnpavedRoads (bool avoid) noexcept
 Set the avoid unpaved roads flag.
bool getAvoidCarpoolLanes () const noexcept
 Test if avoid carpool lanes is set.
RoutePreferences & setAvoidCarpoolLanes (bool avoid) noexcept
 Set the avoid carpool lanes flag.
ERouteResultType getRouteResultType () const noexcept
 Get the route result type.
ERouteType getRouteType () const noexcept
 Get the route type.
RoutePreferences & setRouteType (ERouteType rt) noexcept
 Set the route type.
ERouteTransportMode getTransportMode () const noexcept
 Get transport mode.
RoutePreferences & setTransportMode (ERouteTransportMode tm) noexcept
 Set the transport mode.
EPTAlgorithmType getAlgorithmType () const noexcept
 Get algorithm type.
RoutePreferences & setAlgorithmType (EPTAlgorithmType ptat) noexcept
 Set algorithm type.
EPTSortingStrategy getSortingStrategy () const noexcept
 Get sorting strategy.
RoutePreferences & setSortingStrategy (EPTSortingStrategy ptss) noexcept
 Set sorting strategy.
Time getTimestamp () const noexcept
 Get timestamp.
RoutePreferences & setTimestamp (const Time &time) noexcept
 Set timestamp.
RoutePreferences & setAutomaticTimestamp () noexcept
 Set timestamp to automatic mode.
bool isAutomaticTimestamp () const noexcept
 Get timestamp automatic mode.
bool getUseWheelchair () const noexcept
 Get option toggle to use wheelchair.
RoutePreferences & setUseWheelchair (bool b) noexcept
 Set option toggle to use wheelchair.
bool getUseBikes () const noexcept
 Get option toggle to use bike.
RoutePreferences & setUseBikes (bool b) noexcept
 Set option toggle to use bike.
unsigned int getMinimumTransferTimeInMinutes () const noexcept
 Get minimum transfer time in minutes.
RoutePreferences & setMinimumTransferTimeInMinutes (unsigned int minutes) noexcept
 Set minimum transfer time in minutes.
unsigned int getMaximumTransferTimeInMinutes () const noexcept
 Get maximum transfer time in minutes.
RoutePreferences & setMaximumTransferTimeInMinutes (unsigned int minutes) noexcept
 Set maximum transfer time in minutes.
unsigned int getMaximumWalkDistance () const noexcept
 Get maximum walk distance.
RoutePreferences & setMaximumWalkDistance (unsigned int distmeters) noexcept
 Set maximum walk distance.
ETrafficAvoidance getAvoidTraffic () const noexcept
 Get route calculation traffic avoidance method.
RoutePreferences & setAvoidTraffic (bool b) noexcept
 Enable/disable traffic information usage for route calculation.
RoutePreferences & setAvoidTraffic (ETrafficAvoidance avoid) noexcept
 Set route calculation traffic avoidance method.
RoutePreferences & setAvoidGeofenceAreas (const StringList &areas) noexcept
 Set avoidance of the given geofence area ids.
const StringListRef getAvoidGeofenceAreas () const noexcept
 Get the geofence area avoidance ids list.
RoutePreferences & setAvoidGeofenceAntiAreas (const StringList &areas) noexcept
 Set avoidance of the given geofence anti area ids.
const StringList getAvoidGeofenceAntiAreas () const
 Get the geofence anti area avoidance ids list.
bool getAlternativeRoutesBalancedSorting () const noexcept
RoutePreferences & setAlternativeRoutesBalancedSorting (bool b) noexcept
 Enable/disable alternative routes balanced sorting.
int getRouteTypePreferences () const noexcept
 Get route type preferences.
RoutePreferences & setRouteTypePreferences (int pref) noexcept
 Set route type preferences, for example, setRouteTypePreferences(EPTRouteTypePreference::eRTP_Bus | eRTP::eRTP_Underground).
const IntListRef getRouteGroupIdsEarlierLater () const noexcept
 Get group ids for earlier/later trip.
RoutePreferences & setRouteGroupIdsEarlierLater (const IntList &list) noexcept
 Set group ids for earlier/later trip.
RoutePreferences & setBuildTerrainProfile (bool enable, float minVariation=-1) noexcept
 Set terrain profile build.
bool getBuildTerrainProfile () const noexcept
 Get terrain profile build activation.
float getBuildTerrainProfileMinVariation () const noexcept
 Get terrain profile build minimum elevation variation to be registered for total up / total down statistics.
EBikeProfile getBikeProfile () const noexcept
 Get selected bike profile.
const ElectricBikeProfilegetEBikeProfile () const noexcept
 Get selected e-bike profile.
ElectricBikeProfile getDefaultEBikeProfile () const noexcept
 Get default e-bike profile.
RoutePreferences & setBikeProfile (EBikeProfile profile, const ElectricBikeProfile &eprofile=ElectricBikeProfile(EBP_None)) noexcept
 Set bike profile.
float getAvoidBikingHillFactor () const noexcept
 Get avoid biking hill factor.
RoutePreferences & setAvoidBikingHillFactor (float factor) noexcept
 Set avoid biking hill factor.
float getFitnessFactor () const noexcept
 Get bike & pedestrian routing fitness factor.
RoutePreferences & setFitnessFactor (float factor) noexcept
 Set the bike & pedestrian routing fitness factor.
EPedestrianProfile getPedestrianProfile () const noexcept
 Get pedestrian profile.
RoutePreferences & setPedestrianProfile (EPedestrianProfile profile) noexcept
 Set pedestrian profile.
const CarProfilegetCarProfile () const noexcept
 Get car profile.
RoutePreferences & setCarProfile (const CarProfile &profile) noexcept
 Set car profile.
const TruckProfilegetTruckProfile () const noexcept
 Get truck profile.
RoutePreferences & setTruckProfile (const TruckProfile &profile) noexcept
 Set truck profile.
const EVProfilegetEVProfile () const noexcept
 Get EV profile.
RoutePreferences & setEVProfile (const EVProfile &profile) noexcept
 Set EV profile.
RoutePreferences & setRouteRanges (const IntList &list, int quality) noexcept
 Set route ranges list.
const IntListRef getRouteRanges () const noexcept
 Get route ranges list.
int getRouteRangesQuality () const noexcept
 Get route range quality.
RoutePreferences & setRoundtripParameters (uint32_t range, ERangeType rangeType, uint32_t randomSeed=0) noexcept
 Set parameters for roundtrip feature.
uint32_t getRoundtripRange () const
 Get roundtrip range (see setRoundtripParameters for explanation of how the units work).
gem::ERangeType getRoundtripRangeType () const
 Get roundtrip range type.
uint32_t getRoundtripRandomSeed () const
 Get roundtrip random seed.
ERouteResultDetails getResultDetails () const noexcept
 Get result details.
RoutePreferences & setResultDetails (ERouteResultDetails details) noexcept
 Set result details.
RoutePreferences & setAlternativesSchema (ERouteAlternativesSchema schema) noexcept
 Set alternative schema.
ERouteAlternativesSchema getAlternativesSchema () const noexcept
 Get alternative schema.
bool getMaximumDistanceConstraint () const noexcept
 Get service maximum distance constraint.
RoutePreferences & setMaximumDistanceConstraint (bool b) noexcept
 Set maximum distance constraint.
RoutePreferences & setIgnoreRestrictionsOverTrack (bool b) noexcept
 Set the ignore map restrictions in route-over-track mode.
bool getIgnoreRestrictionsOverTrack () const noexcept
 Get the ignore map restrictions in route-over-track mode.
RoutePreferences & setStrictTrackFollow (bool b) noexcept
 Set the strict track follow mode ( route-over-track case ).
bool getStrictTrackFollow () const noexcept
 Get the strict track follow mode ( route-over-track case ).
RoutePreferences & setAccurateTrackMatch (bool accurate) noexcept
 Set the track accurate match.
bool getAccurateTrackMatch () const noexcept
 Get the track accurate match.
RoutePreferences & setTrackResume (bool mode) noexcept
 Set the track resume mode.
bool getTrackResume () const noexcept
 Get the track resume mode.
RoutePreferences & setEmergencyVehicleMode (bool b, int extraFreedom=0) noexcept
 Set the emergency vehicle mode.
bool getEmergencyVehicleMode () const noexcept
 Get the emergency vehicle mode.
int getEmergencyVehicleExtraFreedomLevels () const noexcept
 Get the emergency vehicle extra freedom levels packed in an integer value.
ERoutePathAlgorithm getPathAlgorithm () const noexcept
 Get path algorithm.
RoutePreferences & setPathAlgorithm (ERoutePathAlgorithm algo) noexcept
 Set path algorithm.
ERoutePathFlavor getPathAlgorithmFlavor () const noexcept
 Get path algorithm flavor.
RoutePreferences & setPathAlgorithmFlavor (ERoutePathFlavor flavor) noexcept
 Set path algorithm flavor.
std::pair< double, double > getDepartureHeading () const noexcept
 Get the departure heading and heading accuracy in degrees.
RoutePreferences & setDepartureHeading (double head, double accuracy) noexcept
 Set the departure heading in degrees.
bool getAllowOnlineCalculation () const noexcept
 Get the online route calculation allowance.
RoutePreferences & setAllowOnlineCalculation (bool allow) noexcept
 Set the online route calculation allowance.
RoutePreferences & setBuildConnections (bool build, int maxLengthM=-1) noexcept
 Set build route connections.
bool getBuildConnections () const noexcept
 Get route connections build.
int getBuildConnectionsMaxLength () const noexcept
 Get route connections build max length.
bool getAccurateWaypointsApproach () const noexcept
 Get accurate waypoints approach.
RoutePreferences & setAccurateWaypointsApproach (bool val) noexcept
 Set the accurate waypoints approach.
bool getImmutableRoadblockAvoidance () const noexcept
 Get the immutable roadblock avoidance state.
RoutePreferences & setImmutableRoadblockAvoidance (bool val) noexcept
 Set the immutable roadblock avoidance state.
const VehicleRegistrationgetVehicleRegistration () const noexcept
 Get vehicle registration.

Detailed Description

RoutePreferences object.

Implements share-read / copy-on-write Api object over IRoutePreferences.

Member Function Documentation

◆ getAccurateTrackMatch()

bool gem::RoutePreferences::getAccurateTrackMatch ( ) const
inlinenoexcept

Get the track accurate match.

Default is true

Returns
true if track accurate match is enabled

◆ getAccurateWaypointsApproach()

bool gem::RoutePreferences::getAccurateWaypointsApproach ( ) const
inlinenoexcept

Get accurate waypoints approach.

An accurate approach implies that the route arrives at the waypoint on the drive side of the region

Default is false

Returns
true if accurate waypoints approach is enabled

◆ getAlgorithmType()

EPTAlgorithmType gem::RoutePreferences::getAlgorithmType ( ) const
inlinenoexcept

Get algorithm type.

Default is PTSS_Best_Time

Returns
The algorithm type.

◆ getAllowOnlineCalculation()

bool gem::RoutePreferences::getAllowOnlineCalculation ( ) const
inlinenoexcept

Get the online route calculation allowance.

Default value is true

Returns
true if online route calculation is allowed

◆ getAlternativeRoutesBalancedSorting()

bool gem::RoutePreferences::getAlternativeRoutesBalancedSorting ( ) const
inlinenoexcept
Returns
true if alternative routes balanced sorting is enabled

Default is true

Returns
true if alternative routes balanced sorting is enabled

◆ getAlternativesSchema()

ERouteAlternativesSchema gem::RoutePreferences::getAlternativesSchema ( ) const
inlinenoexcept

Get alternative schema.

Returns
The alternative schema

◆ getAvoidBikingHillFactor()

float gem::RoutePreferences::getAvoidBikingHillFactor ( ) const
inlinenoexcept

Get avoid biking hill factor.

Deprecated
Use instead getFitnessFactor

Default is 0.5

Returns
The avoid biking hill factor

◆ getAvoidCarpoolLanes()

bool gem::RoutePreferences::getAvoidCarpoolLanes ( ) const
inlinenoexcept

Test if avoid carpool lanes is set.

Default is false.

Returns
true if avoid carpool lanes is enabled

◆ getAvoidFerries()

bool gem::RoutePreferences::getAvoidFerries ( ) const
inlinenoexcept

Test if avoid ferries is set.

Returns
true if avoid ferries is enabled

Default is false.

◆ getAvoidGeofenceAntiAreas()

const StringList gem::RoutePreferences::getAvoidGeofenceAntiAreas ( ) const
inline

Get the geofence anti area avoidance ids list.

An anti area geofence is an area in which boundaries the route should remain during the calculation.

If getImmutableRoadblockAvoidance == true and the route cannot stay in the requested boundaries, the routing will fail with error::KNoRoute

Returns
The geofence anti area ids to avoid

◆ getAvoidGeofenceAreas()

const StringListRef gem::RoutePreferences::getAvoidGeofenceAreas ( ) const
inlinenoexcept

Get the geofence area avoidance ids list.

Returns
The geofence area ids to avoid

◆ getAvoidMotorways()

bool gem::RoutePreferences::getAvoidMotorways ( ) const
inlinenoexcept

Get avoid motorways status.

Returns
true if avoid motorways is enabled

Default is false.

◆ getAvoidTollRoads()

bool gem::RoutePreferences::getAvoidTollRoads ( ) const
inlinenoexcept

Test if avoid toll roads is set.

Returns
true if avoid toll roads is enabled

Default is false.

◆ getAvoidTraffic()

ETrafficAvoidance gem::RoutePreferences::getAvoidTraffic ( ) const
inlinenoexcept

Get route calculation traffic avoidance method.

Default is TA_None

Returns
The traffic avoidance method.

◆ getAvoidTurnAroundInstruction()

bool gem::RoutePreferences::getAvoidTurnAroundInstruction ( ) const
inlinenoexcept

Test if avoid turnaround instruction flag is set.

Default is true for car/truck transport modes and false for the rest

If emergency mode is active, default value is always false

Returns
true if avoid turnaround instruction is enabled

◆ getAvoidUnpavedRoads()

bool gem::RoutePreferences::getAvoidUnpavedRoads ( ) const
inlinenoexcept

Test if avoid unpaved roads is set.

Default is false.

Returns
true if avoid unpaved roads is enabled

◆ getBikeProfile()

EBikeProfile gem::RoutePreferences::getBikeProfile ( ) const
inlinenoexcept

Get selected bike profile.

Default is BP_City

Returns
The selected bike profile

◆ getBuildConnections()

bool gem::RoutePreferences::getBuildConnections ( ) const
inlinenoexcept

Get route connections build.

Default is false

Returns
true if route connections build is enabled

◆ getBuildConnectionsMaxLength()

int gem::RoutePreferences::getBuildConnectionsMaxLength ( ) const
inlinenoexcept

Get route connections build max length.

Default is -1

Returns
The route connections build max length

◆ getBuildTerrainProfile()

bool gem::RoutePreferences::getBuildTerrainProfile ( ) const
inlinenoexcept

Get terrain profile build activation.

Default is false

Returns
true if terrain profile build is enabled

◆ getBuildTerrainProfileMinVariation()

float gem::RoutePreferences::getBuildTerrainProfileMinVariation ( ) const
inlinenoexcept

Get terrain profile build minimum elevation variation to be registered for total up / total down statistics.

Default is 0

Returns
The minimum elevation variation to be registered for total up / total down statistics

◆ getCarProfile()

const CarProfile & gem::RoutePreferences::getCarProfile ( ) const
inlinenoexcept

Get car profile.

Default is CarProfile()

Returns
The car profile

◆ getDefaultEBikeProfile()

ElectricBikeProfile gem::RoutePreferences::getDefaultEBikeProfile ( ) const
inlinenoexcept

Get default e-bike profile.

Returns
The default e-bike profile

◆ getDepartureHeading()

std::pair< double, double > gem::RoutePreferences::getDepartureHeading ( ) const
inlinenoexcept

Get the departure heading and heading accuracy in degrees.

Returns
Pair of { heading, heading accuracy }

Values are in 0 - 360 interval with 0 representing the magnetic north

◆ getEBikeProfile()

const ElectricBikeProfile & gem::RoutePreferences::getEBikeProfile ( ) const
inlinenoexcept

Get selected e-bike profile.

Returns
The selected e-bike profile

◆ getEmergencyVehicleExtraFreedomLevels()

int gem::RoutePreferences::getEmergencyVehicleExtraFreedomLevels ( ) const
inlinenoexcept

Get the emergency vehicle extra freedom levels packed in an integer value.

See EEmergencyExtraFreedomLevels for possible values

Returns
The extra freedom levels for emergency vehicles

◆ getEmergencyVehicleMode()

bool gem::RoutePreferences::getEmergencyVehicleMode ( ) const
inlinenoexcept

Get the emergency vehicle mode.

Emergency mode set the default AvoidTurnAroundInstruction setting to false also for car/truck

Emergency mode enables access to emergency dedicated links and enables a more relaxed routing set of constraints

Default is false

Returns
true if emergency vehicle mode is enabled

◆ getEVProfile()

const EVProfile & gem::RoutePreferences::getEVProfile ( ) const
inlinenoexcept

Get EV profile.

Returns
The EV profile

◆ getFitnessFactor()

float gem::RoutePreferences::getFitnessFactor ( ) const
inlinenoexcept

Get bike & pedestrian routing fitness factor.

Default is 0.5 ( normal / good shape )

Returns
The fitness factor in range [0, 1], 0.f - untrained , 1.f - professional

◆ getIgnoreRestrictionsOverTrack()

bool gem::RoutePreferences::getIgnoreRestrictionsOverTrack ( ) const
inlinenoexcept

Get the ignore map restrictions in route-over-track mode.

Default is false

Returns
true if ignore map restrictions is enabled

◆ getImmutableRoadblockAvoidance()

bool gem::RoutePreferences::getImmutableRoadblockAvoidance ( ) const
inlinenoexcept

Get the immutable roadblock avoidance state.

If set, the algorithm rather fails than routing through roadblocks

Default is false

Returns
true if immutable roadblock avoidance is enabled

◆ getMaximumDistanceConstraint()

bool gem::RoutePreferences::getMaximumDistanceConstraint ( ) const
inlinenoexcept

Get service maximum distance constraint.

Maximum distance constraint depends on transport and result details. Default is active

Returns
true if maximum distance constraint is enabled

◆ getMaximumTransferTimeInMinutes()

unsigned int gem::RoutePreferences::getMaximumTransferTimeInMinutes ( ) const
inlinenoexcept

Get maximum transfer time in minutes.

Refers to the transfer time between two means of transportation.

Default is 300.

Returns
The maximum transfer time in minutes.

◆ getMaximumWalkDistance()

unsigned int gem::RoutePreferences::getMaximumWalkDistance ( ) const
inlinenoexcept

Get maximum walk distance.

Default is 4000.

Returns
The maximum walk distance.

◆ getMinimumTransferTimeInMinutes()

unsigned int gem::RoutePreferences::getMinimumTransferTimeInMinutes ( ) const
inlinenoexcept

Get minimum transfer time in minutes.

Refers to the transfer time between two means of transportation.

Default is 0.

Returns
The minimum transfer time in minutes.

◆ getPathAlgorithm()

ERoutePathAlgorithm gem::RoutePreferences::getPathAlgorithm ( ) const
inlinenoexcept

Get path algorithm.

Default is PA_ML

Returns
The path algorithm

◆ getPathAlgorithmFlavor()

ERoutePathFlavor gem::RoutePreferences::getPathAlgorithmFlavor ( ) const
inlinenoexcept

Get path algorithm flavor.

Default is PF_ML

Returns
The path algorithm flavor

◆ getPedestrianProfile()

EPedestrianProfile gem::RoutePreferences::getPedestrianProfile ( ) const
inlinenoexcept

Get pedestrian profile.

Default is PP_Fast

Returns
The pedestrian profile

◆ getResultDetails()

ERouteResultDetails gem::RoutePreferences::getResultDetails ( ) const
inlinenoexcept

Get result details.

Default is RD_Full

Returns
The route result details enum

◆ getRoundtripRandomSeed()

uint32_t gem::RoutePreferences::getRoundtripRandomSeed ( ) const
inline

Get roundtrip random seed.

Returns
The roundtrip random seed

◆ getRoundtripRange()

uint32_t gem::RoutePreferences::getRoundtripRange ( ) const
inline

Get roundtrip range (see setRoundtripParameters for explanation of how the units work).

Returns
The roundtrip range

◆ getRoundtripRangeType()

gem::ERangeType gem::RoutePreferences::getRoundtripRangeType ( ) const
inline

Get roundtrip range type.

Returns
The roundtrip range type

◆ getRouteGroupIdsEarlierLater()

const IntListRef gem::RoutePreferences::getRouteGroupIdsEarlierLater ( ) const
inlinenoexcept

Get group ids for earlier/later trip.

Default is empty

Returns
The group ids for earlier/later trip

◆ getRouteRanges()

const IntListRef gem::RoutePreferences::getRouteRanges ( ) const
inlinenoexcept

Get route ranges list.

Default is empty

Returns
The route ranges list

◆ getRouteRangesQuality()

int gem::RoutePreferences::getRouteRangesQuality ( ) const
inlinenoexcept

Get route range quality.

Default is 100 ( max quality )

Returns
The route range quality

◆ getRouteResultType()

ERouteResultType gem::RoutePreferences::getRouteResultType ( ) const
inlinenoexcept

Get the route result type.

Default is RRT_Path

Returns
The route result type.

◆ getRouteType()

ERouteType gem::RoutePreferences::getRouteType ( ) const
inlinenoexcept

Get the route type.

Default is RT_Fastest.

Returns
The route type.

◆ getRouteTypePreferences()

int gem::RoutePreferences::getRouteTypePreferences ( ) const
inlinenoexcept

Get route type preferences.

Default is 0 - no special preference for one route type

Returns
The route type preferences.

◆ getSortingStrategy()

EPTSortingStrategy gem::RoutePreferences::getSortingStrategy ( ) const
inlinenoexcept

Get sorting strategy.

Default is PTSS_Best_Time

Returns
The sorting strategy.

◆ getStrictTrackFollow()

bool gem::RoutePreferences::getStrictTrackFollow ( ) const
inlinenoexcept

Get the strict track follow mode ( route-over-track case ).

Deprecated
This preferences is no longer used

Default is false

Returns
true if strict track follow is enabled

◆ getTimestamp()

Time gem::RoutePreferences::getTimestamp ( ) const
inlinenoexcept

Get timestamp.

Get departure timestamp. For public transport it is arrival time if algorithm type is set to EPTAlgorithmType::PTAT_Arrival

Returns
The timestamp.

◆ getTrackResume()

bool gem::RoutePreferences::getTrackResume ( ) const
inlinenoexcept

Get the track resume mode.

Default is true

Returns
true if track resume is enabled

◆ getTransportMode()

ERouteTransportMode gem::RoutePreferences::getTransportMode ( ) const
inlinenoexcept

Get transport mode.

Default is gem::ERouteTransportMode::RTM_Car.

Returns
The transport mode.

◆ getTruckProfile()

const TruckProfile & gem::RoutePreferences::getTruckProfile ( ) const
inlinenoexcept

Get truck profile.

Default is TruckProfile()

Truck profile is used in truck transport mode routing

EXCEPTION: When the preference TruckProfile::isDefault() == false, the truck limits ( width, height, length, weight & axleLoad ) are used also in car routing ( caravan routing usecase )

Returns
The truck profile

◆ getUseBikes()

bool gem::RoutePreferences::getUseBikes ( ) const
inlinenoexcept

Get option toggle to use bike.

Default is false.

Returns
true if use bike is enabled

◆ getUseWheelchair()

bool gem::RoutePreferences::getUseWheelchair ( ) const
inlinenoexcept

Get option toggle to use wheelchair.

Default is false.

Returns
true if use wheelchair is enabled

◆ getVehicleRegistration()

const VehicleRegistration * gem::RoutePreferences::getVehicleRegistration ( ) const
inlinenoexcept

Get vehicle registration.

Returns
A pointer to vehicle registration object, if supported by the transport mode; nullptr otherwise

◆ isAutomaticTimestamp()

bool gem::RoutePreferences::isAutomaticTimestamp ( ) const
inlinenoexcept

Get timestamp automatic mode.

Returns
true if automatic timestamp is enabled

◆ operator=() [1/2]

RoutePreferences & gem::RoutePreferences::operator= ( const RoutePreferences & )
default

Default copy assignment.

Returns
A reference to the modified RoutePreferences object.

◆ operator=() [2/2]

RoutePreferences & gem::RoutePreferences::operator= ( RoutePreferences && )
default

Default move assignment noexcept is deduced.

Returns
A reference to the modified RoutePreferences object.

◆ operator==()

bool gem::RoutePreferences::operator== ( const RoutePreferences & prefs)
inlinenoexcept

Comparison operator.

Returns
True if object are the same

◆ setAccurateTrackMatch()

RoutePreferences & gem::RoutePreferences::setAccurateTrackMatch ( bool accurate)
inlinenoexcept

Set the track accurate match.

Parameters
[in]accurateThe track accurate match, true for activation
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAccurateWaypointsApproach()

RoutePreferences & gem::RoutePreferences::setAccurateWaypointsApproach ( bool val)
inlinenoexcept

Set the accurate waypoints approach.

Parameters
[in]valThe approach value, true for accurate approach
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAlgorithmType()

RoutePreferences & gem::RoutePreferences::setAlgorithmType ( EPTAlgorithmType ptat)
inlinenoexcept

Set algorithm type.

Parameters
ptatThe algorithm type.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAllowOnlineCalculation()

RoutePreferences & gem::RoutePreferences::setAllowOnlineCalculation ( bool allow)
inlinenoexcept

Set the online route calculation allowance.

Parameters
[in]allowAllowance flag
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAlternativeRoutesBalancedSorting()

RoutePreferences & gem::RoutePreferences::setAlternativeRoutesBalancedSorting ( bool b)
inlinenoexcept

Enable/disable alternative routes balanced sorting.

Parameters
bTrue to enable alternative routes balanced sorting, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAlternativesSchema()

RoutePreferences & gem::RoutePreferences::setAlternativesSchema ( ERouteAlternativesSchema schema)
inlinenoexcept

Set alternative schema.

Parameters
schemaThe alternative schema
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAutomaticTimestamp()

RoutePreferences & gem::RoutePreferences::setAutomaticTimestamp ( )
inlinenoexcept

Set timestamp to automatic mode.

For public transit routes the departure timestamp is set to the local time of the departing waypoint

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidBikingHillFactor()

RoutePreferences & gem::RoutePreferences::setAvoidBikingHillFactor ( float factor)
inlinenoexcept

Set avoid biking hill factor.

Deprecated
Use instead setFitnessFactor 0.f - no avoidance, 1.f - full avoidance
Parameters
factorThe avoid biking hill factor. The function will set the fitness factor as 1 - avoid hill factor
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidCarpoolLanes()

RoutePreferences & gem::RoutePreferences::setAvoidCarpoolLanes ( bool avoid)
inlinenoexcept

Set the avoid carpool lanes flag.

Parameters
avoidTrue to avoid carpool lanes, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidFerries()

RoutePreferences & gem::RoutePreferences::setAvoidFerries ( bool avoidFerries)
inlinenoexcept

Set the avoid ferries flag.

Parameters
avoidFerriesTrue to avoid ferries, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidGeofenceAntiAreas()

RoutePreferences & gem::RoutePreferences::setAvoidGeofenceAntiAreas ( const StringList & areas)
inlinenoexcept

Set avoidance of the given geofence anti area ids.

Parameters
areasThe geofence anti area ids to avoid

An anti area geofence is an area in which boundaries the route should remain during the calculation.

If getImmutableRoadblockAvoidance == true and the route cannot stay in the requested boundaries, the routing will fail with error::KNoRoute

Send an empty list to disable geofence anti area avoidance

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidGeofenceAreas()

RoutePreferences & gem::RoutePreferences::setAvoidGeofenceAreas ( const StringList & areas)
inlinenoexcept

Set avoidance of the given geofence area ids.

Parameters
areasThe geofence area ids to avoid

Send an empty list to disable geofence area avoidance

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidMotorways()

RoutePreferences & gem::RoutePreferences::setAvoidMotorways ( bool b)
inlinenoexcept

Set the avoid motorways flag.

Parameters
bTrue to avoid motorways, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidTollRoads()

RoutePreferences & gem::RoutePreferences::setAvoidTollRoads ( bool b)
inlinenoexcept

Set the avoid toll roads flag.

Parameters
bTrue to avoid toll roads, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidTraffic() [1/2]

RoutePreferences & gem::RoutePreferences::setAvoidTraffic ( bool b)
inlinenoexcept

Enable/disable traffic information usage for route calculation.

Deprecated
Use instead setAvoidTraffic( ETrafficAvoidance )

Default is false.

Parameters
bTrue to enable traffic information usage, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidTraffic() [2/2]

RoutePreferences & gem::RoutePreferences::setAvoidTraffic ( ETrafficAvoidance avoid)
inlinenoexcept

Set route calculation traffic avoidance method.

Default is ETrafficAvoidance::TA_None.

Parameters
avoidThe traffic avoidance method.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidTurnAroundInstruction()

RoutePreferences & gem::RoutePreferences::setAvoidTurnAroundInstruction ( bool avoidUTurn)
inlinenoexcept

Set the avoid turnaround instruction flag.

If set to true then the message "Turnaround when possible" will be avoided during navigation.

This preference is always overridden in car / truck navigation route recalculations, in which case the current driving direction is used,

except for the case when emergency mode is activated

For car / truck this preference is used when setting a user roadblock during navigation. If set to false, a turn around instruction may be generated

Parameters
avoidUTurnTrue to avoid turnaround instruction, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setAvoidUnpavedRoads()

RoutePreferences & gem::RoutePreferences::setAvoidUnpavedRoads ( bool avoid)
inlinenoexcept

Set the avoid unpaved roads flag.

Parameters
avoidTrue to avoid unpaved roads, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setBikeProfile()

RoutePreferences & gem::RoutePreferences::setBikeProfile ( EBikeProfile profile,
const ElectricBikeProfile & eprofile = ElectricBikeProfileEBP_None ) )
inlinenoexcept

Set bike profile.

Parameters
[in]profileBike profile id
[in]eprofilee-Bike profile data. Default means classic bike ( i.e. non e-Bike )
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setBuildConnections()

RoutePreferences & gem::RoutePreferences::setBuildConnections ( bool build,
int maxLengthM = -1 )
inlinenoexcept

Set build route connections.

Parameters
[in]buildEnable connections build
[in]maxLengthMMaximum connection length
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setBuildTerrainProfile()

RoutePreferences & gem::RoutePreferences::setBuildTerrainProfile ( bool enable,
float minVariation = -1 )
inlinenoexcept

Set terrain profile build.

Parameters
[in]enableEnable / disable terrain profile build
[in]minVariationThe minimum elevation variation to be registered for total up / total down statistics

A value < 0 lets the SDK to choose a proper value

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setCarProfile()

RoutePreferences & gem::RoutePreferences::setCarProfile ( const CarProfile & profile)
inlinenoexcept

Set car profile.

Parameters
profileThe car profile
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setDepartureHeading()

RoutePreferences & gem::RoutePreferences::setDepartureHeading ( double head,
double accuracy )
inlinenoexcept

Set the departure heading in degrees.

Parameters
[in]headThe departure heading, in degrees east from north axis

Values are in 0 - 360 interval with 0 representing the magnetic north

Value -1 means no departure heading is specified

Parameters
[in]accuracyThe departure heading accuracy, in degrees

Values are in 0 - 90 interval. A typical value is 25 degrees

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setEmergencyVehicleMode()

RoutePreferences & gem::RoutePreferences::setEmergencyVehicleMode ( bool b,
int extraFreedom = 0 )
inlinenoexcept

Set the emergency vehicle mode.

Parameters
[in]bThe emergency vehicle mode, true for activation
[in]extraFreedomThe extra freedom levels for emergency vehicles, packed in an integer value. See EEmergencyExtraFreedomLevels for possible values
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setEVProfile()

RoutePreferences & gem::RoutePreferences::setEVProfile ( const EVProfile & profile)
inlinenoexcept

Set EV profile.

Parameters
profileThe EV profile
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setFitnessFactor()

RoutePreferences & gem::RoutePreferences::setFitnessFactor ( float factor)
inlinenoexcept

Set the bike & pedestrian routing fitness factor.

Parameters
[in]factorThe fitness factor in range [0, 1], 0.f - untrained , 1.f - professional

The fitness factor affects route path configuration.

For mountain bike and pedestrian hiking profiles the fitness factor is used to boost to steeper slopes in path links selection

For city bike, road bike and cross bike the fitness factor is used to avoid steeper slopes in path links selection

Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setIgnoreRestrictionsOverTrack()

RoutePreferences & gem::RoutePreferences::setIgnoreRestrictionsOverTrack ( bool b)
inlinenoexcept

Set the ignore map restrictions in route-over-track mode.

Parameters
[in]bThe ignore map restrictions flag, true for activation
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setImmutableRoadblockAvoidance()

RoutePreferences & gem::RoutePreferences::setImmutableRoadblockAvoidance ( bool val)
inlinenoexcept

Set the immutable roadblock avoidance state.

Parameters
[in]valThe set value
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setMaximumDistanceConstraint()

RoutePreferences & gem::RoutePreferences::setMaximumDistanceConstraint ( bool b)
inlinenoexcept

Set maximum distance constraint.

Parameters
bThe maximum distance constraint
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setMaximumTransferTimeInMinutes()

RoutePreferences & gem::RoutePreferences::setMaximumTransferTimeInMinutes ( unsigned int minutes)
inlinenoexcept

Set maximum transfer time in minutes.

Enable the user to specify the desired maximum amount of minutes between the arrival of one means of transportation and the departure of the next one.

Default is 300.

Parameters
minutesThe maximum transfer time in minutes.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setMaximumWalkDistance()

RoutePreferences & gem::RoutePreferences::setMaximumWalkDistance ( unsigned int distmeters)
inlinenoexcept

Set maximum walk distance.

Default is 4000.

Parameters
distmetersThe maximum walk distance in meters.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setMinimumTransferTimeInMinutes()

RoutePreferences & gem::RoutePreferences::setMinimumTransferTimeInMinutes ( unsigned int minutes)
inlinenoexcept

Set minimum transfer time in minutes.

Enable the user to specify the desired minimum amount of minutes between the arrival of one means of transportation and the departure of the next one.

Parameters
minutesThe minimum transfer time in minutes.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setPathAlgorithm()

RoutePreferences & gem::RoutePreferences::setPathAlgorithm ( ERoutePathAlgorithm algo)
inlinenoexcept

Set path algorithm.

Parameters
[in]algoThe path algorithm
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setPathAlgorithmFlavor()

RoutePreferences & gem::RoutePreferences::setPathAlgorithmFlavor ( ERoutePathFlavor flavor)
inlinenoexcept

Set path algorithm flavor.

Parameters
[in]flavorThe path algorithm flavor
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setPedestrianProfile()

RoutePreferences & gem::RoutePreferences::setPedestrianProfile ( EPedestrianProfile profile)
inlinenoexcept

Set pedestrian profile.

Parameters
profileThe pedestrian profile
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setResultDetails()

RoutePreferences & gem::RoutePreferences::setResultDetails ( ERouteResultDetails details)
inlinenoexcept

Set result details.

Parameters
detailsThe route result details enum
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setRoundtripParameters()

RoutePreferences & gem::RoutePreferences::setRoundtripParameters ( uint32_t range,
ERangeType rangeType,
uint32_t randomSeed = 0 )
inlinenoexcept

Set parameters for roundtrip feature.

Parameters
rangeapproximate desired size of the roundtrip; meaning is the same as for the RouteRanges feature
rangeTypethe units in which the range is expressed. Default means dependent on the route type like for Ranges. Other options are distance in meters and time in seconds.
randomSeedIf set to 0, generate a random route; any other number, use it as the seed for deterministic randomness
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setRouteGroupIdsEarlierLater()

RoutePreferences & gem::RoutePreferences::setRouteGroupIdsEarlierLater ( const IntList & list)
inlinenoexcept

Set group ids for earlier/later trip.

Parameters
listThe group ids for earlier/later trip
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setRouteRanges()

RoutePreferences & gem::RoutePreferences::setRouteRanges ( const IntList & list,
int quality )
inlinenoexcept

Set route ranges list.

A non empty range list will generate an isocost range route result

Range result quality must a valid integer in the 0 - 100 range, where 0 = lowest quality, 100 = highest quality Range units depend on route type: RT_Fastest - seconds, RT_Shortest - meters, RT_Economic - Wh

Parameters
listThe route ranges list
qualityThe route range quality
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setRouteType()

RoutePreferences & gem::RoutePreferences::setRouteType ( ERouteType rt)
inlinenoexcept

Set the route type.

Parameters
rtThe route type.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setRouteTypePreferences()

RoutePreferences & gem::RoutePreferences::setRouteTypePreferences ( int pref)
inlinenoexcept

Set route type preferences, for example, setRouteTypePreferences(EPTRouteTypePreference::eRTP_Bus | eRTP::eRTP_Underground).

Parameters
prefThe route type preferences.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setSortingStrategy()

RoutePreferences & gem::RoutePreferences::setSortingStrategy ( EPTSortingStrategy ptss)
inlinenoexcept

Set sorting strategy.

Parameters
ptssThe sorting strategy.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setStrictTrackFollow()

RoutePreferences & gem::RoutePreferences::setStrictTrackFollow ( bool b)
inlinenoexcept

Set the strict track follow mode ( route-over-track case ).

Deprecated
This preferences is no longer used
Parameters
[in]bThe strict track follow mode, true for activation
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setTimestamp()

RoutePreferences & gem::RoutePreferences::setTimestamp ( const Time & time)
inlinenoexcept

Set timestamp.

Set departure timestamp. For public transport it is arrival time if algorithm type is set to EPTAlgorithmType::PTAT_Arrival

Parameters
timeThe timestamp.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setTrackResume()

RoutePreferences & gem::RoutePreferences::setTrackResume ( bool mode)
inlinenoexcept

Set the track resume mode.

If true, the track will be used in routing from the closest coordinate until the last

If false, the track will be used entirely in routing, from the first coordinate until the last

At least one waypoint before the track waypoint should be configured - this will determine the closest position on track

The default value is true

Parameters
[in]modeThe track resume mode, true for activation
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setTransportMode()

RoutePreferences & gem::RoutePreferences::setTransportMode ( ERouteTransportMode tm)
inlinenoexcept

Set the transport mode.

Parameters
tmThe transport mode. See gem::ERouteTransportMode.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setTruckProfile()

RoutePreferences & gem::RoutePreferences::setTruckProfile ( const TruckProfile & profile)
inlinenoexcept

Set truck profile.

Truck profile is used in truck transport mode routing

EXCEPTION: When the preference TruckProfile::isDefault() == false, the truck limits ( width, height, length, weight & axleLoad ) are used also in car routing ( caravan routing usecase )

Parameters
profileThe truck profile
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setUseBikes()

RoutePreferences & gem::RoutePreferences::setUseBikes ( bool b)
inlinenoexcept

Set option toggle to use bike.

Parameters
bTrue to use bike, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.

◆ setUseWheelchair()

RoutePreferences & gem::RoutePreferences::setUseWheelchair ( bool b)
inlinenoexcept

Set option toggle to use wheelchair.

Parameters
bTrue to use wheelchair, false otherwise.
Returns
A reference to this RoutePreferences object, allowing for method chaining.