X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibmarklin%2Flayout.h;h=f603d39f2f0b8ad3e4262e9b583254c4e13dc6eb;hb=3df8cb5c78fbb0b919bcb79677c6c788b8028482;hp=ada287cfdedb1db414162d6a9164b1f2897be7cd;hpb=3e9c210ddc036cd015228504cc0803c909e27f84;p=r2c2.git diff --git a/source/libmarklin/layout.h b/source/libmarklin/layout.h index ada287c..f603d39 100644 --- a/source/libmarklin/layout.h +++ b/source/libmarklin/layout.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,20 +20,17 @@ class Catalogue; class Layout { public: - class Loader: public Msp::DataFile::Loader + class Loader: public Msp::DataFile::BasicLoader { public: Loader(Layout &); - Layout &get_object() { return layout; } private: - Layout &layout; - + virtual void finish(); void track(unsigned); }; private: - Catalogue &catalogue; - std::string filename; + const Catalogue &catalogue; std::string base; std::set tracks; //RouteSeq routes; @@ -42,15 +39,16 @@ public: sigc::signal signal_track_added; sigc::signal signal_track_removed; - Layout(Catalogue &); + Layout(const Catalogue &); ~Layout(); + const Catalogue &get_catalogue() const { return catalogue; } + const std::string &get_base() const { return base; } const std::set &get_tracks() const { return tracks; } void add_track(Track &); void remove_track(Track &); void check_links(); - void load(const std::string &); - int save(const std::string &); + void save(const std::string &); }; } // namespace Marklin