25 PedestrianTravel = 0x0002,
26 BicycleTravel = 0x0004,
27 PublicTransitTravel = 0x0008,
30 Q_DECLARE_FLAGS(TravelModes, TravelMode)
33 NoFeature = 0x00000000,
34 TollFeature = 0x00000001,
35 HighwayFeature = 0x00000002,
36 PublicTransitFeature = 0x00000004,
37 FerryFeature = 0x00000008,
38 TunnelFeature = 0x00000010,
39 DirtRoadFeature = 0x00000020,
40 ParksFeature = 0x00000040,
41 MotorPoolLaneFeature = 0x00000080,
42 TrafficFeature = 0x00000100
44 Q_DECLARE_FLAGS(FeatureTypes, FeatureType)
47 NeutralFeatureWeight = 0x00000000,
48 PreferFeatureWeight = 0x00000001,
49 RequireFeatureWeight = 0x00000002,
50 AvoidFeatureWeight = 0x00000004,
51 DisallowFeatureWeight = 0x00000008
53 Q_DECLARE_FLAGS(FeatureWeights, FeatureWeight)
55 enum RouteOptimization {
56 ShortestRoute = 0x0001,
57 FastestRoute = 0x0002,
58 MostEconomicRoute = 0x0004,
59 MostScenicRoute = 0x0008
61 Q_DECLARE_FLAGS(RouteOptimizations, RouteOptimization)
64 NoSegmentData = 0x0000,
65 BasicSegmentData = 0x0001
67 Q_DECLARE_FLAGS(SegmentDetails, SegmentDetail)
71 BasicManeuvers = 0x0001
73 Q_DECLARE_FLAGS(ManeuverDetails, ManeuverDetail)
75 explicit QGeoRouteRequest(
const QList<QGeoCoordinate> &waypoints = QList<QGeoCoordinate>());
76 QGeoRouteRequest(
const QGeoCoordinate &origin,
77 const QGeoCoordinate &destination);
78 QGeoRouteRequest(
const QGeoRouteRequest &other)
noexcept;
79 QGeoRouteRequest(QGeoRouteRequest &&other)
noexcept =
default;
83 QGeoRouteRequest &operator= (
const QGeoRouteRequest &other)
noexcept;
84 QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_MOVE_AND_SWAP(QGeoRouteRequest)
86 void swap(QGeoRouteRequest &other)
noexcept { d_ptr.swap(other.d_ptr); }
88 friend inline bool operator==(
const QGeoRouteRequest &lhs,
89 const QGeoRouteRequest &rhs)
noexcept
91 return lhs.isEqual(rhs);
93 friend inline bool operator!=(
const QGeoRouteRequest &lhs,
94 const QGeoRouteRequest &rhs)
noexcept
96 return !lhs.isEqual(rhs);
99 void setWaypoints(
const QList<QGeoCoordinate> &waypoints);
100 QList<QGeoCoordinate> waypoints()
const;
102 void setExcludeAreas(
const QList<QGeoRectangle> &areas);
103 QList<QGeoRectangle> excludeAreas()
const;
106 void setNumberAlternativeRoutes(
int alternatives);
107 int numberAlternativeRoutes()
const;
110 void setTravelModes(TravelModes travelModes);
111 TravelModes travelModes()
const;
113 void setFeatureWeight(FeatureType featureType, FeatureWeight featureWeight);
114 FeatureWeight featureWeight(FeatureType featureType)
const;
115 QList<FeatureType> featureTypes()
const;
118 void setRouteOptimization(RouteOptimizations optimization);
119 RouteOptimizations routeOptimization()
const;
122 void setSegmentDetail(SegmentDetail segmentDetail);
123 SegmentDetail segmentDetail()
const;
126 void setManeuverDetail(ManeuverDetail maneuverDetail);
127 ManeuverDetail maneuverDetail()
const;
130 void setDepartureTime(
const QDateTime &departureTime);
131 QDateTime departureTime()
const;
134 QExplicitlySharedDataPointer<QGeoRouteRequestPrivate> d_ptr;
136 bool isEqual(
const QGeoRouteRequest &other)
const noexcept;