Class Lane::Event

Nested Relationships

This class is a nested type of Class Graph::Lane.

Class Documentation

class Event

An abstraction for the different kinds of Lane events.

Public Functions

virtual Duration duration() const = 0

An estimate of how long the event will take.

template<typename DerivedExecutor>
inline DerivedExecutor &execute(DerivedExecutor &executor) const
virtual Executor &execute(Executor &executor) const = 0

Execute this event.

virtual EventPtr clone() const = 0

Clone this event.

virtual ~Event() = default

Public Static Functions

static EventPtr make(DoorOpen open)
static EventPtr make(DoorClose close)
static EventPtr make(LiftSessionBegin open)
static EventPtr make(LiftSessionEnd close)
static EventPtr make(LiftMove move)
static EventPtr make(LiftDoorOpen open)
static EventPtr make(Dock dock)
static EventPtr make(Wait wait)