35 bool operator==(
const QGeoRoutePrivate &other)
const;
36 bool equals(
const QGeoRoutePrivate &other)
const;
38 void setId(
const QString &id);
41 void setRequest(
const QGeoRouteRequest &request);
42 QGeoRouteRequest request()
const;
44 void setBounds(
const QGeoRectangle &bounds);
45 QGeoRectangle bounds()
const;
47 void setTravelTime(
int travelTime);
48 int travelTime()
const;
50 void setDistance(qreal distance);
51 qreal distance()
const;
53 void setTravelMode(QGeoRouteRequest::TravelMode mode);
54 QGeoRouteRequest::TravelMode travelMode()
const;
56 void setPath(
const QList<QGeoCoordinate> &path);
57 QList<QGeoCoordinate> path()
const;
59 void setFirstSegment(
const QGeoRouteSegment &firstSegment);
60 QGeoRouteSegment firstSegment()
const;
62 int segmentsCount()
const;
63 QList<QGeoRouteSegment> segments()
const;
65 void setRouteLegs(
const QList<QGeoRoute> &legs);
66 QList<QGeoRoute> routeLegs()
const;
68 void setExtendedAttributes(
const QVariantMap &extendedAttributes);
69 QVariantMap extendedAttributes()
const;
72 void setLegIndex(
int idx);
74 void setContainingRoute(
const QGeoRoute &route);
75 QGeoRoute containingRoute()
const;
78 template<
typename Functor>
79 inline void forEachSegment(Functor &&functor)
const {
80 QGeoRouteSegment segment = m_firstSegment;
81 while (segment.isValid()) {
84 if (segment.isLegLastSegment() && m_containingRoute)
86 segment = segment.nextRouteSegment();
90 QGeoRouteRequest m_request;
92 QGeoRectangle m_bounds;
93 mutable QList<QGeoRouteSegment> m_routeSegments;
96 qreal m_distance = 0.0;
98 QGeoRouteRequest::TravelMode m_travelMode;
100 QList<QGeoCoordinate> m_path;
101 QList<QGeoRoute> m_legs;
102 QGeoRouteSegment m_firstSegment;
103 mutable int m_numSegments = -1;
104 std::unique_ptr<QGeoRoute> m_containingRoute;
105 QVariantMap m_extendedAttributes;