int priority;
RouteList routes;
+ RouteList::iterator reserving_route;
unsigned arriving;
const TrackChain *destination;
std::vector<const TrackChain *> waypoints;
void create_metrics();
Route *create_lead_route(Route *, const Route *);
- bool advance_route(RouteList::iterator &, const Block &);
- bool is_on_route(const Block &);
+ bool is_valid_for_track(const Route &, Track &) const;
+ bool advance_to_track(RouteList::iterator &, Track &);
static void start_planning(Layout &);
};