]> git.tdb.fi Git - r2c2.git/blobdiff - source/libmarklin/catalogue.h
Add an internal layout to Catalogue for selecting tracks
[r2c2.git] / source / libmarklin / catalogue.h
index 5d88c28dcd0dac2543421bad27e6ced57da3e0ba..e531941b40fb6e1c072491f90094b2ae8164ce1a 100644 (file)
@@ -10,6 +10,7 @@ Distributed under the GPL
 
 #include <map>
 #include <msp/datafile/loader.h>
+#include "layout.h"
 #include "profile.h"
 
 namespace Marklin {
@@ -27,6 +28,7 @@ public:
        private:
                void ballast_profile();
                void gauge(float);
+               void layout();
                void locomotive(unsigned);
                void rail_profile();
                void scale(float, float);
@@ -40,6 +42,7 @@ private:
        Profile ballast_profile;
        std::map<unsigned, TrackType *> tracks;
        std::map<unsigned, LocoType *> locos;
+       Layout layout;
 
 public:
        Catalogue();
@@ -53,6 +56,7 @@ public:
        const std::map<unsigned, TrackType *> &get_tracks() const { return tracks; }
        LocoType &get_locomotive(unsigned) const;
        const std::map<unsigned, LocoType *> &get_locomotives() const { return locos; }
+       Layout &get_layout() { return layout; }
 };
 
 } // namespace Marklin