26 PedestrianTravel = 0x0002,
27 BicycleTravel = 0x0004,
28 PublicTransitTravel = 0x0008,
31 Q_DECLARE_FLAGS(TravelModes, TravelMode)
34 NoFeature = 0x00000000,
35 TollFeature = 0x00000001,
36 HighwayFeature = 0x00000002,
37 PublicTransitFeature = 0x00000004,
38 FerryFeature = 0x00000008,
39 TunnelFeature = 0x00000010,
40 DirtRoadFeature = 0x00000020,
41 ParksFeature = 0x00000040,
42 MotorPoolLaneFeature = 0x00000080,
43 TrafficFeature = 0x00000100
45 Q_DECLARE_FLAGS(FeatureTypes, FeatureType)
48 NeutralFeatureWeight = 0x00000000,
49 PreferFeatureWeight = 0x00000001,
50 RequireFeatureWeight = 0x00000002,
51 AvoidFeatureWeight = 0x00000004,
52 DisallowFeatureWeight = 0x00000008
54 Q_DECLARE_FLAGS(FeatureWeights, FeatureWeight)
56 enum RouteOptimization {
57 ShortestRoute = 0x0001,
58 FastestRoute = 0x0002,
59 MostEconomicRoute = 0x0004,
60 MostScenicRoute = 0x0008
62 Q_DECLARE_FLAGS(RouteOptimizations, RouteOptimization)
65 NoSegmentData = 0x0000,
66 BasicSegmentData = 0x0001
68 Q_DECLARE_FLAGS(SegmentDetails, SegmentDetail)
72 BasicManeuvers = 0x0001
74 Q_DECLARE_FLAGS(ManeuverDetails, ManeuverDetail)
76 explicit QGeoRouteRequest(
const QList<QGeoCoordinate> &waypoints = QList<QGeoCoordinate>());
77 QGeoRouteRequest(
const QGeoCoordinate &origin,
78 const QGeoCoordinate &destination);
79 QGeoRouteRequest(
const QGeoRouteRequest &other)
noexcept;
80 QGeoRouteRequest(QGeoRouteRequest &&other)
noexcept =
default;
84 QGeoRouteRequest &operator= (
const QGeoRouteRequest &other)
noexcept;
85 QT_MOVE_ASSIGNMENT_OPERATOR_IMPL_VIA_MOVE_AND_SWAP(QGeoRouteRequest)
87 void swap(QGeoRouteRequest &other)
noexcept { d_ptr.swap(other.d_ptr); }
89 friend inline bool operator==(
const QGeoRouteRequest &lhs,
90 const QGeoRouteRequest &rhs)
noexcept
92 return lhs.isEqual(rhs);
94 friend inline bool operator!=(
const QGeoRouteRequest &lhs,
95 const QGeoRouteRequest &rhs)
noexcept
97 return !lhs.isEqual(rhs);
100 void setWaypoints(
const QList<QGeoCoordinate> &waypoints);
101 QList<QGeoCoordinate> waypoints()
const;
103 void setExcludeAreas(
const QList<QGeoRectangle> &areas);
104 QList<QGeoRectangle> excludeAreas()
const;
107 void setNumberAlternativeRoutes(
int alternatives);
108 int numberAlternativeRoutes()
const;
111 void setTravelModes(TravelModes travelModes);
112 TravelModes travelModes()
const;
114 void setFeatureWeight(FeatureType featureType, FeatureWeight featureWeight);
115 FeatureWeight featureWeight(FeatureType featureType)
const;
116 QList<FeatureType> featureTypes()
const;
119 void setRouteOptimization(RouteOptimizations optimization);
120 RouteOptimizations routeOptimization()
const;
123 void setSegmentDetail(SegmentDetail segmentDetail);
124 SegmentDetail segmentDetail()
const;
127 void setManeuverDetail(ManeuverDetail maneuverDetail);
128 ManeuverDetail maneuverDetail()
const;
131 void setDepartureTime(
const QDateTime &departureTime);
132 QDateTime departureTime()
const;
135 QExplicitlySharedDataPointer<QGeoRouteRequestPrivate> d_ptr;
137 bool isEqual(
const QGeoRouteRequest &other)
const noexcept;