X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnetwork%2Ftrain.cpp;h=025dcf52a75268b1dcdaa6b40c3cdc41d2a84d9b;hb=2fe7cbcb761487bc7409b93b372da6f8ab3c581e;hp=468b2200a0aa7d97dfd9e9724169a89e1b348da6;hpb=010d8321e982d1684fcbff5bf6fc2bdec7cb7bae;p=r2c2.git diff --git a/source/network/train.cpp b/source/network/train.cpp index 468b220..025dcf5 100644 --- a/source/network/train.cpp +++ b/source/network/train.cpp @@ -58,6 +58,17 @@ void NetTrain::set_function(unsigned i, bool set) client.send(pkt); } +void NetTrain::set_route(const string &r) +{ + if(r==route) + return; + + TrainRoutePacket pkt; + pkt.address = address; + pkt.route = r; + client.send(pkt); +} + void NetTrain::process_packet(const TrainSpeedPacket &pkt) { if(pkt.speed!=speed) @@ -87,4 +98,10 @@ void NetTrain::process_packet(const TrainStatusPacket &pkt) signal_status_changed.emit(status); } +void NetTrain::process_packet(const TrainRoutePacket &pkt) +{ + route = pkt.route; + signal_route_changed.emit(route); +} + } // namespace Marklin