1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/maps/fleetengine/v1/trips.proto 20 21package fleetengine 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 latlng "google.golang.org/genproto/googleapis/type/latlng" 29 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 30 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 31 durationpb "google.golang.org/protobuf/types/known/durationpb" 32 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 33 wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" 34) 35 36const ( 37 // Verify that this generated code is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 39 // Verify that runtime/protoimpl is sufficiently up-to-date. 40 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 41) 42 43// The status of a trip indicating its progression. 44type TripStatus int32 45 46const ( 47 // Default, used for unspecified or unrecognized trip status. 48 TripStatus_UNKNOWN_TRIP_STATUS TripStatus = 0 49 // Newly created trip. 50 TripStatus_NEW TripStatus = 1 51 // The driver is on their way to the pickup point. 52 TripStatus_ENROUTE_TO_PICKUP TripStatus = 2 53 // The driver has arrived at the pickup point. 54 TripStatus_ARRIVED_AT_PICKUP TripStatus = 3 55 // The driver has arrived at an intermediate destination and is waiting for 56 // the rider. 57 TripStatus_ARRIVED_AT_INTERMEDIATE_DESTINATION TripStatus = 7 58 // The driver is on their way to an intermediate destination 59 // (not the dropoff point). 60 TripStatus_ENROUTE_TO_INTERMEDIATE_DESTINATION TripStatus = 8 61 // The driver has picked up the rider and is on their way to the 62 // next destination. 63 TripStatus_ENROUTE_TO_DROPOFF TripStatus = 4 64 // The rider has been dropped off and the trip is complete. 65 TripStatus_COMPLETE TripStatus = 5 66 // The trip was canceled prior to pickup by the driver, rider, or 67 // rideshare provider. 68 TripStatus_CANCELED TripStatus = 6 69) 70 71// Enum value maps for TripStatus. 72var ( 73 TripStatus_name = map[int32]string{ 74 0: "UNKNOWN_TRIP_STATUS", 75 1: "NEW", 76 2: "ENROUTE_TO_PICKUP", 77 3: "ARRIVED_AT_PICKUP", 78 7: "ARRIVED_AT_INTERMEDIATE_DESTINATION", 79 8: "ENROUTE_TO_INTERMEDIATE_DESTINATION", 80 4: "ENROUTE_TO_DROPOFF", 81 5: "COMPLETE", 82 6: "CANCELED", 83 } 84 TripStatus_value = map[string]int32{ 85 "UNKNOWN_TRIP_STATUS": 0, 86 "NEW": 1, 87 "ENROUTE_TO_PICKUP": 2, 88 "ARRIVED_AT_PICKUP": 3, 89 "ARRIVED_AT_INTERMEDIATE_DESTINATION": 7, 90 "ENROUTE_TO_INTERMEDIATE_DESTINATION": 8, 91 "ENROUTE_TO_DROPOFF": 4, 92 "COMPLETE": 5, 93 "CANCELED": 6, 94 } 95) 96 97func (x TripStatus) Enum() *TripStatus { 98 p := new(TripStatus) 99 *p = x 100 return p 101} 102 103func (x TripStatus) String() string { 104 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 105} 106 107func (TripStatus) Descriptor() protoreflect.EnumDescriptor { 108 return file_google_maps_fleetengine_v1_trips_proto_enumTypes[0].Descriptor() 109} 110 111func (TripStatus) Type() protoreflect.EnumType { 112 return &file_google_maps_fleetengine_v1_trips_proto_enumTypes[0] 113} 114 115func (x TripStatus) Number() protoreflect.EnumNumber { 116 return protoreflect.EnumNumber(x) 117} 118 119// Deprecated: Use TripStatus.Descriptor instead. 120func (TripStatus) EnumDescriptor() ([]byte, []int) { 121 return file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP(), []int{0} 122} 123 124// A set of values that indicate upon which platform the request was issued. 125type BillingPlatformIdentifier int32 126 127const ( 128 // Default. Used for unspecified platforms. 129 BillingPlatformIdentifier_BILLING_PLATFORM_IDENTIFIER_UNSPECIFIED BillingPlatformIdentifier = 0 130 // The platform is a client server. 131 BillingPlatformIdentifier_SERVER BillingPlatformIdentifier = 1 132 // The platform is a web browser. 133 BillingPlatformIdentifier_WEB BillingPlatformIdentifier = 2 134 // The platform is an Android mobile device. 135 BillingPlatformIdentifier_ANDROID BillingPlatformIdentifier = 3 136 // The platform is an IOS mobile device. 137 BillingPlatformIdentifier_IOS BillingPlatformIdentifier = 4 138 // Other platforms that are not listed in this enumeration. 139 BillingPlatformIdentifier_OTHERS BillingPlatformIdentifier = 5 140) 141 142// Enum value maps for BillingPlatformIdentifier. 143var ( 144 BillingPlatformIdentifier_name = map[int32]string{ 145 0: "BILLING_PLATFORM_IDENTIFIER_UNSPECIFIED", 146 1: "SERVER", 147 2: "WEB", 148 3: "ANDROID", 149 4: "IOS", 150 5: "OTHERS", 151 } 152 BillingPlatformIdentifier_value = map[string]int32{ 153 "BILLING_PLATFORM_IDENTIFIER_UNSPECIFIED": 0, 154 "SERVER": 1, 155 "WEB": 2, 156 "ANDROID": 3, 157 "IOS": 4, 158 "OTHERS": 5, 159 } 160) 161 162func (x BillingPlatformIdentifier) Enum() *BillingPlatformIdentifier { 163 p := new(BillingPlatformIdentifier) 164 *p = x 165 return p 166} 167 168func (x BillingPlatformIdentifier) String() string { 169 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 170} 171 172func (BillingPlatformIdentifier) Descriptor() protoreflect.EnumDescriptor { 173 return file_google_maps_fleetengine_v1_trips_proto_enumTypes[1].Descriptor() 174} 175 176func (BillingPlatformIdentifier) Type() protoreflect.EnumType { 177 return &file_google_maps_fleetengine_v1_trips_proto_enumTypes[1] 178} 179 180func (x BillingPlatformIdentifier) Number() protoreflect.EnumNumber { 181 return protoreflect.EnumNumber(x) 182} 183 184// Deprecated: Use BillingPlatformIdentifier.Descriptor instead. 185func (BillingPlatformIdentifier) EnumDescriptor() ([]byte, []int) { 186 return file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP(), []int{1} 187} 188 189// Selector for different sets of Trip fields in a `GetTrip` response. See 190// [AIP-157](https://google.aip.dev/157) for context. Additional views are 191// likely to be added. 192type TripView int32 193 194const ( 195 // The default value. For backwards-compatibility, the API will default to an 196 // SDK view. To ensure stability and support, customers are 197 // advised to select a `TripView` other than `SDK`. 198 TripView_TRIP_VIEW_UNSPECIFIED TripView = 0 199 // Includes fields that may not be interpretable or supportable using 200 // publicly available libraries. 201 TripView_SDK TripView = 1 202 // Trip fields are populated for the Journey Sharing use case. This view is 203 // intended for server-to-server communications. 204 TripView_JOURNEY_SHARING_V1S TripView = 2 205) 206 207// Enum value maps for TripView. 208var ( 209 TripView_name = map[int32]string{ 210 0: "TRIP_VIEW_UNSPECIFIED", 211 1: "SDK", 212 2: "JOURNEY_SHARING_V1S", 213 } 214 TripView_value = map[string]int32{ 215 "TRIP_VIEW_UNSPECIFIED": 0, 216 "SDK": 1, 217 "JOURNEY_SHARING_V1S": 2, 218 } 219) 220 221func (x TripView) Enum() *TripView { 222 p := new(TripView) 223 *p = x 224 return p 225} 226 227func (x TripView) String() string { 228 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 229} 230 231func (TripView) Descriptor() protoreflect.EnumDescriptor { 232 return file_google_maps_fleetengine_v1_trips_proto_enumTypes[2].Descriptor() 233} 234 235func (TripView) Type() protoreflect.EnumType { 236 return &file_google_maps_fleetengine_v1_trips_proto_enumTypes[2] 237} 238 239func (x TripView) Number() protoreflect.EnumNumber { 240 return protoreflect.EnumNumber(x) 241} 242 243// Deprecated: Use TripView.Descriptor instead. 244func (TripView) EnumDescriptor() ([]byte, []int) { 245 return file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP(), []int{2} 246} 247 248// Trip metadata. 249type Trip struct { 250 state protoimpl.MessageState 251 sizeCache protoimpl.SizeCache 252 unknownFields protoimpl.UnknownFields 253 254 // In the format "providers/{provider}/trips/{trip}" 255 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 256 // ID of the vehicle making this trip. 257 VehicleId string `protobuf:"bytes,2,opt,name=vehicle_id,json=vehicleId,proto3" json:"vehicle_id,omitempty"` 258 // Current status of the trip. 259 TripStatus TripStatus `protobuf:"varint,3,opt,name=trip_status,json=tripStatus,proto3,enum=maps.fleetengine.v1.TripStatus" json:"trip_status,omitempty"` 260 // The type of the trip. 261 TripType TripType `protobuf:"varint,4,opt,name=trip_type,json=tripType,proto3,enum=maps.fleetengine.v1.TripType" json:"trip_type,omitempty"` 262 // Location where customer indicates they will be picked up. 263 PickupPoint *TerminalLocation `protobuf:"bytes,5,opt,name=pickup_point,json=pickupPoint,proto3" json:"pickup_point,omitempty"` 264 // Input only. The actual location when and where customer was picked up. 265 // This field is for provider to provide feedback on actual pickup 266 // information. 267 ActualPickupPoint *StopLocation `protobuf:"bytes,22,opt,name=actual_pickup_point,json=actualPickupPoint,proto3" json:"actual_pickup_point,omitempty"` 268 // Input only. The actual time and location of the driver arrival at 269 // the pickup point. 270 // This field is for provider to provide feedback on actual arrival 271 // information at the pickup point. 272 ActualPickupArrivalPoint *StopLocation `protobuf:"bytes,32,opt,name=actual_pickup_arrival_point,json=actualPickupArrivalPoint,proto3" json:"actual_pickup_arrival_point,omitempty"` 273 // Either the estimated future time when the rider(s) will be picked up, or 274 // the actual time when they were picked up. 275 PickupTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=pickup_time,json=pickupTime,proto3" json:"pickup_time,omitempty"` 276 // Intermediate stops in order that the trip requests (in addition 277 // to pickup and dropoff). Initially this will not be supported for shared 278 // trips. 279 IntermediateDestinations []*TerminalLocation `protobuf:"bytes,14,rep,name=intermediate_destinations,json=intermediateDestinations,proto3" json:"intermediate_destinations,omitempty"` 280 // Indicates the last time the Trip.intermediate_destinations was modified. 281 // Your server should cache this value and pass it in UpdateTripRequest 282 // when update Trip.intermediate_destination_index to ensure the 283 // Trip.intermediate_destinations is not changed. 284 IntermediateDestinationsVersion *timestamppb.Timestamp `protobuf:"bytes,25,opt,name=intermediate_destinations_version,json=intermediateDestinationsVersion,proto3" json:"intermediate_destinations_version,omitempty"` 285 // When TripStatus is ENROUTE_TO_INTERMEDIATE_DESTINATION, a number between 286 // [0..N-1] indicating which intermediate destination the vehicle will cross 287 // next. 288 // When TripStatus is ARRIVED_AT_INTERMEDIATE_DESTINATION, a number between 289 // [0..N-1] indicating which intermediate destination the vehicle is at. 290 // The provider sets this value. If there are no intermediate_destinations, 291 // this field is ignored. 292 IntermediateDestinationIndex int32 `protobuf:"varint,15,opt,name=intermediate_destination_index,json=intermediateDestinationIndex,proto3" json:"intermediate_destination_index,omitempty"` 293 // Input only. The actual time and location of the driver's arrival at 294 // an intermediate destination. 295 // This field is for provider to provide feedback on actual arriaval 296 // information at intermediate destinations. 297 ActualIntermediateDestinationArrivalPoints []*StopLocation `protobuf:"bytes,33,rep,name=actual_intermediate_destination_arrival_points,json=actualIntermediateDestinationArrivalPoints,proto3" json:"actual_intermediate_destination_arrival_points,omitempty"` 298 // Input only. The actual time and location when and where the customer was picked up from 299 // an intermediate destination. 300 // This field is for provider to provide feedback on actual pickup 301 // information at intermediate destinations. 302 ActualIntermediateDestinations []*StopLocation `protobuf:"bytes,34,rep,name=actual_intermediate_destinations,json=actualIntermediateDestinations,proto3" json:"actual_intermediate_destinations,omitempty"` 303 // Location where customer indicates they will be dropped off. 304 DropoffPoint *TerminalLocation `protobuf:"bytes,7,opt,name=dropoff_point,json=dropoffPoint,proto3" json:"dropoff_point,omitempty"` 305 // Input only. The actual time and location when and where customer was dropped off. 306 // This field is for provider to provide feedback on actual dropoff 307 // information. 308 ActualDropoffPoint *StopLocation `protobuf:"bytes,23,opt,name=actual_dropoff_point,json=actualDropoffPoint,proto3" json:"actual_dropoff_point,omitempty"` 309 // Either the estimated future time when the rider(s) will be dropped off at 310 // the final destination, or the actual time when they were dropped off. 311 DropoffTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=dropoff_time,json=dropoffTime,proto3" json:"dropoff_time,omitempty"` 312 // Output only. The full path from the current location to the dropoff point, inclusive. 313 // If this is a shared ride, this path could include waypoints from other 314 // trips. 315 RemainingWaypoints []*TripWaypoint `protobuf:"bytes,16,rep,name=remaining_waypoints,json=remainingWaypoints,proto3" json:"remaining_waypoints,omitempty"` 316 // This field supports manual ordering of the waypoints for the trip. 317 // It contains all of the remaining waypoints of vehicle assigned, as well as 318 // the pickup and drop-off waypoints for this trip. 319 // If the trip hasn't been assigned to a vehicle, then this field is ignored. 320 // For privacy reasons, this field is only populated by the server on 321 // UpdateTrip and CreateTrip calls, and NOT on GetTrip calls. 322 VehicleWaypoints []*TripWaypoint `protobuf:"bytes,20,rep,name=vehicle_waypoints,json=vehicleWaypoints,proto3" json:"vehicle_waypoints,omitempty"` 323 // Anticipated route for this trip to the first entry in remaining_waypoints. 324 // If back_to_back or shared trips are enabled, the waypoint may belong to a 325 // different trip. 326 Route []*latlng.LatLng `protobuf:"bytes,9,rep,name=route,proto3" json:"route,omitempty"` 327 // The waypoint where current_route_segment ends. This can be supplied by 328 // drivers on UpdateVehicle calls either as a full trip waypoint, a waypoint 329 // latlng, or as a the last latlng of the current_route_segment. FleetEngine 330 // will then do its best to interpolate to an actual waypoint if it is not 331 // fully specified. It will be returned in GetTrip calls. It is not respected 332 // in Create/Update Trip calls. 333 CurrentRouteSegmentEndPoint *TripWaypoint `protobuf:"bytes,24,opt,name=current_route_segment_end_point,json=currentRouteSegmentEndPoint,proto3" json:"current_route_segment_end_point,omitempty"` 334 // The remaining driving distance in Trip.current_route_segment field. 335 // This field facilitates journey sharing between a driver and rider and 336 // Fleet Engine does not update it. Your driver app is responsible for setting 337 // field on all of its current trips by passing 338 // Vehicle.remaining_distance_meters to an Vehicle.update call. 339 // The value is unspecified if the trip is not assigned to a vehicle, or the 340 // trip is inactive (completed or cancelled), or driver hasn't updated this 341 // value. 342 RemainingDistanceMeters *wrapperspb.Int32Value `protobuf:"bytes,12,opt,name=remaining_distance_meters,json=remainingDistanceMeters,proto3" json:"remaining_distance_meters,omitempty"` 343 // Output only. The ETA to the next waypoint (the first entry in the 344 // Trip.remaining_waypoints field). This field facilitates journey sharing 345 // between a driver and a consumer. Fleet Engine does not update this value. 346 // Your driver app is responsible for setting this field by passing 347 // Vehicle.remaining_time_seconds in a call to Vehicle.update. FleetEngine 348 // converts the Vehicle.remaining_time_seconds to Trip.eta_to_first_waypoint, 349 // and returns it to the rider. The value is unspecified if the trip is not 350 // assigned to a vehicle, or the trip is inactive (completed or cancelled), or 351 // driver hasn't updated this value. 352 EtaToFirstWaypoint *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=eta_to_first_waypoint,json=etaToFirstWaypoint,proto3" json:"eta_to_first_waypoint,omitempty"` 353 // Output only. The duration from when the Trip data is returned to the time in 354 // Trip.eta_to_first_waypoint. 355 RemainingTimeToFirstWaypoint *durationpb.Duration `protobuf:"bytes,27,opt,name=remaining_time_to_first_waypoint,json=remainingTimeToFirstWaypoint,proto3" json:"remaining_time_to_first_waypoint,omitempty"` 356 // Indicates the last time that `remaining_waypoints` was changed (a 357 // waypoint was added, removed, or changed). 358 RemainingWaypointsVersion *timestamppb.Timestamp `protobuf:"bytes,19,opt,name=remaining_waypoints_version,json=remainingWaypointsVersion,proto3" json:"remaining_waypoints_version,omitempty"` 359 // Indicates the last time the remaining_waypoints.path_to_waypoint and 360 // remaining_waypoints.traffic_to_waypoint were modified. Your client app 361 // should cache this value and pass it in GetTripRequest to ensure the 362 // paths and traffic for remaining_waypoints are only returned if updated. 363 RemainingWaypointsRouteVersion *timestamppb.Timestamp `protobuf:"bytes,29,opt,name=remaining_waypoints_route_version,json=remainingWaypointsRouteVersion,proto3" json:"remaining_waypoints_route_version,omitempty"` 364 // Indicates the number of passengers on this trip and does not include the 365 // driver. A vehicle must have available_capacity to be returned 366 // in SearchTrips. 367 NumberOfPassengers int32 `protobuf:"varint,10,opt,name=number_of_passengers,json=numberOfPassengers,proto3" json:"number_of_passengers,omitempty"` 368 // Indicates the last reported location of the vehicle along the route. 369 LastLocation *VehicleLocation `protobuf:"bytes,11,opt,name=last_location,json=lastLocation,proto3" json:"last_location,omitempty"` 370 // Indicates whether the vehicle's last_location can be snapped to 371 // the current_route_segment. False if last_location or current_route_segment 372 // doesn't exist. 373 // It is computed by Fleet Engine. Any update from clients will be ignored. 374 LastLocationSnappable bool `protobuf:"varint,26,opt,name=last_location_snappable,json=lastLocationSnappable,proto3" json:"last_location_snappable,omitempty"` 375 // The subset of Trip fields that are populated and how they should be 376 // interpreted. 377 View TripView `protobuf:"varint,31,opt,name=view,proto3,enum=maps.fleetengine.v1.TripView" json:"view,omitempty"` 378} 379 380func (x *Trip) Reset() { 381 *x = Trip{} 382 if protoimpl.UnsafeEnabled { 383 mi := &file_google_maps_fleetengine_v1_trips_proto_msgTypes[0] 384 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 385 ms.StoreMessageInfo(mi) 386 } 387} 388 389func (x *Trip) String() string { 390 return protoimpl.X.MessageStringOf(x) 391} 392 393func (*Trip) ProtoMessage() {} 394 395func (x *Trip) ProtoReflect() protoreflect.Message { 396 mi := &file_google_maps_fleetengine_v1_trips_proto_msgTypes[0] 397 if protoimpl.UnsafeEnabled && x != nil { 398 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 399 if ms.LoadMessageInfo() == nil { 400 ms.StoreMessageInfo(mi) 401 } 402 return ms 403 } 404 return mi.MessageOf(x) 405} 406 407// Deprecated: Use Trip.ProtoReflect.Descriptor instead. 408func (*Trip) Descriptor() ([]byte, []int) { 409 return file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP(), []int{0} 410} 411 412func (x *Trip) GetName() string { 413 if x != nil { 414 return x.Name 415 } 416 return "" 417} 418 419func (x *Trip) GetVehicleId() string { 420 if x != nil { 421 return x.VehicleId 422 } 423 return "" 424} 425 426func (x *Trip) GetTripStatus() TripStatus { 427 if x != nil { 428 return x.TripStatus 429 } 430 return TripStatus_UNKNOWN_TRIP_STATUS 431} 432 433func (x *Trip) GetTripType() TripType { 434 if x != nil { 435 return x.TripType 436 } 437 return TripType_UNKNOWN_TRIP_TYPE 438} 439 440func (x *Trip) GetPickupPoint() *TerminalLocation { 441 if x != nil { 442 return x.PickupPoint 443 } 444 return nil 445} 446 447func (x *Trip) GetActualPickupPoint() *StopLocation { 448 if x != nil { 449 return x.ActualPickupPoint 450 } 451 return nil 452} 453 454func (x *Trip) GetActualPickupArrivalPoint() *StopLocation { 455 if x != nil { 456 return x.ActualPickupArrivalPoint 457 } 458 return nil 459} 460 461func (x *Trip) GetPickupTime() *timestamppb.Timestamp { 462 if x != nil { 463 return x.PickupTime 464 } 465 return nil 466} 467 468func (x *Trip) GetIntermediateDestinations() []*TerminalLocation { 469 if x != nil { 470 return x.IntermediateDestinations 471 } 472 return nil 473} 474 475func (x *Trip) GetIntermediateDestinationsVersion() *timestamppb.Timestamp { 476 if x != nil { 477 return x.IntermediateDestinationsVersion 478 } 479 return nil 480} 481 482func (x *Trip) GetIntermediateDestinationIndex() int32 { 483 if x != nil { 484 return x.IntermediateDestinationIndex 485 } 486 return 0 487} 488 489func (x *Trip) GetActualIntermediateDestinationArrivalPoints() []*StopLocation { 490 if x != nil { 491 return x.ActualIntermediateDestinationArrivalPoints 492 } 493 return nil 494} 495 496func (x *Trip) GetActualIntermediateDestinations() []*StopLocation { 497 if x != nil { 498 return x.ActualIntermediateDestinations 499 } 500 return nil 501} 502 503func (x *Trip) GetDropoffPoint() *TerminalLocation { 504 if x != nil { 505 return x.DropoffPoint 506 } 507 return nil 508} 509 510func (x *Trip) GetActualDropoffPoint() *StopLocation { 511 if x != nil { 512 return x.ActualDropoffPoint 513 } 514 return nil 515} 516 517func (x *Trip) GetDropoffTime() *timestamppb.Timestamp { 518 if x != nil { 519 return x.DropoffTime 520 } 521 return nil 522} 523 524func (x *Trip) GetRemainingWaypoints() []*TripWaypoint { 525 if x != nil { 526 return x.RemainingWaypoints 527 } 528 return nil 529} 530 531func (x *Trip) GetVehicleWaypoints() []*TripWaypoint { 532 if x != nil { 533 return x.VehicleWaypoints 534 } 535 return nil 536} 537 538func (x *Trip) GetRoute() []*latlng.LatLng { 539 if x != nil { 540 return x.Route 541 } 542 return nil 543} 544 545func (x *Trip) GetCurrentRouteSegmentEndPoint() *TripWaypoint { 546 if x != nil { 547 return x.CurrentRouteSegmentEndPoint 548 } 549 return nil 550} 551 552func (x *Trip) GetRemainingDistanceMeters() *wrapperspb.Int32Value { 553 if x != nil { 554 return x.RemainingDistanceMeters 555 } 556 return nil 557} 558 559func (x *Trip) GetEtaToFirstWaypoint() *timestamppb.Timestamp { 560 if x != nil { 561 return x.EtaToFirstWaypoint 562 } 563 return nil 564} 565 566func (x *Trip) GetRemainingTimeToFirstWaypoint() *durationpb.Duration { 567 if x != nil { 568 return x.RemainingTimeToFirstWaypoint 569 } 570 return nil 571} 572 573func (x *Trip) GetRemainingWaypointsVersion() *timestamppb.Timestamp { 574 if x != nil { 575 return x.RemainingWaypointsVersion 576 } 577 return nil 578} 579 580func (x *Trip) GetRemainingWaypointsRouteVersion() *timestamppb.Timestamp { 581 if x != nil { 582 return x.RemainingWaypointsRouteVersion 583 } 584 return nil 585} 586 587func (x *Trip) GetNumberOfPassengers() int32 { 588 if x != nil { 589 return x.NumberOfPassengers 590 } 591 return 0 592} 593 594func (x *Trip) GetLastLocation() *VehicleLocation { 595 if x != nil { 596 return x.LastLocation 597 } 598 return nil 599} 600 601func (x *Trip) GetLastLocationSnappable() bool { 602 if x != nil { 603 return x.LastLocationSnappable 604 } 605 return false 606} 607 608func (x *Trip) GetView() TripView { 609 if x != nil { 610 return x.View 611 } 612 return TripView_TRIP_VIEW_UNSPECIFIED 613} 614 615// The actual location where a stop (pickup/dropoff) happened. 616type StopLocation struct { 617 state protoimpl.MessageState 618 sizeCache protoimpl.SizeCache 619 unknownFields protoimpl.UnknownFields 620 621 // Required. Denotes the actual location. 622 Point *latlng.LatLng `protobuf:"bytes,1,opt,name=point,proto3" json:"point,omitempty"` 623 // The timestamp when the location was measured. 624 Timestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` 625 // Indicates when the stop actually happened. 626 StopTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=stop_time,json=stopTime,proto3" json:"stop_time,omitempty"` 627} 628 629func (x *StopLocation) Reset() { 630 *x = StopLocation{} 631 if protoimpl.UnsafeEnabled { 632 mi := &file_google_maps_fleetengine_v1_trips_proto_msgTypes[1] 633 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 634 ms.StoreMessageInfo(mi) 635 } 636} 637 638func (x *StopLocation) String() string { 639 return protoimpl.X.MessageStringOf(x) 640} 641 642func (*StopLocation) ProtoMessage() {} 643 644func (x *StopLocation) ProtoReflect() protoreflect.Message { 645 mi := &file_google_maps_fleetengine_v1_trips_proto_msgTypes[1] 646 if protoimpl.UnsafeEnabled && x != nil { 647 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 648 if ms.LoadMessageInfo() == nil { 649 ms.StoreMessageInfo(mi) 650 } 651 return ms 652 } 653 return mi.MessageOf(x) 654} 655 656// Deprecated: Use StopLocation.ProtoReflect.Descriptor instead. 657func (*StopLocation) Descriptor() ([]byte, []int) { 658 return file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP(), []int{1} 659} 660 661func (x *StopLocation) GetPoint() *latlng.LatLng { 662 if x != nil { 663 return x.Point 664 } 665 return nil 666} 667 668func (x *StopLocation) GetTimestamp() *timestamppb.Timestamp { 669 if x != nil { 670 return x.Timestamp 671 } 672 return nil 673} 674 675func (x *StopLocation) GetStopTime() *timestamppb.Timestamp { 676 if x != nil { 677 return x.StopTime 678 } 679 return nil 680} 681 682var File_google_maps_fleetengine_v1_trips_proto protoreflect.FileDescriptor 683 684var file_google_maps_fleetengine_v1_trips_proto_rawDesc = []byte{ 685 0x0a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 686 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x72, 0x69, 687 0x70, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 688 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 689 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 690 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 691 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 692 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 693 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 694 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 695 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 696 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 697 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 698 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 699 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 700 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 701 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 702 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x6c, 0x61, 0x74, 0x6c, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 703 0x74, 0x6f, 0x22, 0xb9, 0x12, 0x0a, 0x04, 0x54, 0x72, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 704 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 705 0x1d, 0x0a, 0x0a, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 706 0x01, 0x28, 0x09, 0x52, 0x09, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x40, 707 0x0a, 0x0b, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 708 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 709 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x53, 0x74, 710 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x74, 0x72, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 711 0x12, 0x3a, 0x0a, 0x09, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 712 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 713 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x54, 0x79, 714 0x70, 0x65, 0x52, 0x08, 0x74, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x0c, 715 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 716 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 717 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 718 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x75, 719 0x70, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x13, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 720 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x16, 0x20, 721 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 722 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 723 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x11, 0x61, 0x63, 0x74, 724 0x75, 0x61, 0x6c, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x65, 725 0x0a, 0x1b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 726 0x61, 0x72, 0x72, 0x69, 0x76, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x20, 0x20, 727 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 728 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 729 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x18, 0x61, 0x63, 0x74, 730 0x75, 0x61, 0x6c, 0x50, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x41, 0x72, 0x72, 0x69, 0x76, 0x61, 0x6c, 731 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x5f, 732 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 733 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 734 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x70, 0x69, 0x63, 0x6b, 0x75, 0x70, 0x54, 0x69, 735 0x6d, 0x65, 0x12, 0x62, 0x0a, 0x19, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 736 0x74, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 737 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 738 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x72, 0x6d, 739 0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x18, 0x69, 0x6e, 740 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 741 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x66, 0x0a, 0x21, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 742 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 743 0x6f, 0x6e, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x19, 0x20, 0x01, 0x28, 744 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 745 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x1f, 0x69, 746 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 747 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x44, 748 0x0a, 0x1e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x64, 749 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 750 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 751 0x69, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 752 0x6e, 0x64, 0x65, 0x78, 0x12, 0x8a, 0x01, 0x0a, 0x2e, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 753 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x65, 0x73, 754 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x72, 0x72, 0x69, 0x76, 0x61, 0x6c, 755 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 756 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 757 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 758 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x2a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x49, 0x6e, 0x74, 759 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 760 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x72, 0x72, 0x69, 0x76, 0x61, 0x6c, 0x50, 0x6f, 0x69, 0x6e, 0x74, 761 0x73, 0x12, 0x70, 0x0a, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 762 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 763 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 764 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 765 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 766 0xe0, 0x41, 0x04, 0x52, 0x1e, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 767 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 768 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x5f, 0x70, 769 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 770 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 771 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 772 0x6e, 0x52, 0x0c, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 773 0x58, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x64, 0x72, 0x6f, 0x70, 0x6f, 0x66, 774 0x66, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 775 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 776 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 777 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x12, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x44, 0x72, 0x6f, 778 0x70, 0x6f, 0x66, 0x66, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x0c, 0x64, 0x72, 0x6f, 779 0x70, 0x6f, 0x66, 0x66, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 780 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 781 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x64, 0x72, 0x6f, 782 0x70, 0x6f, 0x66, 0x66, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x57, 0x0a, 0x13, 0x72, 0x65, 0x6d, 0x61, 783 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 784 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 785 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 786 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x72, 787 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 788 0x73, 0x12, 0x4e, 0x0a, 0x11, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x77, 0x61, 0x79, 789 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 790 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 791 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 792 0x10, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 793 0x73, 0x12, 0x29, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 794 0x32, 0x13, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4c, 795 0x61, 0x74, 0x4c, 0x6e, 0x67, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x67, 0x0a, 0x1f, 796 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x65, 797 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 798 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 799 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 800 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x1b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 801 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x64, 802 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x19, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 803 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x65, 804 0x72, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 805 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 806 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 807 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x52, 808 0x0a, 0x15, 0x65, 0x74, 0x61, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x77, 809 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 810 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 811 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 812 0x65, 0x74, 0x61, 0x54, 0x6f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 813 0x6e, 0x74, 0x12, 0x66, 0x0a, 0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 814 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x77, 0x61, 815 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 816 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 817 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x72, 0x65, 818 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x46, 0x69, 0x72, 819 0x73, 0x74, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x5a, 0x0a, 0x1b, 0x72, 0x65, 820 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 821 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 822 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 823 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x19, 0x72, 0x65, 0x6d, 824 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x56, 825 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x65, 0x0a, 0x21, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 826 0x69, 0x6e, 0x67, 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x72, 0x6f, 827 0x75, 0x74, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x1d, 0x20, 0x01, 0x28, 828 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 829 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x1e, 0x72, 830 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 831 0x73, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 832 0x14, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x6f, 0x66, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x65, 833 0x6e, 0x67, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x6e, 0x75, 0x6d, 834 0x62, 0x65, 0x72, 0x4f, 0x66, 0x50, 0x61, 0x73, 0x73, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x12, 835 0x49, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 836 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 837 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 838 0x69, 0x63, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6c, 0x61, 839 0x73, 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x17, 0x6c, 0x61, 840 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x6e, 0x61, 0x70, 841 0x70, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x6c, 0x61, 0x73, 842 0x74, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6e, 0x61, 0x70, 0x70, 0x61, 0x62, 843 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0e, 844 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 845 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x56, 0x69, 0x65, 0x77, 0x52, 846 0x04, 0x76, 0x69, 0x65, 0x77, 0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x1f, 0x66, 0x6c, 0x65, 0x65, 847 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 848 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x72, 0x69, 0x70, 0x12, 0x21, 0x70, 0x72, 0x6f, 849 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 850 0x7d, 0x2f, 0x74, 0x72, 0x69, 0x70, 0x73, 0x2f, 0x7b, 0x74, 0x72, 0x69, 0x70, 0x7d, 0x22, 0xb1, 851 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x6f, 0x70, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 852 0x2e, 0x0a, 0x05, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 853 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4c, 0x61, 0x74, 854 0x4c, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 855 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 856 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 857 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 858 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x37, 0x0a, 0x09, 0x73, 0x74, 0x6f, 859 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 860 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 861 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x73, 0x74, 0x6f, 0x70, 0x54, 0x69, 862 0x6d, 0x65, 0x2a, 0xe2, 0x01, 0x0a, 0x0a, 0x54, 0x72, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 863 0x73, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x54, 0x52, 0x49, 864 0x50, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x45, 865 0x57, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x4e, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x5f, 0x54, 866 0x4f, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x52, 867 0x52, 0x49, 0x56, 0x45, 0x44, 0x5f, 0x41, 0x54, 0x5f, 0x50, 0x49, 0x43, 0x4b, 0x55, 0x50, 0x10, 868 0x03, 0x12, 0x27, 0x0a, 0x23, 0x41, 0x52, 0x52, 0x49, 0x56, 0x45, 0x44, 0x5f, 0x41, 0x54, 0x5f, 869 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x45, 0x53, 870 0x54, 0x49, 0x4e, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x07, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x4e, 871 0x52, 0x4f, 0x55, 0x54, 0x45, 0x5f, 0x54, 0x4f, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4d, 0x45, 872 0x44, 0x49, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x49, 0x4e, 0x41, 0x54, 0x49, 0x4f, 873 0x4e, 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x4e, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x5f, 0x54, 874 0x4f, 0x5f, 0x44, 0x52, 0x4f, 0x50, 0x4f, 0x46, 0x46, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x43, 875 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x41, 0x4e, 876 0x43, 0x45, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x2a, 0x7f, 0x0a, 0x19, 0x42, 0x69, 0x6c, 0x6c, 0x69, 877 0x6e, 0x67, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 878 0x66, 0x69, 0x65, 0x72, 0x12, 0x2b, 0x0a, 0x27, 0x42, 0x49, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x5f, 879 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x46, 880 0x49, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 881 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x01, 0x12, 0x07, 0x0a, 882 0x03, 0x57, 0x45, 0x42, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x41, 0x4e, 0x44, 0x52, 0x4f, 0x49, 883 0x44, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4f, 0x53, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 884 0x4f, 0x54, 0x48, 0x45, 0x52, 0x53, 0x10, 0x05, 0x2a, 0x47, 0x0a, 0x08, 0x54, 0x72, 0x69, 0x70, 885 0x56, 0x69, 0x65, 0x77, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x52, 0x49, 0x50, 0x5f, 0x56, 0x49, 0x45, 886 0x57, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 887 0x07, 0x0a, 0x03, 0x53, 0x44, 0x4b, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4a, 0x4f, 0x55, 0x52, 888 0x4e, 0x45, 0x59, 0x5f, 0x53, 0x48, 0x41, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x56, 0x31, 0x53, 0x10, 889 0x02, 0x42, 0x72, 0x0a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 890 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 891 0x05, 0x54, 0x72, 0x69, 0x70, 0x73, 0x50, 0x01, 0x5a, 0x45, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 892 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 893 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 894 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 895 0x2f, 0x76, 0x31, 0x3b, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0xa2, 896 0x02, 0x03, 0x43, 0x46, 0x45, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 897} 898 899var ( 900 file_google_maps_fleetengine_v1_trips_proto_rawDescOnce sync.Once 901 file_google_maps_fleetengine_v1_trips_proto_rawDescData = file_google_maps_fleetengine_v1_trips_proto_rawDesc 902) 903 904func file_google_maps_fleetengine_v1_trips_proto_rawDescGZIP() []byte { 905 file_google_maps_fleetengine_v1_trips_proto_rawDescOnce.Do(func() { 906 file_google_maps_fleetengine_v1_trips_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_maps_fleetengine_v1_trips_proto_rawDescData) 907 }) 908 return file_google_maps_fleetengine_v1_trips_proto_rawDescData 909} 910 911var file_google_maps_fleetengine_v1_trips_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 912var file_google_maps_fleetengine_v1_trips_proto_msgTypes = make([]protoimpl.MessageInfo, 2) 913var file_google_maps_fleetengine_v1_trips_proto_goTypes = []interface{}{ 914 (TripStatus)(0), // 0: maps.fleetengine.v1.TripStatus 915 (BillingPlatformIdentifier)(0), // 1: maps.fleetengine.v1.BillingPlatformIdentifier 916 (TripView)(0), // 2: maps.fleetengine.v1.TripView 917 (*Trip)(nil), // 3: maps.fleetengine.v1.Trip 918 (*StopLocation)(nil), // 4: maps.fleetengine.v1.StopLocation 919 (TripType)(0), // 5: maps.fleetengine.v1.TripType 920 (*TerminalLocation)(nil), // 6: maps.fleetengine.v1.TerminalLocation 921 (*timestamppb.Timestamp)(nil), // 7: google.protobuf.Timestamp 922 (*TripWaypoint)(nil), // 8: maps.fleetengine.v1.TripWaypoint 923 (*latlng.LatLng)(nil), // 9: google.type.LatLng 924 (*wrapperspb.Int32Value)(nil), // 10: google.protobuf.Int32Value 925 (*durationpb.Duration)(nil), // 11: google.protobuf.Duration 926 (*VehicleLocation)(nil), // 12: maps.fleetengine.v1.VehicleLocation 927} 928var file_google_maps_fleetengine_v1_trips_proto_depIdxs = []int32{ 929 0, // 0: maps.fleetengine.v1.Trip.trip_status:type_name -> maps.fleetengine.v1.TripStatus 930 5, // 1: maps.fleetengine.v1.Trip.trip_type:type_name -> maps.fleetengine.v1.TripType 931 6, // 2: maps.fleetengine.v1.Trip.pickup_point:type_name -> maps.fleetengine.v1.TerminalLocation 932 4, // 3: maps.fleetengine.v1.Trip.actual_pickup_point:type_name -> maps.fleetengine.v1.StopLocation 933 4, // 4: maps.fleetengine.v1.Trip.actual_pickup_arrival_point:type_name -> maps.fleetengine.v1.StopLocation 934 7, // 5: maps.fleetengine.v1.Trip.pickup_time:type_name -> google.protobuf.Timestamp 935 6, // 6: maps.fleetengine.v1.Trip.intermediate_destinations:type_name -> maps.fleetengine.v1.TerminalLocation 936 7, // 7: maps.fleetengine.v1.Trip.intermediate_destinations_version:type_name -> google.protobuf.Timestamp 937 4, // 8: maps.fleetengine.v1.Trip.actual_intermediate_destination_arrival_points:type_name -> maps.fleetengine.v1.StopLocation 938 4, // 9: maps.fleetengine.v1.Trip.actual_intermediate_destinations:type_name -> maps.fleetengine.v1.StopLocation 939 6, // 10: maps.fleetengine.v1.Trip.dropoff_point:type_name -> maps.fleetengine.v1.TerminalLocation 940 4, // 11: maps.fleetengine.v1.Trip.actual_dropoff_point:type_name -> maps.fleetengine.v1.StopLocation 941 7, // 12: maps.fleetengine.v1.Trip.dropoff_time:type_name -> google.protobuf.Timestamp 942 8, // 13: maps.fleetengine.v1.Trip.remaining_waypoints:type_name -> maps.fleetengine.v1.TripWaypoint 943 8, // 14: maps.fleetengine.v1.Trip.vehicle_waypoints:type_name -> maps.fleetengine.v1.TripWaypoint 944 9, // 15: maps.fleetengine.v1.Trip.route:type_name -> google.type.LatLng 945 8, // 16: maps.fleetengine.v1.Trip.current_route_segment_end_point:type_name -> maps.fleetengine.v1.TripWaypoint 946 10, // 17: maps.fleetengine.v1.Trip.remaining_distance_meters:type_name -> google.protobuf.Int32Value 947 7, // 18: maps.fleetengine.v1.Trip.eta_to_first_waypoint:type_name -> google.protobuf.Timestamp 948 11, // 19: maps.fleetengine.v1.Trip.remaining_time_to_first_waypoint:type_name -> google.protobuf.Duration 949 7, // 20: maps.fleetengine.v1.Trip.remaining_waypoints_version:type_name -> google.protobuf.Timestamp 950 7, // 21: maps.fleetengine.v1.Trip.remaining_waypoints_route_version:type_name -> google.protobuf.Timestamp 951 12, // 22: maps.fleetengine.v1.Trip.last_location:type_name -> maps.fleetengine.v1.VehicleLocation 952 2, // 23: maps.fleetengine.v1.Trip.view:type_name -> maps.fleetengine.v1.TripView 953 9, // 24: maps.fleetengine.v1.StopLocation.point:type_name -> google.type.LatLng 954 7, // 25: maps.fleetengine.v1.StopLocation.timestamp:type_name -> google.protobuf.Timestamp 955 7, // 26: maps.fleetengine.v1.StopLocation.stop_time:type_name -> google.protobuf.Timestamp 956 27, // [27:27] is the sub-list for method output_type 957 27, // [27:27] is the sub-list for method input_type 958 27, // [27:27] is the sub-list for extension type_name 959 27, // [27:27] is the sub-list for extension extendee 960 0, // [0:27] is the sub-list for field type_name 961} 962 963func init() { file_google_maps_fleetengine_v1_trips_proto_init() } 964func file_google_maps_fleetengine_v1_trips_proto_init() { 965 if File_google_maps_fleetengine_v1_trips_proto != nil { 966 return 967 } 968 file_google_maps_fleetengine_v1_fleetengine_proto_init() 969 if !protoimpl.UnsafeEnabled { 970 file_google_maps_fleetengine_v1_trips_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 971 switch v := v.(*Trip); i { 972 case 0: 973 return &v.state 974 case 1: 975 return &v.sizeCache 976 case 2: 977 return &v.unknownFields 978 default: 979 return nil 980 } 981 } 982 file_google_maps_fleetengine_v1_trips_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 983 switch v := v.(*StopLocation); i { 984 case 0: 985 return &v.state 986 case 1: 987 return &v.sizeCache 988 case 2: 989 return &v.unknownFields 990 default: 991 return nil 992 } 993 } 994 } 995 type x struct{} 996 out := protoimpl.TypeBuilder{ 997 File: protoimpl.DescBuilder{ 998 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 999 RawDescriptor: file_google_maps_fleetengine_v1_trips_proto_rawDesc, 1000 NumEnums: 3, 1001 NumMessages: 2, 1002 NumExtensions: 0, 1003 NumServices: 0, 1004 }, 1005 GoTypes: file_google_maps_fleetengine_v1_trips_proto_goTypes, 1006 DependencyIndexes: file_google_maps_fleetengine_v1_trips_proto_depIdxs, 1007 EnumInfos: file_google_maps_fleetengine_v1_trips_proto_enumTypes, 1008 MessageInfos: file_google_maps_fleetengine_v1_trips_proto_msgTypes, 1009 }.Build() 1010 File_google_maps_fleetengine_v1_trips_proto = out.File 1011 file_google_maps_fleetengine_v1_trips_proto_rawDesc = nil 1012 file_google_maps_fleetengine_v1_trips_proto_goTypes = nil 1013 file_google_maps_fleetengine_v1_trips_proto_depIdxs = nil 1014} 1015