X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Ftrackpart.h;h=0411d72ab3ee2d649851656dea18c6efd2dcb8a7;hb=02c9a9779954d993cb73fe5f7a72b0847e87f633;hp=043dd0d0d78f71db2d7f0bcc37aab40b9080929d;hpb=1d735b80482317fd930eb47ca255ab9f1f120a7d;p=r2c2.git diff --git a/source/libmarklin/trackpart.h b/source/libmarklin/trackpart.h index 043dd0d..0411d72 100644 --- a/source/libmarklin/trackpart.h +++ b/source/libmarklin/trackpart.h @@ -1,37 +1,41 @@ +/* $Id$ + +This file is part of the MSP Märklin suite +Copyright © 2006-2009 Mikkosoft Productions, Mikko Rasa +Distributed under the GPL +*/ + #ifndef MARKLIN_TRACKPART_H_ #define MARKLIN_TRACKPART_H_ #include #include "endpoint.h" +#include "geometry.h" namespace Marklin { struct TrackPart { - class Loader: public Msp::DataFile::Loader + class Loader: public Msp::DataFile::BasicLoader { - private: - TrackPart ∂ - public: Loader(TrackPart &); - TrackPart &get_object() { return part; } private: virtual void finish(); - void start(float, float, float); }; - float x, y; - float dir; - float length; - float radius; - unsigned route; - bool dead_end; + Point pos; + float dir; + float length; + float radius; + unsigned path; + bool dead_end; TrackPart(); - void collect_endpoints(std::vector &); + void collect_endpoints(std::vector &) const; + Point get_point(float) const; }; } // namespace Marklin