X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Fclient.h;h=2ab8722f1eb8f24dca84c2e223904b30295ee327;hb=6ba6af3637c299ab00828c49de9151429488cc17;hp=ce8dcb66fc15cdb681157b57d3b5e50b968741fc;hpb=010d8321e982d1684fcbff5bf6fc2bdec7cb7bae;p=r2c2.git diff --git a/source/network/client.h b/source/network/client.h index ce8dcb6..2ab8722 100644 --- a/source/network/client.h +++ b/source/network/client.h @@ -18,12 +18,16 @@ Distributed under the GPL namespace Marklin { class Client: public Msp::Net::PacketReceiver, - Msp::Net::PacketReceiver, Msp::Net::PacketReceiver, - Msp::Net::PacketReceiver + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver { public: sigc::signal signal_train_added; + sigc::signal signal_error; private: const Catalogue &catalogue; @@ -31,6 +35,7 @@ private: Msp::Net::StreamSocket *socket; Msp::Net::Communicator *comm; Msp::IO::EventDispatcher *event_disp; + std::list routes; std::map trains; public: @@ -45,13 +50,18 @@ public: { if(comm) comm->send(pkt); } const Catalogue &get_catalogue() const { return catalogue; } - NetTrain &get_train(unsigned); + const std::list &get_routes() const { return routes; } + NetTrain &get_train(unsigned) const; + const std::map &get_trains() const { return trains; } private: virtual void receive(const TrainInfoPacket &); - virtual void receive(const TrainSpeedPacket &); + virtual void receive(const TrainControlPacket &); virtual void receive(const TrainFunctionPacket &); virtual void receive(const TrainStatusPacket &); + virtual void receive(const RouteInfoPacket &); + virtual void receive(const TrainRoutePacket &); + virtual void receive(const ErrorPacket &); }; } // namespace Marklin