X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Fclient.h;h=39c7eb035c16ae82bacab2a12f2f7c803e34276c;hb=2e3ad91af312aaf20b10f1cbe6096cda7e8a97d1;hp=ce8dcb66fc15cdb681157b57d3b5e50b968741fc;hpb=010d8321e982d1684fcbff5bf6fc2bdec7cb7bae;p=r2c2.git diff --git a/source/network/client.h b/source/network/client.h index ce8dcb6..39c7eb0 100644 --- a/source/network/client.h +++ b/source/network/client.h @@ -20,10 +20,14 @@ 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 { 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 TrainFunctionPacket &); virtual void receive(const TrainStatusPacket &); + virtual void receive(const RouteInfoPacket &); + virtual void receive(const TrainRoutePacket &); + virtual void receive(const ErrorPacket &); }; } // namespace Marklin