X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Ftrack.h;h=3c96a82d2cec51f6463c3e958d1b417c3ebb003a;hb=7839b7c3d782abb5c98a24d51cae109407068c02;hp=c434224b527cf272a31b136eda574d977301700b;hpb=3e9c210ddc036cd015228504cc0803c909e27f84;p=r2c2.git diff --git a/source/libmarklin/track.h b/source/libmarklin/track.h index c434224..3c96a82 100644 --- a/source/libmarklin/track.h +++ b/source/libmarklin/track.h @@ -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 */ @@ -20,14 +20,10 @@ class TrackType; class Track { public: - class Loader: public Msp::DataFile::Loader + class Loader: public Msp::DataFile::BasicLoader { - private: - Track &track; - public: Loader(Track &); - Track &get_object() { return track; } private: void position(float, float, float); }; @@ -70,12 +66,15 @@ public: Track *get_link(unsigned) const; void check_slope(); int traverse(unsigned, unsigned) const; + Point get_point(unsigned, unsigned, float) const; /** Creates a copy of the track. The new track will be almost identical, but won't have any links to other tracks, nor a turnout or sensor id. */ Track *copy() const; + + void save(std::list &) const; private: // Direct copying not allowed due to links. See the copy() function.