]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/block.cpp
Only create track circuits for blocks that need one
[r2c2.git] / source / libr2c2 / block.cpp
index 2df313e27c1f8c53104c4314908be2391eec7b52..f02762c85a958e668b5b4e200c86bcbb877f0767 100644 (file)
@@ -18,6 +18,7 @@ Block::Block(Layout &l, Track &start):
        id(0),
        sensor_id(start.get_sensor_id()),
        turnout_id(start.get_turnout_id()),
+       sensor(0),
        train(0)
 {
        add_track(start);
@@ -43,7 +44,8 @@ Block::Block(Layout &l, Track &start):
 
        determine_id();
 
-       sensor = new TrackCircuit(layout, *this);
+       if(sensor_id)
+               sensor = new TrackCircuit(layout, *this);
 
        layout.add(*this);
 }