class Client: public Msp::Net::PacketReceiver<TrainInfoPacket>,
Msp::Net::PacketReceiver<TrainSpeedPacket>,
Msp::Net::PacketReceiver<TrainFunctionPacket>,
- Msp::Net::PacketReceiver<TrainStatusPacket>
+ Msp::Net::PacketReceiver<TrainStatusPacket>,
+ Msp::Net::PacketReceiver<RouteInfoPacket>,
+ Msp::Net::PacketReceiver<TrainRoutePacket>
{
public:
sigc::signal<void, NetTrain &> signal_train_added;
Msp::Net::StreamSocket *socket;
Msp::Net::Communicator *comm;
Msp::IO::EventDispatcher *event_disp;
+ std::list<std::string> routes;
std::map<unsigned, NetTrain *> trains;
public:
{ if(comm) comm->send(pkt); }
const Catalogue &get_catalogue() const { return catalogue; }
+ const std::list<std::string> &get_routes() const { return routes; }
NetTrain &get_train(unsigned);
private:
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 &);
};
} // namespace Marklin