pub struct ComputeRouteMatrixRequest {
pub origins: Vec<RouteMatrixOrigin>,
pub destinations: Vec<RouteMatrixDestination>,
pub travel_mode: i32,
pub routing_preference: i32,
pub departure_time: Option<Timestamp>,
pub arrival_time: Option<Timestamp>,
pub language_code: String,
pub region_code: String,
pub units: i32,
pub extra_computations: Vec<i32>,
pub traffic_model: i32,
pub transit_preferences: Option<TransitPreferences>,
}
Expand description
ComputeRouteMatrix request message
Fields§
§origins: Vec<RouteMatrixOrigin>
Required. Array of origins, which determines the rows of the response matrix. Several size restrictions apply to the cardinality of origins and destinations:
- The sum of the number of origins + the number of destinations specified
as either
place_id
oraddress
must be no greater than 50. - The product of number of origins × number of destinations must be no greater than 625 in any case.
- The product of the number of origins × number of destinations must be no
greater than 100 if routing_preference is set to
TRAFFIC_AWARE_OPTIMAL
. - The product of the number of origins × number of destinations must be no
greater than 100 if travel_mode is set to
TRANSIT
.
destinations: Vec<RouteMatrixDestination>
Required. Array of destinations, which determines the columns of the response matrix.
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, an error is
returned. You can specify this option only when the travel_mode
is
DRIVE
or TWO_WHEELER
, otherwise the request fails.
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
.
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.
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 first origin.
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.
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 [RouteMatrixElement][google.maps.routing.v2.RouteMatrixElement] which
contains the predicted time in traffic based on historical averages.
[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 ComputeRouteMatrixRequest
impl ComputeRouteMatrixRequest
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 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 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 ComputeRouteMatrixRequest
impl Clone for ComputeRouteMatrixRequest
Source§fn clone(&self) -> ComputeRouteMatrixRequest
fn clone(&self) -> ComputeRouteMatrixRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ComputeRouteMatrixRequest
impl Debug for ComputeRouteMatrixRequest
Source§impl Default for ComputeRouteMatrixRequest
impl Default for ComputeRouteMatrixRequest
Source§impl Message for ComputeRouteMatrixRequest
impl Message for ComputeRouteMatrixRequest
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
.impl StructuralPartialEq for ComputeRouteMatrixRequest
Auto Trait Implementations§
impl Freeze for ComputeRouteMatrixRequest
impl RefUnwindSafe for ComputeRouteMatrixRequest
impl Send for ComputeRouteMatrixRequest
impl Sync for ComputeRouteMatrixRequest
impl Unpin for ComputeRouteMatrixRequest
impl UnwindSafe for ComputeRouteMatrixRequest
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