]> git.tdb.fi Git - r2c2.git/blob - source/libmarklin/route.h
f5b760265b5b30159fe44e2103ffe7691af81850
[r2c2.git] / source / libmarklin / route.h
1 #ifndef LIBMARKLIN_ROUTE_H_
2 #define LIBMARKLIN_ROUTE_H_
3
4 #include <list>
5 #include <string>
6 #include "track.h"
7
8 namespace Marklin {
9
10 class Route
11 {
12 public:
13         typedef std::map<unsigned, unsigned> TurnoutMap;
14
15         Route();
16         const TurnoutMap &get_turnouts() const { return turnouts; }
17         void add_track(Track *);
18         ~Route();
19 private:
20         std::string name;
21         TrackSeq    tracks;
22         TurnoutMap  turnouts;
23 };
24 typedef std::list<Route *> RouteSeq;
25
26 } // namespace Marklin
27
28 #endif