- virtual void add_turnout(unsigned);
- virtual void set_turnout(unsigned, bool);
- virtual bool get_turnout(unsigned) const;
+ virtual unsigned add_turnout(unsigned, const TrackType &);
+ virtual void remove_turnout(unsigned) { }
+ virtual void set_turnout(unsigned, unsigned);
+ virtual unsigned get_turnout(unsigned) const;
+
+ virtual unsigned add_signal(unsigned a, const SignalType &) { return a; }
+ virtual void remove_signal(unsigned) { }
+ virtual void set_signal(unsigned, unsigned) { }
+ virtual unsigned get_signal(unsigned) const { return 0; }