X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Fcontrol.cpp;h=ae26a179a9aa2f4b51585584b4d289ff6e59d4cc;hb=dcfa1e9503b7e97b61396d7458f0b2e5896779cd;hp=30e99e6e4f5266cfa1878735bf3a4a21ded55920;hpb=09843b65a4a8aa1e7f53bd3d2ec1e431d29bf513;p=r2c2.git diff --git a/source/libmarklin/control.cpp b/source/libmarklin/control.cpp index 30e99e6..ae26a17 100644 --- a/source/libmarklin/control.cpp +++ b/source/libmarklin/control.cpp @@ -8,8 +8,8 @@ Distributed under the GPL #include #include #include -#include #include +#include #include #include #include "command.h" @@ -72,7 +72,7 @@ void Control::open(const string &dev) pollfd pfd = { serial_fd, POLLIN, 0 }; if(poll(&pfd, 1, 500)>0) { - cout<<"IB detected at "<::iterator i=queue.begin(); i!=queue.end(); ++i) + i->send(serial_fd); +} + void Control::add_turnout(Turnout &t) { turnouts[t.get_address()] = &t; @@ -199,7 +205,7 @@ void Control::tick() { Reply reply = Reply::read(serial_fd, queue.front().get_command()); if(debug) - cout<<"R: "<=0) queue.front().send(serial_fd); @@ -256,7 +262,7 @@ void Control::turnout_event_done(const Reply &reply) { unsigned addr = (data[i*2+1])+((data[i*2+2]&7)<<8); bool status = !(data[i*2+2]&0x80); - cout<<"Turnout "<>(7-j%8))&1); - cout<<'\n'; + IO::print("S88 module %d, status %08b%08b\n", module, data[1], data[2]); for(unsigned j=0; j<16; ++j) signal_sensor_event.emit(module*16+j-15, (data[i+1+j/8]>>(7-j%8))&1);