pub struct ComputeRoutesRequest {Show 19 fields
pub origin: Option<Waypoint>,
pub destination: Option<Waypoint>,
pub intermediates: Vec<Waypoint>,
pub travel_mode: i32,
pub routing_preference: i32,
pub polyline_quality: i32,
pub polyline_encoding: i32,
pub departure_time: Option<Timestamp>,
pub arrival_time: Option<Timestamp>,
pub compute_alternative_routes: bool,
pub route_modifiers: Option<RouteModifiers>,
pub language_code: String,
pub region_code: String,
pub units: i32,
pub optimize_waypoint_order: bool,
pub requested_reference_routes: Vec<i32>,
pub extra_computations: Vec<i32>,
pub traffic_model: i32,
pub transit_preferences: Option<TransitPreferences>,
}
Expand description
ComputeRoutes request message.
Fields§
§origin: Option<Waypoint>
Required. Origin waypoint.
destination: Option<Waypoint>
Required. Destination waypoint.
intermediates: Vec<Waypoint>
Optional. A set of waypoints along the route (excluding terminal points), for either stopping at or passing by. Up to 25 intermediate waypoints are supported.
travel_mode: i32
Optional. Specifies the mode of transportation.
routing_preference: i32
Optional. Specifies how to compute the route. The server
attempts to use the selected routing preference to compute the route. If
the routing preference results in an error or an extra long latency, then
an error is returned. You can specify this option only when the
travel_mode
is DRIVE
or TWO_WHEELER
, otherwise the request fails.
polyline_quality: i32
Optional. Specifies your preference for the quality of the polyline.
polyline_encoding: i32
Optional. Specifies the preferred encoding for the polyline.
departure_time: Option<Timestamp>
Optional. The departure time. If you don’t set this value, then this value
defaults to the time that you made the request.
NOTE: You can only specify a departure_time
in the past when
[RouteTravelMode
][google.maps.routing.v2.RouteTravelMode] is set to
TRANSIT
. Transit trips are available for up to 7 days in the past or 100
days in the future.
arrival_time: Option<Timestamp>
Optional. The arrival time.
NOTE: Can only be set when
[RouteTravelMode][google.maps.routing.v2.RouteTravelMode] is set to
TRANSIT
. You can specify either departure_time
or arrival_time
, but
not both. Transit trips are available for up to 7 days in the past or 100
days in the future.
compute_alternative_routes: bool
Optional. Specifies whether to calculate alternate routes in addition to the route. No alternative routes are returned for requests that have intermediate waypoints.
route_modifiers: Option<RouteModifiers>
Optional. A set of conditions to satisfy that affect the way routes are calculated.
language_code: String
Optional. The BCP-47 language code, such as “en-US” or “sr-Latn”. For more information, see Unicode Locale Identifier. See Language Support for the list of supported languages. When you don’t provide this value, the display language is inferred from the location of the route request.
region_code: String
Optional. The region code, specified as a ccTLD (“top-level domain”) two-character value. For more information see Country code top-level domains.
units: i32
Optional. Specifies the units of measure for the display fields. These
fields include the instruction
field in
[NavigationInstruction
][google.maps.routing.v2.NavigationInstruction].
The units of measure used for the route, leg, step distance, and duration
are not affected by this value. If you don’t provide this value, then the
display units are inferred from the location of the first origin.
optimize_waypoint_order: bool
Optional. If set to true, the service attempts to minimize the overall cost
of the route by re-ordering the specified intermediate waypoints. The
request fails if any of the intermediate waypoints is a via
waypoint. Use
ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index
to
find the new ordering.
If ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index
is
not requested in the X-Goog-FieldMask
header, the request fails.
If optimize_waypoint_order
is set to false,
ComputeRoutesResponse.optimized_intermediate_waypoint_index
will be
empty.
requested_reference_routes: Vec<i32>
Optional. Specifies what reference routes to calculate as part of the
request in addition to the default route. A reference route is a route with
a different route calculation objective than the default route. For example
a FUEL_EFFICIENT
reference route calculation takes into account various
parameters that would generate an optimal fuel efficient route. When using
this feature, look for
[route_labels
][google.maps.routing.v2.Route.route_labels] on the
resulting routes.
extra_computations: Vec<i32>
Optional. A list of extra computations which may be used to complete the request. Note: These extra computations may return extra fields on the response. These extra fields must also be specified in the field mask to be returned in the response.
traffic_model: i32
Optional. Specifies the assumptions to use when calculating time in
traffic. This setting affects the value returned in the duration field in
the
[Route
][google.maps.routing.v2.Route] and
[RouteLeg
][google.maps.routing.v2.RouteLeg] which contains the predicted
time in traffic based on historical averages.
TrafficModel
is only available for requests that have set
[RoutingPreference
][google.maps.routing.v2.RoutingPreference] to
TRAFFIC_AWARE_OPTIMAL
and
[RouteTravelMode
][google.maps.routing.v2.RouteTravelMode] to DRIVE
.
Defaults to BEST_GUESS
if traffic is requested and TrafficModel
is not
specified.
transit_preferences: Option<TransitPreferences>
Optional. Specifies preferences that influence the route returned for
TRANSIT
routes. NOTE: You can only specify a transit_preferences
when
[RouteTravelMode
][google.maps.routing.v2.RouteTravelMode] is set to
TRANSIT
.
Implementations§
Source§impl ComputeRoutesRequest
impl ComputeRoutesRequest
Sourcepub fn travel_mode(&self) -> RouteTravelMode
pub fn travel_mode(&self) -> RouteTravelMode
Returns the enum value of travel_mode
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_travel_mode(&mut self, value: RouteTravelMode)
pub fn set_travel_mode(&mut self, value: RouteTravelMode)
Sets travel_mode
to the provided enum value.
Sourcepub fn routing_preference(&self) -> RoutingPreference
pub fn routing_preference(&self) -> RoutingPreference
Returns the enum value of routing_preference
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_routing_preference(&mut self, value: RoutingPreference)
pub fn set_routing_preference(&mut self, value: RoutingPreference)
Sets routing_preference
to the provided enum value.
Sourcepub fn polyline_quality(&self) -> PolylineQuality
pub fn polyline_quality(&self) -> PolylineQuality
Returns the enum value of polyline_quality
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_polyline_quality(&mut self, value: PolylineQuality)
pub fn set_polyline_quality(&mut self, value: PolylineQuality)
Sets polyline_quality
to the provided enum value.
Sourcepub fn units(&self) -> Units
pub fn units(&self) -> Units
Returns the enum value of units
, or the default if the field is set to an invalid enum value.
Sourcepub fn polyline_encoding(&self) -> PolylineEncoding
pub fn polyline_encoding(&self) -> PolylineEncoding
Returns the enum value of polyline_encoding
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_polyline_encoding(&mut self, value: PolylineEncoding)
pub fn set_polyline_encoding(&mut self, value: PolylineEncoding)
Sets polyline_encoding
to the provided enum value.
Sourcepub fn requested_reference_routes(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<ReferenceRoute>>
pub fn requested_reference_routes( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<ReferenceRoute>>
Returns an iterator which yields the valid enum values contained in requested_reference_routes
.
Sourcepub fn push_requested_reference_routes(&mut self, value: ReferenceRoute)
pub fn push_requested_reference_routes(&mut self, value: ReferenceRoute)
Appends the provided enum value to requested_reference_routes
.
Sourcepub fn extra_computations(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<ExtraComputation>>
pub fn extra_computations( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<ExtraComputation>>
Returns an iterator which yields the valid enum values contained in extra_computations
.
Sourcepub fn push_extra_computations(&mut self, value: ExtraComputation)
pub fn push_extra_computations(&mut self, value: ExtraComputation)
Appends the provided enum value to extra_computations
.
Sourcepub fn traffic_model(&self) -> TrafficModel
pub fn traffic_model(&self) -> TrafficModel
Returns the enum value of traffic_model
, or the default if the field is set to an invalid enum value.
Sourcepub fn set_traffic_model(&mut self, value: TrafficModel)
pub fn set_traffic_model(&mut self, value: TrafficModel)
Sets traffic_model
to the provided enum value.
Trait Implementations§
Source§impl Clone for ComputeRoutesRequest
impl Clone for ComputeRoutesRequest
Source§fn clone(&self) -> ComputeRoutesRequest
fn clone(&self) -> ComputeRoutesRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ComputeRoutesRequest
impl Debug for ComputeRoutesRequest
Source§impl Default for ComputeRoutesRequest
impl Default for ComputeRoutesRequest
Source§impl Message for ComputeRoutesRequest
impl Message for ComputeRoutesRequest
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.Source§impl PartialEq for ComputeRoutesRequest
impl PartialEq for ComputeRoutesRequest
impl StructuralPartialEq for ComputeRoutesRequest
Auto Trait Implementations§
impl Freeze for ComputeRoutesRequest
impl RefUnwindSafe for ComputeRoutesRequest
impl Send for ComputeRoutesRequest
impl Sync for ComputeRoutesRequest
impl Unpin for ComputeRoutesRequest
impl UnwindSafe for ComputeRoutesRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request