]> git.tdb.fi Git - r2c2.git/blobdiff - source/libmarklin/turnout.h
Add state loading and saving to engineer
[r2c2.git] / source / libmarklin / turnout.h
index 0928eadc445e48311b9c075a4b483e8374b77c20..ae6865406523007285bf34ba561ae55105b1375a 100644 (file)
@@ -1,7 +1,7 @@
 /* $Id$
 
 This file is part of the MSP Märklin suite
-Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
+Copyright © 2006-2009 Mikkosoft Productions, Mikko Rasa
 Distributed under the GPL
 */
 
@@ -17,6 +17,7 @@ Distributed under the GPL
 namespace Marklin {
 
 class Control;
+class Reply;
 
 class Turnout
 {
@@ -24,18 +25,19 @@ private:
        Control  &control;
        unsigned addr;
        unsigned route;
+       bool     dual;
 
 public:
        sigc::signal<void, unsigned> signal_route_changed;
 
-       Turnout(Control &, unsigned);
+       Turnout(Control &, unsigned, bool =false);
 
        void     set_route(unsigned);
        unsigned get_address() const { return addr; }
        unsigned get_route() const   { return route; }
 private:
        void command(bool);
-       void status_reply(Error, const std::string &);
+       void status_reply(const Reply &, bool);
        bool switch_timeout();
        void turnout_event(unsigned, bool);
 };