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.



993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 993

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".



993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 993

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