Msp::Time::TimeDelta get_time_to_next_track() const;
bool is_occupied(Track &) const;
+ bool check_arrival();
void advance(float);
void advance_track(unsigned);
};
RoutingStep();
RoutingStep(RoutingStep *);
+ void create_successors(std::list<RoutingStep> &);
bool update_states();
bool check_deadlocks() const;
int get_occupant(Track &) const;
void plan();
private:
- bool update_states(RoutingStep &);
- void add_steps(RoutingStep &, unsigned);
- void add_waiting_step(RoutingStep &, unsigned);
- void add_steps(RoutingStep &, TrainRoutingState &train);
+ void add_steps(RoutingStep &);
void create_routes(RoutingStep &);
};