X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Fcontrol.h;h=df8ea1bc3c76ad9cc51b65c0c29c81481be87644;hb=ca5b1fcfd52a09e3d3b2c4c011dc91ac9ad19694;hp=4729695d7dbeb10d00e40f13578877a9f8493f61;hpb=52cbe8d99669f843f8f75c51128e2748584dd03a;p=r2c2.git diff --git a/source/libmarklin/control.h b/source/libmarklin/control.h index 4729695..df8ea1b 100644 --- a/source/libmarklin/control.h +++ b/source/libmarklin/control.h @@ -30,30 +30,34 @@ private: Msp::Time::Timer timer; public: + sigc::signal signal_power_event; sigc::signal signal_turnout_event; sigc::signal signal_sensor_event; Control(); + ~Control(); + void set_power(bool); bool get_power() const { return power; } - void set_debug(bool d) { debug=d; } - //const TurnoutMap &get_turnouts() const { return turnouts; } + void set_debug(bool); const std::map &get_sensors() const { return sensors; } unsigned get_queue_length() const { return queue.size(); } void open(const std::string &); Command &command(const std::string &); + void add_turnout(Turnout &); Turnout &get_turnout(unsigned) const; void add_locomotive(Locomotive &); Locomotive &get_locomotive(unsigned) const; void add_sensor(Sensor &); Sensor &get_sensor(unsigned) const; + void tick(); Msp::Time::Timer::Slot &set_timer(const Msp::Time::TimeDelta &); - ~Control(); private: void read_all(int, char *, int); std::string read_reply(Cmd); + void status_done(Error, const std::string &); void event_query_done(Error, const std::string &); void turnout_event_done(Error, const std::string &); void sensor_event_done(Error, const std::string &);