]> git.tdb.fi Git - r2c2.git/blobdiff - source/network/client.cpp
Make Client hold a non-const reference to the Catalogue
[r2c2.git] / source / network / client.cpp
index 7c583255b2b7b29f04b714c0590257f959c78afb..ec8e408582a657f2f1a3b07576c56735c5fb0c12 100644 (file)
@@ -1,3 +1,4 @@
+#include <msp/core/maputils.h>
 #include "client.h"
 
 using namespace std;
@@ -5,7 +6,7 @@ using namespace Msp;
 
 namespace R2C2 {
 
-Client::Client(const Catalogue &c):
+Client::Client(Catalogue &c):
        catalogue(c),
        socket(0),
        comm(0),
@@ -56,10 +57,7 @@ void Client::set_halt(bool h)
 
 NetTrain &Client::get_train(unsigned addr) const
 {
-       map<unsigned, NetTrain *>::const_iterator i = trains.find(addr);
-       if(i==trains.end())
-               throw KeyError("Unknown train");
-       return *i->second;
+       return *get_item(trains, addr);
 }
 
 void Client::receive(const DriverStatePacket &pkt)