Class Writer

Nested Relationships

Nested Types

Inheritance Relationships

Derived Type

Class Documentation

class Writer

Subclassed by rmf_traffic::blockade::Moderator

Public Functions

virtual void set(ParticipantId participant_id, ReservationId reservation_id, const Reservation &reservation) = 0

Set the path reservation of a participant.

If reservation_id is (modularly) less than or equal to the last reservation_id value given for this participant_id, then this function call will be ignored.

Any previous path reservation will be considered canceled.

virtual void ready(ParticipantId participant_id, ReservationId reservation_id, CheckpointId checkpoint) = 0

Indicate when a participant is ready at a checkpoint.

If reservation_id is not equal to the last reservation_id value given to set() for this participant_id, then this function call will be ignored.

virtual void release(ParticipantId participant_id, ReservationId reservation_id, CheckpointId checkpoint) = 0

Release a checkpoint (and all checkpoints that come after it) from ready status if the participant has not departed from it yet.

virtual void reached(ParticipantId participant_id, ReservationId reservation_id, CheckpointId checkpoint) = 0

Indicate when a participant has reached a checkpoint.

If reservation_id is not equal to the last reservation_id value given to set() for this participant_id, then this function call will be ignored.

virtual void cancel(ParticipantId participant_id, ReservationId reservation_id) = 0

Indicate that a path reservation is canceled if reservation_id is (modularly) greater than or equal to the last reservation_id value given to set() for this participant_id.

virtual void cancel(ParticipantId participant_id) = 0

Indicate that all path reservations for this participant_id are canceled.

virtual ~Writer() = default
struct Checkpoint

Public Members

Eigen::Vector2d position
std::string map_name
bool can_hold
struct Reservation

Public Members

std::vector<Checkpoint> path
double radius