Package org.opentcs.data.model
Class Vehicle
- All Implemented Interfaces:
Serializable
Describes a vehicle's current state.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
A vehicle's state of integration into the system.static class
Contains information regarding the grahical representation of a vehicle.static enum
The elements of this enumeration represent the possible orientations of a vehicle.static enum
A vehicle's processing state as seen by the dispatcher.static enum
The elements of this enumeration describe the various possible states of a vehicle. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
The key for a property to store the class name of the preferred communication adapter (factory) for this vehicle. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionList
<Set<TCSResourceReference<?>>> Returns the resources this vehicle has allocated.Returns the set of order types this vehicle is allowed to process.List
<Set<TCSResourceReference<?>>> Returns the resources this vehicle has claimed for future allocation.Returns a reference to the point this vehicle currently occupies.int
Returns this vehicle's remaining energy (in percent of the maximum).int
Returns this vehicle's critical energy level (in percent of the maximum).int
Returns this vehicle's energy level for being fully recharged (in percent of the maximum).int
Returns this vehicle's good energy level (in percent of the maximum).int
Returns this vehicle's energy level for being sufficiently recharged (in percent of the maximum).Returns the key for selecting the envelope to be used for resources the vehicle occupies.Returns this vehicle's integration level.Returns the information regarding the grahical representation of this vehicle.int
Returns this vehicle's current length.Returns the current (state of the) load handling devices of this vehicle.int
Returns this vehicle's maximum reverse velocity (in mm/s).int
Returns this vehicle's maximum velocity (in mm/s).Returns a reference to the point this vehicle is expected to be seen at next.Returns a reference to the order sequence this vehicle is currently processing.double
Returns the vehicle's current orientation angle (-360..360).Returns the vehicle's position in world coordinates [mm], independent from logical positions/point names.Returns this vehicle's current processing state.Returns the operation that the vehicle's current communication adapter accepts as a command to recharge the vehicle.getState()
Returns this vehicle's current state.Returns a reference to the transport order this vehicle is currently processing.boolean
hasProcState
(Vehicle.ProcState otherState) Checks if this vehicle's current processing state is equal to the given one.boolean
hasState
(Vehicle.State otherState) Checks if this vehicle's current state is equal to the given one.boolean
Checks whether the vehicle's energy level is critical.boolean
Checks whether the vehicle's energy level is degraded (not good any more).boolean
Checks whether the vehicle's energy level is fully recharged.boolean
Checks whether the vehicle's energy level is good.boolean
Checks whether the vehicle's energy level is sufficiently recharged.boolean
isPaused()
Indicates whether this vehicle is paused.boolean
Checks if this vehicle is currently processing any transport order.toString()
withAllocatedResources
(List<Set<TCSResourceReference<?>>> allocatedResources) Creates a copy of this object, with the given allocated resources.withAllowedOrderTypes
(Set<String> allowedOrderTypes) Creates a copy of this object, with the given set of allowed order types.withClaimedResources
(List<Set<TCSResourceReference<?>>> claimedResources) Creates a copy of this object, with the given claimed resources.withCurrentPosition
(TCSObjectReference<Point> currentPosition) Creates a copy of this object, with the given current position.withEnergyLevel
(int energyLevel) Creates a copy of this object, with the given energy level.withEnergyLevelCritical
(int energyLevelCritical) Creates a copy of this object, with the given critical energy level.withEnergyLevelFullyRecharged
(int energyLevelFullyRecharged) Creates a copy of this object, with the given fully recharged energy level.withEnergyLevelGood
(int energyLevelGood) Creates a copy of this object, with the given good energy level.withEnergyLevelSufficientlyRecharged
(int energyLevelSufficientlyRecharged) Creates a copy of this object, with the given sufficiently recharged energy level.withEnvelopeKey
(String envelopeKey) Creates a copy of this object, with the given envelope key.withHistory
(ObjectHistory history) Creates a copy of this object, with the given history.Creates a copy of this object, with the given history entry integrated.withIntegrationLevel
(Vehicle.IntegrationLevel integrationLevel) Creates a copy of this object, with the given integration level.withLayout
(Vehicle.Layout layout) Creates a copy of this object, with the given layout.withLength
(int length) Creates a copy of this object, with the given length.withLoadHandlingDevices
(List<LoadHandlingDevice> loadHandlingDevices) Creates a copy of this object, with the given load handling devices.withMaxReverseVelocity
(int maxReverseVelocity) Creates a copy of this object, with the given maximum reverse velocity.withMaxVelocity
(int maxVelocity) Creates a copy of this object, with the given maximum velocity.withNextPosition
(TCSObjectReference<Point> nextPosition) Creates a copy of this object, with the given next position.withOrderSequence
(TCSObjectReference<OrderSequence> orderSequence) Creates a copy of this object, with the given order sequence.withOrientationAngle
(double orientationAngle) Creates a copy of this object, with the given orientation angle.withPaused
(boolean paused) Creates a copy of this object, with the given paused state.withPrecisePosition
(Triple precisePosition) Creates a copy of this object, with the given precise position.withProcState
(Vehicle.ProcState procState) Creates a copy of this object, with the given processing state.withProperties
(Map<String, String> properties) Creates a copy of this object, with the given properties.withProperty
(String key, String value) Creates a copy of this object, with the given property integrated.withRechargeOperation
(String rechargeOperation) Creates a copy of this object, with the given recharge operation.withState
(Vehicle.State state) Creates a copy of this object, with the given state.withTransportOrder
(TCSObjectReference<TransportOrder> transportOrder) Creates a copy of this object, with the given transport order.Methods inherited from class org.opentcs.data.TCSObject
equals, getHistory, getName, getProperties, getProperty, getReference, hashCode, listWithoutNullValues, mapWithoutNullValues, propertiesWith, setWithoutNullValues
-
Field Details
-
PREFERRED_ADAPTER
The key for a property to store the class name of the preferred communication adapter (factory) for this vehicle.- See Also:
-
-
Constructor Details
-
Vehicle
Creates a new vehicle.- Parameters:
name
- The new vehicle's name.
-
-
Method Details
-
withProperty
Description copied from class:TCSObject
Creates a copy of this object, with the given property integrated.- Specified by:
withProperty
in classTCSObject<Vehicle>
- Parameters:
key
- The key of the property to be changed.value
- The new value of the property, ornull
, if the property is to be removed.- Returns:
- A copy of this object, with the given property integrated.
-
withProperties
Description copied from class:TCSObject
Creates a copy of this object, with the given properties.- Specified by:
withProperties
in classTCSObject<Vehicle>
- Parameters:
properties
- The properties.- Returns:
- A copy of this object, with the given properties.
-
withHistoryEntry
Description copied from class:TCSObject
Creates a copy of this object, with the given history entry integrated.- Specified by:
withHistoryEntry
in classTCSObject<Vehicle>
- Parameters:
entry
- The history entry to be integrated.- Returns:
- A copy of this object, with the given history entry integrated.
-
withHistory
Description copied from class:TCSObject
Creates a copy of this object, with the given history.- Specified by:
withHistory
in classTCSObject<Vehicle>
- Parameters:
history
- The history.- Returns:
- A copy of this object, with the given history.
-
getEnergyLevel
public int getEnergyLevel()Returns this vehicle's remaining energy (in percent of the maximum).- Returns:
- This vehicle's remaining energy.
-
withEnergyLevel
Creates a copy of this object, with the given energy level.- Parameters:
energyLevel
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
isEnergyLevelCritical
public boolean isEnergyLevelCritical()Checks whether the vehicle's energy level is critical.- Returns:
true
if, and only if, the vehicle's energy level is critical.
-
isEnergyLevelDegraded
public boolean isEnergyLevelDegraded()Checks whether the vehicle's energy level is degraded (not good any more).- Returns:
true
if, and only if, the vehicle's energy level is degraded.
-
isEnergyLevelGood
public boolean isEnergyLevelGood()Checks whether the vehicle's energy level is good.- Returns:
true
if, and only if, the vehicle's energy level is good.
-
isEnergyLevelFullyRecharged
public boolean isEnergyLevelFullyRecharged()Checks whether the vehicle's energy level is fully recharged.- Returns:
true
if, and only if, the vehicle's energy level is fully recharged.
-
isEnergyLevelSufficientlyRecharged
public boolean isEnergyLevelSufficientlyRecharged()Checks whether the vehicle's energy level is sufficiently recharged.- Returns:
true
if, and only if, the vehicle's energy level is sufficiently recharged.
-
getEnergyLevelCritical
public int getEnergyLevelCritical()Returns this vehicle's critical energy level (in percent of the maximum). The critical energy level is the one at/below which the vehicle should be recharged.- Returns:
- This vehicle's critical energy level.
-
withEnergyLevelCritical
Creates a copy of this object, with the given critical energy level.- Parameters:
energyLevelCritical
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getEnergyLevelGood
public int getEnergyLevelGood()Returns this vehicle's good energy level (in percent of the maximum). The good energy level is the one at/above which the vehicle can be dispatched again when charging.- Returns:
- This vehicle's good energy level.
-
withEnergyLevelGood
Creates a copy of this object, with the given good energy level.- Parameters:
energyLevelGood
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getEnergyLevelFullyRecharged
public int getEnergyLevelFullyRecharged()Returns this vehicle's energy level for being fully recharged (in percent of the maximum).- Returns:
- This vehicle's fully recharged treshold.
-
withEnergyLevelFullyRecharged
Creates a copy of this object, with the given fully recharged energy level.- Parameters:
energyLevelFullyRecharged
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getEnergyLevelSufficientlyRecharged
public int getEnergyLevelSufficientlyRecharged()Returns this vehicle's energy level for being sufficiently recharged (in percent of the maximum).- Returns:
- This vehicle's sufficiently recharged energy level.
-
withEnergyLevelSufficientlyRecharged
Creates a copy of this object, with the given sufficiently recharged energy level.- Parameters:
energyLevelSufficientlyRecharged
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getRechargeOperation
Returns the operation that the vehicle's current communication adapter accepts as a command to recharge the vehicle.- Returns:
- The operation that the vehicle's current communication adapter accepts as a command to recharge the vehicle.
-
withRechargeOperation
Creates a copy of this object, with the given recharge operation.- Parameters:
rechargeOperation
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getLoadHandlingDevices
Returns the current (state of the) load handling devices of this vehicle.- Returns:
- The current (state of the) load handling devices of this vehicle.
-
withLoadHandlingDevices
Creates a copy of this object, with the given load handling devices.- Parameters:
loadHandlingDevices
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getMaxVelocity
public int getMaxVelocity()Returns this vehicle's maximum velocity (in mm/s).- Returns:
- This vehicle's maximum velocity (in mm/s).
-
withMaxVelocity
Creates a copy of this object, with the given maximum velocity.- Parameters:
maxVelocity
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getMaxReverseVelocity
public int getMaxReverseVelocity()Returns this vehicle's maximum reverse velocity (in mm/s).- Returns:
- This vehicle's maximum reverse velocity (in mm/s).
-
withMaxReverseVelocity
Creates a copy of this object, with the given maximum reverse velocity.- Parameters:
maxReverseVelocity
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getState
Returns this vehicle's current state.- Returns:
- This vehicle's current state.
-
hasState
Checks if this vehicle's current state is equal to the given one.- Parameters:
otherState
- The state to compare to this vehicle's one.- Returns:
true
if, and only if, the given state is equal to this vehicle's one.
-
withState
Creates a copy of this object, with the given state.- Parameters:
state
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getProcState
Returns this vehicle's current processing state.- Returns:
- This vehicle's current processing state.
-
getIntegrationLevel
Returns this vehicle's integration level.- Returns:
- This vehicle's integration level.
-
withIntegrationLevel
Creates a copy of this object, with the given integration level.- Parameters:
integrationLevel
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
isPaused
public boolean isPaused()Indicates whether this vehicle is paused.- Returns:
- Whether this vehicle is paused.
-
withPaused
Creates a copy of this object, with the given paused state.- Parameters:
paused
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
hasProcState
Checks if this vehicle's current processing state is equal to the given one.- Parameters:
otherState
- The state to compare to this vehicle's one.- Returns:
true
if, and only if, the given state is equal to this vehicle's one.
-
withProcState
Creates a copy of this object, with the given processing state.- Parameters:
procState
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getLength
public int getLength()Returns this vehicle's current length.- Returns:
- this vehicle's current length.
-
withLength
Creates a copy of this object, with the given length.- Parameters:
length
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getTransportOrder
Returns a reference to the transport order this vehicle is currently processing.- Returns:
- A reference to the transport order this vehicle is currently
processing, or
null
, if it is not processing any transport order at the moment.
-
withTransportOrder
Creates a copy of this object, with the given transport order.- Parameters:
transportOrder
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getOrderSequence
Returns a reference to the order sequence this vehicle is currently processing.- Returns:
- A reference to the order sequence this vehicle is currently
processing, or
null
, if it is not processing any order sequence at the moment.
-
withOrderSequence
Creates a copy of this object, with the given order sequence.- Parameters:
orderSequence
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getAllowedOrderTypes
Returns the set of order types this vehicle is allowed to process.- Returns:
- The set of order types this vehicle is allowed to process.
-
withAllowedOrderTypes
Creates a copy of this object, with the given set of allowed order types.- Parameters:
allowedOrderTypes
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getClaimedResources
Returns the resources this vehicle has claimed for future allocation.- Returns:
- The resources this vehicle has claimed for future allocation.
-
withClaimedResources
Creates a copy of this object, with the given claimed resources.- Parameters:
claimedResources
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getAllocatedResources
Returns the resources this vehicle has allocated.- Returns:
- The resources this vehicle has allocated.
-
withAllocatedResources
Creates a copy of this object, with the given allocated resources.- Parameters:
allocatedResources
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getCurrentPosition
Returns a reference to the point this vehicle currently occupies.- Returns:
- A reference to the point this vehicle currently occupies, or
null
, if this vehicle's position is unknown or the vehicle is currently not in the system.
-
withCurrentPosition
Creates a copy of this object, with the given current position.- Parameters:
currentPosition
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getNextPosition
Returns a reference to the point this vehicle is expected to be seen at next.- Returns:
- A reference to the point this vehicle is expected to be seen at
next, or
null
, if this vehicle's next position is unknown.
-
withNextPosition
Creates a copy of this object, with the given next position.- Parameters:
nextPosition
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getPrecisePosition
Returns the vehicle's position in world coordinates [mm], independent from logical positions/point names. May benull
if the vehicle hasn't provided a precise position.- Returns:
- The vehicle's precise position in mm.
-
withPrecisePosition
Creates a copy of this object, with the given precise position.- Parameters:
precisePosition
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getOrientationAngle
public double getOrientationAngle()Returns the vehicle's current orientation angle (-360..360). May beDouble.NaN
if the vehicle hasn't provided an orientation angle.- Returns:
- The vehicle's current orientation angle.
-
withOrientationAngle
Creates a copy of this object, with the given orientation angle.- Parameters:
orientationAngle
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getEnvelopeKey
Returns the key for selecting the envelope to be used for resources the vehicle occupies.- Returns:
- The key for selecting the envelope to be used for resources the vehicle occupies.
-
withEnvelopeKey
Creates a copy of this object, with the given envelope key.- Parameters:
envelopeKey
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
getLayout
Returns the information regarding the grahical representation of this vehicle.- Returns:
- The information regarding the grahical representation of this vehicle.
-
withLayout
Creates a copy of this object, with the given layout.- Parameters:
layout
- The value to be set in the copy.- Returns:
- A copy of this object, differing in the given value.
-
isProcessingOrder
public boolean isProcessingOrder()Checks if this vehicle is currently processing any transport order.- Returns:
true
if, and only if, this vehicle is currently processing a transport order.
-
toString
-