X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Ftrain.h;h=c908beea77c1b8f909e41f191a2597cbdaf50b4f;hb=HEAD;hp=948af2f82b5dfc45d94da55e8bcfcdcc139559ac;hpb=d15ac13f2e170f155b4bbd124df48400c339b644;p=r2c2.git diff --git a/source/network/train.h b/source/network/train.h index 948af2f..c908bee 100644 --- a/source/network/train.h +++ b/source/network/train.h @@ -15,6 +15,8 @@ public: sigc::signal signal_name_changed; sigc::signal signal_control_changed; sigc::signal signal_function_changed; + sigc::signal signal_target_speed_changed; + sigc::signal signal_reverse_changed; sigc::signal signal_route_changed; sigc::signal signal_status_changed; @@ -24,6 +26,8 @@ private: unsigned address; std::string name; std::map controls; + float target_speed; + bool reverse; unsigned functions; std::string route; std::string status; @@ -31,18 +35,25 @@ private: public: NetTrain(Client &, const TrainInfoPacket &); + Client &get_client() const { return client; } const VehicleType &get_loco_type() const { return loco_type; } unsigned get_address() const { return address; } const std::string &get_name() const { return name; } void set_control(const std::string &, float); float get_control(const std::string &) const; + void set_target_speed(float); + void set_reverse(bool); + float get_target_speed() const { return target_speed; } + bool get_reverse() const { return reverse; } void set_function(unsigned, bool); bool get_function(unsigned i) const { return (functions>>i)&1; } void set_route(const std::string &); const std::string &get_route() const { return route; } + const std::string &get_status() const { return status; } void process_packet(const TrainControlPacket &); void process_packet(const TrainFunctionPacket &); + void process_packet(const TrainAIControlPacket &); void process_packet(const TrainRoutePacket &); void process_packet(const TrainStatusPacket &); };