]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/centralstation.h
Add functions to resolve an arbitrary point to the nearest point on a track
[r2c2.git] / source / libr2c2 / centralstation.h
index fea882be1011230fa9d6f8c86fc77a7dfbc6288d..4539e0b10d00f56db768b9c416b5d138e87ab546 100644 (file)
@@ -1,10 +1,3 @@
-/* $Id$
-
-This file is part of R²C²
-Copyright © 2010  Mikkosoft Productions, Mikko Rasa
-Distributed under the GPL
-*/
-
 #ifndef LIBR2C2_CENTRALSTATION_H_
 #define LIBR2C2_CENTRALSTATION_H_
 
@@ -30,7 +23,7 @@ private:
 
        struct Message
        {
-               typedef std::map<std::string, std::string> AttribMap;
+               typedef std::multimap<std::string, std::string> AttribMap;
                typedef std::map<unsigned, AttribMap> ObjectMap;
        
                Tag header;
@@ -68,6 +61,7 @@ private:
                unsigned address;
                unsigned speed;
                bool reverse;
+               unsigned func_mask;
                unsigned funcs;
                bool control;
 
@@ -78,10 +72,12 @@ private:
        {
                enum Symbol
                {
-                       LEFT,
-                       RIGHT,
-                       THREEWAY,
-                       DOUBLESLIP
+                       LEFT = 0,
+                       RIGHT = 1,
+                       THREEWAY = 2,
+                       DOUBLESLIP = 3,
+                       CURVED_LEFT = 21,
+                       CURVED_RIGHT = 22
                };
 
                unsigned address;