Class: Google::Cloud::Optimization::V1::ShipmentTypeIncompatibility

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/optimization/v1/fleet_routing.rb

Overview

Specifies incompatibilties between shipments depending on their shipment_type. The appearance of incompatible shipments on the same route is restricted based on the incompatibility mode.

Defined Under Namespace

Modules: IncompatibilityMode

Instance Attribute Summary collapse

Instance Attribute Details

#incompatibility_mode::Google::Cloud::Optimization::V1::ShipmentTypeIncompatibility::IncompatibilityMode

Returns Mode applied to the incompatibility.



1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1049

class ShipmentTypeIncompatibility
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Modes defining how the appearance of incompatible shipments are restricted
  # on the same route.
  module IncompatibilityMode
    # Unspecified incompatibility mode. This value should never be used.
    INCOMPATIBILITY_MODE_UNSPECIFIED = 0

    # In this mode, two shipments with incompatible types can never share the
    # same vehicle.
    NOT_PERFORMED_BY_SAME_VEHICLE = 1

    # For two shipments with incompatible types with the
    # `NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY` incompatibility mode:
    #
    # * If both are pickups only (no deliveries) or deliveries only (no
    #   pickups), they cannot share the same vehicle at all.
    # * If one of the shipments has a delivery and the other a pickup, the two
    #   shipments can share the same vehicle iff the former shipment is
    #   delivered before the latter is picked up.
    NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY = 2
  end
end

#types::Array<::String>

Returns List of incompatible types. Two shipments having different shipment_types among those listed are "incompatible".

Returns:

  • (::Array<::String>)

    List of incompatible types. Two shipments having different shipment_types among those listed are "incompatible".



1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1049

class ShipmentTypeIncompatibility
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Modes defining how the appearance of incompatible shipments are restricted
  # on the same route.
  module IncompatibilityMode
    # Unspecified incompatibility mode. This value should never be used.
    INCOMPATIBILITY_MODE_UNSPECIFIED = 0

    # In this mode, two shipments with incompatible types can never share the
    # same vehicle.
    NOT_PERFORMED_BY_SAME_VEHICLE = 1

    # For two shipments with incompatible types with the
    # `NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY` incompatibility mode:
    #
    # * If both are pickups only (no deliveries) or deliveries only (no
    #   pickups), they cannot share the same vehicle at all.
    # * If one of the shipments has a delivery and the other a pickup, the two
    #   shipments can share the same vehicle iff the former shipment is
    #   delivered before the latter is picked up.
    NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY = 2
  end
end