Class Waypoint

Class Documentation

class Waypoint

Public Functions

Waypoint(std::string map_name, Eigen::Vector3d position, rmf_traffic::Duration mandatory_delay = std::chrono::nanoseconds(0), bool yield = true)

Constructor

Parameters:
  • map_name[in] The name of the reference map that the position is on.

  • position[in] A position along the robot’s path where it will (or can) have zero instantaneous velocity. This will usually be a point where the robot needs to turn, or a point that comes before an intersection, so the robot can come to a stop and allow other vehicles to pass. This is a 2D heterogeneous vector. The first two elements refer to translational (x,y) position while the third element is a yaw value in radians.

  • mandatory_delay[in] A delay that the robot is expected to experience once it arrives at this waypoint. Usually this will be caused by the robots needing to wait for doors to open or lifts to arrive.

  • yield[in] Whether or not the robot can wait at this point. If yield is false, then the planner will assume that it cannot ask the robot to wait here. If yield is true, then the planner may request that the robot wait here to avoid conflicts with other traffic participants.

const std::string &map_name() const

Get the map of this Waypoint.

Waypoint &map_name(std::string new_map_name)

Set the map of this Waypoint.

const Eigen::Vector3d &position() const

Get the position of this Waypoint.

Waypoint &position(Eigen::Vector3d new_position)

Set the position of this Waypoint.

rmf_traffic::Duration mandatory_delay() const

Get the mandatory delay associated with this Waypoint.

Waypoint &mandatory_delay(rmf_traffic::Duration duration)

Set the mandatory delay associated with this Waypoint.

bool yield() const

Get whether the robot can yield here.

Waypoint &yield(bool on)

Set whether the robot can yield here.