com.google.maps.routeoptimization.v1.ShipmentModelOrBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of proto-google-maps-routeoptimization-v1 Show documentation
Show all versions of proto-google-maps-routeoptimization-v1 Show documentation
Proto library for google-maps-routeoptimization
The newest version!
/*
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/maps/routeoptimization/v1/route_optimization_service.proto
// Protobuf Java Version: 3.25.5
package com.google.maps.routeoptimization.v1;
public interface ShipmentModelOrBuilder
extends
// @@protoc_insertion_point(interface_extends:google.maps.routeoptimization.v1.ShipmentModel)
com.google.protobuf.MessageOrBuilder {
/**
*
*
*
* Set of shipments which must be performed in the model.
*
*
* repeated .google.maps.routeoptimization.v1.Shipment shipments = 1;
*/
java.util.List getShipmentsList();
/**
*
*
*
* Set of shipments which must be performed in the model.
*
*
* repeated .google.maps.routeoptimization.v1.Shipment shipments = 1;
*/
com.google.maps.routeoptimization.v1.Shipment getShipments(int index);
/**
*
*
*
* Set of shipments which must be performed in the model.
*
*
* repeated .google.maps.routeoptimization.v1.Shipment shipments = 1;
*/
int getShipmentsCount();
/**
*
*
*
* Set of shipments which must be performed in the model.
*
*
* repeated .google.maps.routeoptimization.v1.Shipment shipments = 1;
*/
java.util.List extends com.google.maps.routeoptimization.v1.ShipmentOrBuilder>
getShipmentsOrBuilderList();
/**
*
*
*
* Set of shipments which must be performed in the model.
*
*
* repeated .google.maps.routeoptimization.v1.Shipment shipments = 1;
*/
com.google.maps.routeoptimization.v1.ShipmentOrBuilder getShipmentsOrBuilder(int index);
/**
*
*
*
* Set of vehicles which can be used to perform visits.
*
*
* repeated .google.maps.routeoptimization.v1.Vehicle vehicles = 2;
*/
java.util.List getVehiclesList();
/**
*
*
*
* Set of vehicles which can be used to perform visits.
*
*
* repeated .google.maps.routeoptimization.v1.Vehicle vehicles = 2;
*/
com.google.maps.routeoptimization.v1.Vehicle getVehicles(int index);
/**
*
*
*
* Set of vehicles which can be used to perform visits.
*
*
* repeated .google.maps.routeoptimization.v1.Vehicle vehicles = 2;
*/
int getVehiclesCount();
/**
*
*
*
* Set of vehicles which can be used to perform visits.
*
*
* repeated .google.maps.routeoptimization.v1.Vehicle vehicles = 2;
*/
java.util.List extends com.google.maps.routeoptimization.v1.VehicleOrBuilder>
getVehiclesOrBuilderList();
/**
*
*
*
* Set of vehicles which can be used to perform visits.
*
*
* repeated .google.maps.routeoptimization.v1.Vehicle vehicles = 2;
*/
com.google.maps.routeoptimization.v1.VehicleOrBuilder getVehiclesOrBuilder(int index);
/**
*
*
*
* Constrains the maximum number of active vehicles. A vehicle is active if
* its route performs at least one shipment. This can be used to limit the
* number of routes in the case where there are fewer drivers than
* vehicles and that the fleet of vehicles is heterogeneous. The optimization
* will then select the best subset of vehicles to use.
* Must be strictly positive.
*
*
* optional int32 max_active_vehicles = 4;
*
* @return Whether the maxActiveVehicles field is set.
*/
boolean hasMaxActiveVehicles();
/**
*
*
*
* Constrains the maximum number of active vehicles. A vehicle is active if
* its route performs at least one shipment. This can be used to limit the
* number of routes in the case where there are fewer drivers than
* vehicles and that the fleet of vehicles is heterogeneous. The optimization
* will then select the best subset of vehicles to use.
* Must be strictly positive.
*
*
* optional int32 max_active_vehicles = 4;
*
* @return The maxActiveVehicles.
*/
int getMaxActiveVehicles();
/**
*
*
*
* Global start and end time of the model: no times outside of this range
* can be considered valid.
*
* The model's time span must be less than a year, i.e. the `global_end_time`
* and the `global_start_time` must be within 31536000 seconds of each other.
*
* When using `cost_per_*hour` fields, you might want to set this window to a
* smaller interval to increase performance (eg. if you model a single day,
* you should set the global time limits to that day).
* If unset, 00:00:00 UTC, January 1, 1970 (i.e. seconds: 0, nanos: 0) is used
* as default.
*
*
* .google.protobuf.Timestamp global_start_time = 5;
*
* @return Whether the globalStartTime field is set.
*/
boolean hasGlobalStartTime();
/**
*
*
*
* Global start and end time of the model: no times outside of this range
* can be considered valid.
*
* The model's time span must be less than a year, i.e. the `global_end_time`
* and the `global_start_time` must be within 31536000 seconds of each other.
*
* When using `cost_per_*hour` fields, you might want to set this window to a
* smaller interval to increase performance (eg. if you model a single day,
* you should set the global time limits to that day).
* If unset, 00:00:00 UTC, January 1, 1970 (i.e. seconds: 0, nanos: 0) is used
* as default.
*
*
* .google.protobuf.Timestamp global_start_time = 5;
*
* @return The globalStartTime.
*/
com.google.protobuf.Timestamp getGlobalStartTime();
/**
*
*
*
* Global start and end time of the model: no times outside of this range
* can be considered valid.
*
* The model's time span must be less than a year, i.e. the `global_end_time`
* and the `global_start_time` must be within 31536000 seconds of each other.
*
* When using `cost_per_*hour` fields, you might want to set this window to a
* smaller interval to increase performance (eg. if you model a single day,
* you should set the global time limits to that day).
* If unset, 00:00:00 UTC, January 1, 1970 (i.e. seconds: 0, nanos: 0) is used
* as default.
*
*
* .google.protobuf.Timestamp global_start_time = 5;
*/
com.google.protobuf.TimestampOrBuilder getGlobalStartTimeOrBuilder();
/**
*
*
*
* If unset, 00:00:00 UTC, January 1, 1971 (i.e. seconds: 31536000, nanos: 0)
* is used as default.
*
*
* .google.protobuf.Timestamp global_end_time = 6;
*
* @return Whether the globalEndTime field is set.
*/
boolean hasGlobalEndTime();
/**
*
*
*
* If unset, 00:00:00 UTC, January 1, 1971 (i.e. seconds: 31536000, nanos: 0)
* is used as default.
*
*
* .google.protobuf.Timestamp global_end_time = 6;
*
* @return The globalEndTime.
*/
com.google.protobuf.Timestamp getGlobalEndTime();
/**
*
*
*
* If unset, 00:00:00 UTC, January 1, 1971 (i.e. seconds: 31536000, nanos: 0)
* is used as default.
*
*
* .google.protobuf.Timestamp global_end_time = 6;
*/
com.google.protobuf.TimestampOrBuilder getGlobalEndTimeOrBuilder();
/**
*
*
*
* The "global duration" of the overall plan is the difference between the
* earliest effective start time and the latest effective end time of
* all vehicles. Users can assign a cost per hour to that quantity to try
* and optimize for earliest job completion, for example. This cost must be in
* the same unit as
* [Shipment.penalty_cost][google.maps.routeoptimization.v1.Shipment.penalty_cost].
*
*
* double global_duration_cost_per_hour = 7;
*
* @return The globalDurationCostPerHour.
*/
double getGlobalDurationCostPerHour();
/**
*
*
*
* Specifies duration and distance matrices used in the model. If this field
* is empty, Google Maps or geodesic distances will be used instead, depending
* on the value of the `use_geodesic_distances` field. If it is not empty,
* `use_geodesic_distances` cannot be true and neither
* `duration_distance_matrix_src_tags` nor `duration_distance_matrix_dst_tags`
* can be empty.
*
* Usage examples:
*
* * There are two locations: locA and locB.
* * 1 vehicle starting its route at locA and ending it at locA.
* * 1 pickup visit request at locB.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locA" }
* shipments { pickups { tags: "locB" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_dst_tags: "locA"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrices {
* rows { # from: locA
* durations { seconds: 0 } meters: 0 # to: locA
* durations { seconds: 100 } meters: 1000 # to: locB
* }
* rows { # from: locB
* durations { seconds: 102 } meters: 990 # to: locA
* durations { seconds: 0 } meters: 0 # to: locB
* }
* }
* }
* ```
*
*
* * There are three locations: locA, locB and locC.
* * 1 vehicle starting its route at locA and ending it at locB, using
* matrix "fast".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "slow".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "fast".
* * 1 pickup visit request at locC.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locB" start_tags: "fast" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "slow" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "fast" }
* shipments { pickups { tags: "locC" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_src_tags: "locC"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrix_dst_tags: "locC"
* duration_distance_matrices {
* vehicle_start_tag: "fast"
* rows { # from: locA
* durations { seconds: 1000 } meters: 2000 # to: locB
* durations { seconds: 600 } meters: 1000 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 700 } meters: 1200 # to: locC
* }
* rows { # from: locC
* durations { seconds: 702 } meters: 1190 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* duration_distance_matrices {
* vehicle_start_tag: "slow"
* rows { # from: locA
* durations { seconds: 1800 } meters: 2001 # to: locB
* durations { seconds: 900 } meters: 1002 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 1000 } meters: 1202 # to: locC
* }
* rows { # from: locC
* durations { seconds: 1001 } meters: 1195 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* }
* ```
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix duration_distance_matrices = 8;
*
*/
java.util.List
getDurationDistanceMatricesList();
/**
*
*
*
* Specifies duration and distance matrices used in the model. If this field
* is empty, Google Maps or geodesic distances will be used instead, depending
* on the value of the `use_geodesic_distances` field. If it is not empty,
* `use_geodesic_distances` cannot be true and neither
* `duration_distance_matrix_src_tags` nor `duration_distance_matrix_dst_tags`
* can be empty.
*
* Usage examples:
*
* * There are two locations: locA and locB.
* * 1 vehicle starting its route at locA and ending it at locA.
* * 1 pickup visit request at locB.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locA" }
* shipments { pickups { tags: "locB" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_dst_tags: "locA"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrices {
* rows { # from: locA
* durations { seconds: 0 } meters: 0 # to: locA
* durations { seconds: 100 } meters: 1000 # to: locB
* }
* rows { # from: locB
* durations { seconds: 102 } meters: 990 # to: locA
* durations { seconds: 0 } meters: 0 # to: locB
* }
* }
* }
* ```
*
*
* * There are three locations: locA, locB and locC.
* * 1 vehicle starting its route at locA and ending it at locB, using
* matrix "fast".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "slow".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "fast".
* * 1 pickup visit request at locC.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locB" start_tags: "fast" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "slow" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "fast" }
* shipments { pickups { tags: "locC" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_src_tags: "locC"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrix_dst_tags: "locC"
* duration_distance_matrices {
* vehicle_start_tag: "fast"
* rows { # from: locA
* durations { seconds: 1000 } meters: 2000 # to: locB
* durations { seconds: 600 } meters: 1000 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 700 } meters: 1200 # to: locC
* }
* rows { # from: locC
* durations { seconds: 702 } meters: 1190 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* duration_distance_matrices {
* vehicle_start_tag: "slow"
* rows { # from: locA
* durations { seconds: 1800 } meters: 2001 # to: locB
* durations { seconds: 900 } meters: 1002 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 1000 } meters: 1202 # to: locC
* }
* rows { # from: locC
* durations { seconds: 1001 } meters: 1195 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* }
* ```
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix duration_distance_matrices = 8;
*
*/
com.google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix
getDurationDistanceMatrices(int index);
/**
*
*
*
* Specifies duration and distance matrices used in the model. If this field
* is empty, Google Maps or geodesic distances will be used instead, depending
* on the value of the `use_geodesic_distances` field. If it is not empty,
* `use_geodesic_distances` cannot be true and neither
* `duration_distance_matrix_src_tags` nor `duration_distance_matrix_dst_tags`
* can be empty.
*
* Usage examples:
*
* * There are two locations: locA and locB.
* * 1 vehicle starting its route at locA and ending it at locA.
* * 1 pickup visit request at locB.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locA" }
* shipments { pickups { tags: "locB" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_dst_tags: "locA"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrices {
* rows { # from: locA
* durations { seconds: 0 } meters: 0 # to: locA
* durations { seconds: 100 } meters: 1000 # to: locB
* }
* rows { # from: locB
* durations { seconds: 102 } meters: 990 # to: locA
* durations { seconds: 0 } meters: 0 # to: locB
* }
* }
* }
* ```
*
*
* * There are three locations: locA, locB and locC.
* * 1 vehicle starting its route at locA and ending it at locB, using
* matrix "fast".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "slow".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "fast".
* * 1 pickup visit request at locC.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locB" start_tags: "fast" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "slow" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "fast" }
* shipments { pickups { tags: "locC" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_src_tags: "locC"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrix_dst_tags: "locC"
* duration_distance_matrices {
* vehicle_start_tag: "fast"
* rows { # from: locA
* durations { seconds: 1000 } meters: 2000 # to: locB
* durations { seconds: 600 } meters: 1000 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 700 } meters: 1200 # to: locC
* }
* rows { # from: locC
* durations { seconds: 702 } meters: 1190 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* duration_distance_matrices {
* vehicle_start_tag: "slow"
* rows { # from: locA
* durations { seconds: 1800 } meters: 2001 # to: locB
* durations { seconds: 900 } meters: 1002 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 1000 } meters: 1202 # to: locC
* }
* rows { # from: locC
* durations { seconds: 1001 } meters: 1195 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* }
* ```
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix duration_distance_matrices = 8;
*
*/
int getDurationDistanceMatricesCount();
/**
*
*
*
* Specifies duration and distance matrices used in the model. If this field
* is empty, Google Maps or geodesic distances will be used instead, depending
* on the value of the `use_geodesic_distances` field. If it is not empty,
* `use_geodesic_distances` cannot be true and neither
* `duration_distance_matrix_src_tags` nor `duration_distance_matrix_dst_tags`
* can be empty.
*
* Usage examples:
*
* * There are two locations: locA and locB.
* * 1 vehicle starting its route at locA and ending it at locA.
* * 1 pickup visit request at locB.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locA" }
* shipments { pickups { tags: "locB" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_dst_tags: "locA"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrices {
* rows { # from: locA
* durations { seconds: 0 } meters: 0 # to: locA
* durations { seconds: 100 } meters: 1000 # to: locB
* }
* rows { # from: locB
* durations { seconds: 102 } meters: 990 # to: locA
* durations { seconds: 0 } meters: 0 # to: locB
* }
* }
* }
* ```
*
*
* * There are three locations: locA, locB and locC.
* * 1 vehicle starting its route at locA and ending it at locB, using
* matrix "fast".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "slow".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "fast".
* * 1 pickup visit request at locC.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locB" start_tags: "fast" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "slow" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "fast" }
* shipments { pickups { tags: "locC" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_src_tags: "locC"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrix_dst_tags: "locC"
* duration_distance_matrices {
* vehicle_start_tag: "fast"
* rows { # from: locA
* durations { seconds: 1000 } meters: 2000 # to: locB
* durations { seconds: 600 } meters: 1000 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 700 } meters: 1200 # to: locC
* }
* rows { # from: locC
* durations { seconds: 702 } meters: 1190 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* duration_distance_matrices {
* vehicle_start_tag: "slow"
* rows { # from: locA
* durations { seconds: 1800 } meters: 2001 # to: locB
* durations { seconds: 900 } meters: 1002 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 1000 } meters: 1202 # to: locC
* }
* rows { # from: locC
* durations { seconds: 1001 } meters: 1195 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* }
* ```
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix duration_distance_matrices = 8;
*
*/
java.util.List<
? extends
com.google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrixOrBuilder>
getDurationDistanceMatricesOrBuilderList();
/**
*
*
*
* Specifies duration and distance matrices used in the model. If this field
* is empty, Google Maps or geodesic distances will be used instead, depending
* on the value of the `use_geodesic_distances` field. If it is not empty,
* `use_geodesic_distances` cannot be true and neither
* `duration_distance_matrix_src_tags` nor `duration_distance_matrix_dst_tags`
* can be empty.
*
* Usage examples:
*
* * There are two locations: locA and locB.
* * 1 vehicle starting its route at locA and ending it at locA.
* * 1 pickup visit request at locB.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locA" }
* shipments { pickups { tags: "locB" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_dst_tags: "locA"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrices {
* rows { # from: locA
* durations { seconds: 0 } meters: 0 # to: locA
* durations { seconds: 100 } meters: 1000 # to: locB
* }
* rows { # from: locB
* durations { seconds: 102 } meters: 990 # to: locA
* durations { seconds: 0 } meters: 0 # to: locB
* }
* }
* }
* ```
*
*
* * There are three locations: locA, locB and locC.
* * 1 vehicle starting its route at locA and ending it at locB, using
* matrix "fast".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "slow".
* * 1 vehicle starting its route at locB and ending it at locB, using
* matrix "fast".
* * 1 pickup visit request at locC.
*
* ```
* model {
* vehicles { start_tags: "locA" end_tags: "locB" start_tags: "fast" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "slow" }
* vehicles { start_tags: "locB" end_tags: "locB" start_tags: "fast" }
* shipments { pickups { tags: "locC" } }
* duration_distance_matrix_src_tags: "locA"
* duration_distance_matrix_src_tags: "locB"
* duration_distance_matrix_src_tags: "locC"
* duration_distance_matrix_dst_tags: "locB"
* duration_distance_matrix_dst_tags: "locC"
* duration_distance_matrices {
* vehicle_start_tag: "fast"
* rows { # from: locA
* durations { seconds: 1000 } meters: 2000 # to: locB
* durations { seconds: 600 } meters: 1000 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 700 } meters: 1200 # to: locC
* }
* rows { # from: locC
* durations { seconds: 702 } meters: 1190 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* duration_distance_matrices {
* vehicle_start_tag: "slow"
* rows { # from: locA
* durations { seconds: 1800 } meters: 2001 # to: locB
* durations { seconds: 900 } meters: 1002 # to: locC
* }
* rows { # from: locB
* durations { seconds: 0 } meters: 0 # to: locB
* durations { seconds: 1000 } meters: 1202 # to: locC
* }
* rows { # from: locC
* durations { seconds: 1001 } meters: 1195 # to: locB
* durations { seconds: 0 } meters: 0 # to: locC
* }
* }
* }
* ```
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrix duration_distance_matrices = 8;
*
*/
com.google.maps.routeoptimization.v1.ShipmentModel.DurationDistanceMatrixOrBuilder
getDurationDistanceMatricesOrBuilder(int index);
/**
*
*
*
* Tags defining the sources of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j)` defines durations and distances
* from visits with tag `duration_distance_matrix_src_tags(j)` to other visits
* in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_src_tags = 9;
*
* @return A list containing the durationDistanceMatrixSrcTags.
*/
java.util.List getDurationDistanceMatrixSrcTagsList();
/**
*
*
*
* Tags defining the sources of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j)` defines durations and distances
* from visits with tag `duration_distance_matrix_src_tags(j)` to other visits
* in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_src_tags = 9;
*
* @return The count of durationDistanceMatrixSrcTags.
*/
int getDurationDistanceMatrixSrcTagsCount();
/**
*
*
*
* Tags defining the sources of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j)` defines durations and distances
* from visits with tag `duration_distance_matrix_src_tags(j)` to other visits
* in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_src_tags = 9;
*
* @param index The index of the element to return.
* @return The durationDistanceMatrixSrcTags at the given index.
*/
java.lang.String getDurationDistanceMatrixSrcTags(int index);
/**
*
*
*
* Tags defining the sources of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j)` defines durations and distances
* from visits with tag `duration_distance_matrix_src_tags(j)` to other visits
* in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_src_tags = 9;
*
* @param index The index of the value to return.
* @return The bytes of the durationDistanceMatrixSrcTags at the given index.
*/
com.google.protobuf.ByteString getDurationDistanceMatrixSrcTagsBytes(int index);
/**
*
*
*
* Tags defining the destinations of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j).durations(k)` (resp.
* `duration_distance_matrices(i).rows(j).meters(k))` defines the duration
* (resp. the distance) of the travel from visits with tag
* `duration_distance_matrix_src_tags(j)` to visits with tag
* `duration_distance_matrix_dst_tags(k)` in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_dst_tags = 10;
*
* @return A list containing the durationDistanceMatrixDstTags.
*/
java.util.List getDurationDistanceMatrixDstTagsList();
/**
*
*
*
* Tags defining the destinations of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j).durations(k)` (resp.
* `duration_distance_matrices(i).rows(j).meters(k))` defines the duration
* (resp. the distance) of the travel from visits with tag
* `duration_distance_matrix_src_tags(j)` to visits with tag
* `duration_distance_matrix_dst_tags(k)` in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_dst_tags = 10;
*
* @return The count of durationDistanceMatrixDstTags.
*/
int getDurationDistanceMatrixDstTagsCount();
/**
*
*
*
* Tags defining the destinations of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j).durations(k)` (resp.
* `duration_distance_matrices(i).rows(j).meters(k))` defines the duration
* (resp. the distance) of the travel from visits with tag
* `duration_distance_matrix_src_tags(j)` to visits with tag
* `duration_distance_matrix_dst_tags(k)` in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_dst_tags = 10;
*
* @param index The index of the element to return.
* @return The durationDistanceMatrixDstTags at the given index.
*/
java.lang.String getDurationDistanceMatrixDstTags(int index);
/**
*
*
*
* Tags defining the destinations of the duration and distance matrices;
* `duration_distance_matrices(i).rows(j).durations(k)` (resp.
* `duration_distance_matrices(i).rows(j).meters(k))` defines the duration
* (resp. the distance) of the travel from visits with tag
* `duration_distance_matrix_src_tags(j)` to visits with tag
* `duration_distance_matrix_dst_tags(k)` in matrix i.
*
* Tags correspond to
* [VisitRequest.tags][google.maps.routeoptimization.v1.Shipment.VisitRequest.tags]
* or
* [Vehicle.start_tags][google.maps.routeoptimization.v1.Vehicle.start_tags].
* A given `VisitRequest` or `Vehicle` must match exactly one tag in this
* field. Note that a `Vehicle`'s source, destination and matrix tags may be
* the same; similarly a `VisitRequest`'s source and destination tags may be
* the same. All tags must be different and cannot be empty strings. If this
* field is not empty, then `duration_distance_matrices` must not be empty.
*
*
* repeated string duration_distance_matrix_dst_tags = 10;
*
* @param index The index of the value to return.
* @return The bytes of the durationDistanceMatrixDstTags at the given index.
*/
com.google.protobuf.ByteString getDurationDistanceMatrixDstTagsBytes(int index);
/**
*
*
*
* Transition attributes added to the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.TransitionAttributes transition_attributes = 11;
*
*/
java.util.List
getTransitionAttributesList();
/**
*
*
*
* Transition attributes added to the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.TransitionAttributes transition_attributes = 11;
*
*/
com.google.maps.routeoptimization.v1.TransitionAttributes getTransitionAttributes(int index);
/**
*
*
*
* Transition attributes added to the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.TransitionAttributes transition_attributes = 11;
*
*/
int getTransitionAttributesCount();
/**
*
*
*
* Transition attributes added to the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.TransitionAttributes transition_attributes = 11;
*
*/
java.util.List extends com.google.maps.routeoptimization.v1.TransitionAttributesOrBuilder>
getTransitionAttributesOrBuilderList();
/**
*
*
*
* Transition attributes added to the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.TransitionAttributes transition_attributes = 11;
*
*/
com.google.maps.routeoptimization.v1.TransitionAttributesOrBuilder
getTransitionAttributesOrBuilder(int index);
/**
*
*
*
* Sets of incompatible shipment_types (see `ShipmentTypeIncompatibility`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeIncompatibility shipment_type_incompatibilities = 12;
*
*/
java.util.List
getShipmentTypeIncompatibilitiesList();
/**
*
*
*
* Sets of incompatible shipment_types (see `ShipmentTypeIncompatibility`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeIncompatibility shipment_type_incompatibilities = 12;
*
*/
com.google.maps.routeoptimization.v1.ShipmentTypeIncompatibility getShipmentTypeIncompatibilities(
int index);
/**
*
*
*
* Sets of incompatible shipment_types (see `ShipmentTypeIncompatibility`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeIncompatibility shipment_type_incompatibilities = 12;
*
*/
int getShipmentTypeIncompatibilitiesCount();
/**
*
*
*
* Sets of incompatible shipment_types (see `ShipmentTypeIncompatibility`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeIncompatibility shipment_type_incompatibilities = 12;
*
*/
java.util.List<
? extends com.google.maps.routeoptimization.v1.ShipmentTypeIncompatibilityOrBuilder>
getShipmentTypeIncompatibilitiesOrBuilderList();
/**
*
*
*
* Sets of incompatible shipment_types (see `ShipmentTypeIncompatibility`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeIncompatibility shipment_type_incompatibilities = 12;
*
*/
com.google.maps.routeoptimization.v1.ShipmentTypeIncompatibilityOrBuilder
getShipmentTypeIncompatibilitiesOrBuilder(int index);
/**
*
*
*
* Sets of `shipment_type` requirements (see `ShipmentTypeRequirement`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeRequirement shipment_type_requirements = 13;
*
*/
java.util.List
getShipmentTypeRequirementsList();
/**
*
*
*
* Sets of `shipment_type` requirements (see `ShipmentTypeRequirement`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeRequirement shipment_type_requirements = 13;
*
*/
com.google.maps.routeoptimization.v1.ShipmentTypeRequirement getShipmentTypeRequirements(
int index);
/**
*
*
*
* Sets of `shipment_type` requirements (see `ShipmentTypeRequirement`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeRequirement shipment_type_requirements = 13;
*
*/
int getShipmentTypeRequirementsCount();
/**
*
*
*
* Sets of `shipment_type` requirements (see `ShipmentTypeRequirement`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeRequirement shipment_type_requirements = 13;
*
*/
java.util.List extends com.google.maps.routeoptimization.v1.ShipmentTypeRequirementOrBuilder>
getShipmentTypeRequirementsOrBuilderList();
/**
*
*
*
* Sets of `shipment_type` requirements (see `ShipmentTypeRequirement`).
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentTypeRequirement shipment_type_requirements = 13;
*
*/
com.google.maps.routeoptimization.v1.ShipmentTypeRequirementOrBuilder
getShipmentTypeRequirementsOrBuilder(int index);
/**
*
*
*
* Set of precedence rules which must be enforced in the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule precedence_rules = 14;
*
*/
java.util.List
getPrecedenceRulesList();
/**
*
*
*
* Set of precedence rules which must be enforced in the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule precedence_rules = 14;
*
*/
com.google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule getPrecedenceRules(int index);
/**
*
*
*
* Set of precedence rules which must be enforced in the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule precedence_rules = 14;
*
*/
int getPrecedenceRulesCount();
/**
*
*
*
* Set of precedence rules which must be enforced in the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule precedence_rules = 14;
*
*/
java.util.List<
? extends com.google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRuleOrBuilder>
getPrecedenceRulesOrBuilderList();
/**
*
*
*
* Set of precedence rules which must be enforced in the model.
*
*
*
* repeated .google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRule precedence_rules = 14;
*
*/
com.google.maps.routeoptimization.v1.ShipmentModel.PrecedenceRuleOrBuilder
getPrecedenceRulesOrBuilder(int index);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy