float speed;
Block *first_noncritical;
TrainRouter *router;
- std::vector<const TrackChain *> waypoints;
+ std::vector<TrainRouter::Waypoint> waypoints;
std::vector<const TrainRouteMetric *> metrics;
bool has_duration;
std::list<Route *> routes;
RoutingStep(const RoutingStep *);
void create_successors(std::list<RoutingStep> &) const;
+ static void create_successor(RoutingStep &, unsigned, unsigned, std::list<RoutingStep> &);
bool update_states();
bool check_deadlocks() const;
int get_occupant(Track &) const;