void remove_track(Track &);
unsigned allocate_turnout_id();
void add_signal(Signal &);
const std::set<Signal *> &get_signals() const { return signals; }
void remove_track(Track &);
unsigned allocate_turnout_id();
void add_signal(Signal &);
const std::set<Signal *> &get_signals() const { return signals; }