X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Fclient.cpp;h=50db7df6d817bdcbb738e4182262de9df2fd275f;hb=02fe62e0026dd25fd3ff4d5172c0ff097b7c68c9;hp=8e31cfe54c59b9cfe5e501722b31c112e36ea3c7;hpb=2fe7cbcb761487bc7409b93b372da6f8ab3c581e;p=r2c2.git diff --git a/source/network/client.cpp b/source/network/client.cpp index 8e31cfe..50db7df 100644 --- a/source/network/client.cpp +++ b/source/network/client.cpp @@ -43,9 +43,9 @@ void Client::connect(const Net::SockAddr &addr) comm = new Net::Communicator(*socket, proto, *this); } -NetTrain &Client::get_train(unsigned addr) +NetTrain &Client::get_train(unsigned addr) const { - map::iterator i = trains.find(addr); + map::const_iterator i = trains.find(addr); if(i==trains.end()) throw KeyError("Unknown train"); return *i->second; @@ -58,7 +58,7 @@ void Client::receive(const TrainInfoPacket &pkt) signal_train_added.emit(*train); } -void Client::receive(const TrainSpeedPacket &pkt) +void Client::receive(const TrainControlPacket &pkt) { get_train(pkt.address).process_packet(pkt); } @@ -83,4 +83,9 @@ void Client::receive(const TrainRoutePacket &pkt) get_train(pkt.address).process_packet(pkt); } +void Client::receive(const ErrorPacket &pkt) +{ + signal_error.emit(pkt.message); +} + } // namespace Marklin