]> git.tdb.fi Git - r2c2.git/blobdiff - source/libmarklin/tracktype.cpp
Add TrackIter and BlockIter classes
[r2c2.git] / source / libmarklin / tracktype.cpp
index 19b0c6b4a3e83ecbeeef8a10fe710d832d8ce993..1a39877a94bbb649d86b193e133c4030aa61a1a1 100644 (file)
@@ -14,7 +14,8 @@ using namespace Msp;
 namespace Marklin {
 
 TrackType::TrackType(unsigned a):
-       art_nr(a)
+       art_nr(a),
+       double_address(false)
 { }
 
 float TrackType::get_total_length() const
@@ -52,9 +53,9 @@ bool TrackType::is_turnout() const
        return endpoints.size()>2;
 }
 
-bool TrackType::is_double_address() const
+bool TrackType::is_dead_end() const
 {
-       return get_n_paths()>2;
+       return endpoints.size()<2;
 }
 
 TrackPoint TrackType::get_point(unsigned epi, unsigned path, float d) const
@@ -158,6 +159,7 @@ TrackType::Loader::Loader(TrackType &t):
        Msp::DataFile::BasicLoader<TrackType>(t)
 {
        add("description", &TrackType::description);
+       add("double_address", &TrackType::double_address);
        add("part",        &Loader::part);
 }