X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Fserver.h;h=badced0dbd7d8dd612cf690319e8515c9f5ed63a;hb=2d44923e135a119fde31a7a50e5fcd3e400e4f41;hp=41bb8e9b50bc9765767efa7ae5a1c09868e66d13;hpb=651698847d5293cfb15b6fb23a394701388c0151;p=r2c2.git diff --git a/source/network/server.h b/source/network/server.h index 41bb8e9..badced0 100644 --- a/source/network/server.h +++ b/source/network/server.h @@ -1,29 +1,31 @@ /* $Id$ -This file is part of the MSP Märklin suite -Copyright © 2009-2010 Mikkosoft Productions, Mikko Rasa +This file is part of R²C² +Copyright © 2009-2011 Mikkosoft Productions, Mikko Rasa Distributed under the GPL */ -#ifndef MARKLINNET_SERVER_H_ -#define MARKLINNET_SERVER_H_ +#ifndef R2C2_NET_SERVER_H_ +#define R2C2_NET_SERVER_H_ #include #include #include #include -#include "libmarklin/layout.h" +#include "libr2c2/layout.h" +#include "libr2c2/trainstatus.h" #include "packets.h" #include "protocol.h" -namespace Marklin { +namespace R2C2 { class Server { private: - struct Connection: private Msp::Net::PacketReceiver, - private Msp::Net::PacketReceiver, - private Msp::Net::PacketReceiver + struct Connection: Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver, + Msp::Net::PacketReceiver { Server &server; Msp::Net::StreamSocket *socket; @@ -35,7 +37,8 @@ private: void handshake_done(); void end_of_file(); - virtual void receive(const TrainSpeedPacket &); + virtual void receive(const DriverStatePacket &); + virtual void receive(const TrainControlPacket &); virtual void receive(const TrainFunctionPacket &); virtual void receive(const TrainRoutePacket &); void error(const std::string &); @@ -53,9 +56,10 @@ public: private: void incoming_connection(); + void driver_state_changed(); + void emergency(const std::string &); void train_added(Train &); - void train_speed_changed(const Train &, unsigned); - void train_reverse_changed(const Train &, bool); + void train_control_changed(const Train &, const std::string &, float); void train_function_changed(const Train &, unsigned, bool); void train_route_changed(const Train &, const Route *); void train_status_changed(const Train &, const std::string &); @@ -64,6 +68,6 @@ private: void send(const P &); }; -} // namespace Marklin +} // namespace R2C2 #endif