Class Route.Step

java.lang.Object
org.opentcs.data.order.Route.Step
All Implemented Interfaces:
Serializable
Enclosing class:
Route

public static class Route.Step extends Object implements Serializable
A single step in a route.
See Also:
  • Constructor Details

    • Step

      @Deprecated @ScheduledApiChange(when="7.0", details="Will be removed.") public Step(@Nullable Path path, @Nullable Point srcPoint, @Nonnull Point destPoint, @Nonnull Vehicle.Orientation orientation, int routeIndex, boolean executionAllowed, @Nullable ReroutingType reroutingType)
      Creates a new instance.
      Parameters:
      path - The path to travel.
      srcPoint - The point that the vehicle is starting from.
      destPoint - The point that is reached by travelling the path.
      orientation - The vehicle's orientation on this step.
      routeIndex - This step's index in the vehicle's route.
      executionAllowed - Whether execution of this step is allowed.
      reroutingType - Marks this step as the origin of a recalculated route.
    • Step

      @Deprecated @ScheduledApiChange(when="7.0", details="Will be removed.") public Step(@Nullable Path path, @Nullable Point srcPoint, @Nonnull Point destPoint, @Nonnull Vehicle.Orientation orientation, int routeIndex, boolean executionAllowed)
      Creates a new instance.
      Parameters:
      path - The path to travel.
      srcPoint - The point that the vehicle is starting from.
      destPoint - The point that is reached by travelling the path.
      orientation - The vehicle's orientation on this step.
      routeIndex - This step's index in the vehicle's route.
      executionAllowed - Whether execution of this step is allowed.
    • Step

      @Deprecated @ScheduledApiChange(when="7.0", details="Will be removed.") public Step(@Nullable Path path, @Nullable Point srcPoint, @Nonnull Point destPoint, @Nonnull Vehicle.Orientation orientation, int routeIndex)
      Creates a new instance.
      Parameters:
      path - The path to travel.
      srcPoint - The point that the vehicle is starting from.
      destPoint - The point that is reached by travelling the path.
      orientation - The vehicle's orientation on this step.
      routeIndex - This step's index in the vehicle's route.
    • Step

      public Step(@Nullable Path path, @Nullable Point srcPoint, @Nonnull Point destPoint, @Nonnull Vehicle.Orientation orientation, int routeIndex, long costs)
      Creates a new instance.

      The created step will have its executionAllowed flag set to true and its reroutingType set to null.

      Parameters:
      path - The path to travel.
      srcPoint - The point that the vehicle is starting from.
      destPoint - The point that is reached by travelling the path.
      orientation - The vehicle's orientation on this step.
      routeIndex - This step's index in the vehicle's route.
      costs - The costs for travelling the path.
  • Method Details

    • getPath

      @Nullable public Path getPath()
      Returns the path to travel.
      Returns:
      The path to travel. May be null if the vehicle does not really have to move.
    • withPath

      public Route.Step withPath(@Nullable Path path)
      Creates a copy of this object, with the given path.
      Parameters:
      path - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getSourcePoint

      @Nullable public Point getSourcePoint()
      Returns the point that the vehicle is starting from.
      Returns:
      The point that the vehicle is starting from. May be null if the vehicle does not really have to move.
    • withSourcePoint

      public Route.Step withSourcePoint(@Nullable Point sourcePoint)
      Creates a copy of this object, with the given source point.
      Parameters:
      sourcePoint - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getDestinationPoint

      @Nonnull public Point getDestinationPoint()
      Returns the point that is reached by travelling the path.
      Returns:
      The point that is reached by travelling the path.
    • withDestinationPoint

      public Route.Step withDestinationPoint(@Nonnull Point destinationPoint)
      Creates a copy of this object, with the given destination point.
      Parameters:
      destinationPoint - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getVehicleOrientation

      @Nonnull public Vehicle.Orientation getVehicleOrientation()
      Returns the direction into which the vehicle is supposed to travel.
      Returns:
      The direction into which the vehicle is supposed to travel.
    • withVehicleOrientation

      public Route.Step withVehicleOrientation(@Nonnull Vehicle.Orientation vehicleOrientation)
      Creates a copy of this object, with the given vehicle orientation.
      Parameters:
      vehicleOrientation - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getRouteIndex

      public int getRouteIndex()
      Returns this step's index in the vehicle's route.
      Returns:
      This step's index in the vehicle's route.
    • withRouteIndex

      public Route.Step withRouteIndex(int routeIndex)
      Creates a copy of this object, with the given route index.
      Parameters:
      routeIndex - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getCosts

      public long getCosts()
      Returns the costs for travelling the path.
      Returns:
      The costs for travelling the path.
    • withCosts

      public Route.Step withCosts(long costs)
      Creates a copy of this object, with the given costs.
      Parameters:
      costs - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • isExecutionAllowed

      public boolean isExecutionAllowed()
      Returns whether execution of this step is allowed.
      Returns:
      true, if execution of this step is allowed, otherwise false.
    • withExecutionAllowed

      public Route.Step withExecutionAllowed(boolean executionAllowed)
      Creates a copy of this object, with the given execution allowed flag.
      Parameters:
      executionAllowed - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getReroutingType

      @Nullable public ReroutingType getReroutingType()
      Returns the ReroutingType of this step.

      Indicates whether this step is the origin of a recalculated route, and if so, which ReroutingType was used to determine the (new) route.

      Might return null, if this step is not the origin of a recalculated route.

      Returns:
      The ReroutingType of this step.
    • withReroutingType

      public Route.Step withReroutingType(@Nullable ReroutingType reroutingType)
      Creates a copy of this object, with the given rerouting type.
      Parameters:
      reroutingType - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • equalsInMovement

      public boolean equalsInMovement(Route.Step step)
      Compares the given step to this step, ignoring rerouting-related properties.
      Parameters:
      step - The step to compare to.
      Returns:
      true, if the given step is equal to this step (ignoring rerouting-related properties), otherwise false.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object