]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/track.cpp
Rename turnout/sensor_id fields in Track and Block to *_addr
[r2c2.git] / source / libr2c2 / track.cpp
index 25159863917ab266de87bd44b5472f01702242d0..44d992ba07290bef90ded2471b99c36c029db89c 100644 (file)
@@ -33,20 +33,20 @@ Track::Track(Layout &l, const TrackType &t):
        block(0),
        slope(0),
        flex(false),
-       turnout_id(0),
-       sensor_id(0),
+       turnout_addr(0),
+       sensor_addr(0),
        links(type.get_endpoints().size()),
        active_path(0),
        path_changing(false)
 {
        if(type.is_turnout())
        {
-               turnout_id = layout.allocate_turnout_id();
+               turnout_addr = layout.allocate_turnout_address();
 
                if(layout.has_driver())
                {
                        Driver &driver = layout.get_driver();
-                       driver.add_turnout(turnout_id, type);
+                       driver.add_turnout(turnout_addr, type);
                        driver.signal_turnout.connect(sigc::mem_fun(this, &Track::turnout_event));
                }
        }
@@ -60,8 +60,8 @@ Track::Track(Layout &l, const TrackType &t):
 Track::~Track()
 {
        break_links();
-       if(layout.has_driver() && turnout_id)
-               layout.get_driver().remove_turnout(turnout_id);
+       if(layout.has_driver() && turnout_addr)
+               layout.get_driver().remove_turnout(turnout_addr);
        layout.remove(*this);
 }
 
@@ -157,43 +157,43 @@ void Track::check_slope()
        signal_moved.emit();
 }
 
-void Track::set_turnout_id(unsigned i)
+void Track::set_turnout_address(unsigned a)
 {
        if(!type.is_turnout())
                throw logic_error("not a turnout");
-       if(!i)
+       if(!a)
                throw invalid_argument("Track::set_turnout_id");
 
        Driver *driver = (layout.has_driver() ? &layout.get_driver() : 0);
 
-       if(driver && turnout_id)
-               driver->remove_turnout(turnout_id);
-       turnout_id = i;
+       if(driver && turnout_addr)
+               driver->remove_turnout(turnout_addr);
+       turnout_addr = a;
        layout.create_blocks(*this);
        layout.update_routes();
-       if(driver && turnout_id)
-               driver->add_turnout(turnout_id, type);
+       if(driver && turnout_addr)
+               driver->add_turnout(turnout_addr, type);
 }
 
-void Track::set_sensor_id(unsigned i)
+void Track::set_sensor_address(unsigned a)
 {
        if(type.is_turnout())
                throw logic_error("is a turnout");
 
-       sensor_id = i;
+       sensor_addr = a;
        layout.create_blocks(*this);
 }
 
 void Track::set_active_path(unsigned p)
 {
-       if(!turnout_id)
+       if(!turnout_addr)
                throw logic_error("not a turnout");
        if(!(type.get_paths()&(1<<p)))
                throw invalid_argument("Track::set_active_path");
 
        signal_path_changing(p);
        path_changing = true;
-       layout.get_driver().set_turnout(turnout_id, p);
+       layout.get_driver().set_turnout(turnout_addr, p);
 }
 
 float Track::get_path_length(int p) const
@@ -398,17 +398,17 @@ void Track::save(list<DataFile::Statement> &st) const
        st.push_back((DataFile::Statement("position"), position.x, position.y, position.z));
        st.push_back((DataFile::Statement("rotation"), rotation.radians()));
        st.push_back((DataFile::Statement("tilt"), tilt.radians()));
-       if(turnout_id)
-               st.push_back((DataFile::Statement("turnout_id"), turnout_id));
-       if(sensor_id)
-               st.push_back((DataFile::Statement("sensor_id"), sensor_id));
+       if(turnout_addr)
+               st.push_back((DataFile::Statement("turnout_address"), turnout_addr));
+       if(sensor_addr)
+               st.push_back((DataFile::Statement("sensor_address"), sensor_addr));
        if(flex)
                st.push_back((DataFile::Statement("flex"), true));
 }
 
 void Track::turnout_event(unsigned addr, unsigned state)
 {
-       if(addr==turnout_id)
+       if(addr==turnout_addr)
        {
                active_path = state;
                path_changing = false;
@@ -423,8 +423,10 @@ Track::Loader::Loader(Track &t):
        add("position",   &Loader::position);
        add("rotation",   &Loader::rotation);
        add("tilt",       &Loader::tilt);
-       add("turnout_id", &Loader::turnout_id);
-       add("sensor_id",  &Loader::sensor_id);
+       add("turnout_id", &Loader::turnout_address);
+       add("turnout_address", &Loader::turnout_address);
+       add("sensor_id",  &Loader::sensor_address);
+       add("sensor_address",  &Loader::sensor_address);
        add("flex",       &Track::flex);
 
        // deprecated
@@ -441,9 +443,9 @@ void Track::Loader::rotation(float r)
        obj.set_rotation(Angle::from_radians(r));
 }
 
-void Track::Loader::sensor_id(unsigned id)
+void Track::Loader::sensor_address(unsigned addr)
 {
-       obj.set_sensor_id(id);
+       obj.set_sensor_address(addr);
 }
 
 void Track::Loader::slope(float s)
@@ -456,9 +458,9 @@ void Track::Loader::tilt(float t)
        obj.set_tilt(Angle::from_radians(t));
 }
 
-void Track::Loader::turnout_id(unsigned id)
+void Track::Loader::turnout_address(unsigned addr)
 {
-       obj.set_turnout_id(id);
+       obj.set_turnout_address(addr);
 }
 
 } // namespace R2C2