X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Fdriver.h;h=9648c921354c4d8fbd4c85c494eb3e3bd0b9f474;hb=b28062f2dc88e082ee5a28b2e1f7c4c8bd989023;hp=ec143e83d244c24f32b308fa8d3b646f07e4d68d;hpb=d15ac13f2e170f155b4bbd124df48400c339b644;p=r2c2.git diff --git a/source/libr2c2/driver.h b/source/libr2c2/driver.h index ec143e8..9648c92 100644 --- a/source/libr2c2/driver.h +++ b/source/libr2c2/driver.h @@ -6,6 +6,7 @@ namespace R2C2 { +class SignalType; class TrackType; class VehicleType; @@ -17,6 +18,7 @@ public: sigc::signal signal_loco_speed; sigc::signal signal_loco_function; sigc::signal signal_turnout; + sigc::signal signal_signal; sigc::signal signal_sensor; protected: @@ -32,15 +34,23 @@ public: virtual const char *enumerate_protocols(unsigned) const = 0; virtual unsigned get_protocol_speed_steps(const std::string &) const = 0; virtual void add_loco(unsigned, const std::string &, const VehicleType &) = 0; + virtual void remove_loco(unsigned) = 0; virtual void set_loco_speed(unsigned, unsigned) = 0; virtual void set_loco_reverse(unsigned, bool) = 0; virtual void set_loco_function(unsigned, unsigned, bool) = 0; virtual void add_turnout(unsigned, const TrackType &) = 0; + virtual void remove_turnout(unsigned) = 0; virtual void set_turnout(unsigned, unsigned) = 0; virtual unsigned get_turnout(unsigned) const = 0; + virtual void add_signal(unsigned, const SignalType &) = 0; + virtual void remove_signal(unsigned) = 0; + virtual void set_signal(unsigned, unsigned) = 0; + virtual unsigned get_signal(unsigned) const = 0; + virtual void add_sensor(unsigned) = 0; + virtual void remove_sensor(unsigned) = 0; virtual void set_sensor(unsigned, bool) = 0; virtual bool get_sensor(unsigned) const = 0;