SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TraCIServerAPI_Lane.h
Go to the documentation of this file.
1 /****************************************************************************/
8 // APIs for getting/setting lane values via TraCI
9 /****************************************************************************/
10 // SUMO, Simulation of Urban MObility; see http://sumo-sim.org/
11 // Copyright (C) 2001-2013 DLR (http://www.dlr.de/) and contributors
12 /****************************************************************************/
13 //
14 // This file is part of SUMO.
15 // SUMO is free software: you can redistribute it and/or modify
16 // it under the terms of the GNU General Public License as published by
17 // the Free Software Foundation, either version 3 of the License, or
18 // (at your option) any later version.
19 //
20 /****************************************************************************/
21 #ifndef TraCIServerAPI_Lane_h
22 #define TraCIServerAPI_Lane_h
23 
24 
25 // ===========================================================================
26 // included modules
27 // ===========================================================================
28 #ifdef _MSC_VER
29 #include <windows_config.h>
30 #else
31 #include <config.h>
32 #endif
33 
34 #ifndef NO_TRACI
35 
36 #include <foreign/tcpip/storage.h>
37 
38 
39 // ===========================================================================
40 // class declarations
41 // ===========================================================================
42 class TraCIServer;
43 
44 
45 // ===========================================================================
46 // class definitions
47 // ===========================================================================
53 public:
60  static bool processGet(TraCIServer& server, tcpip::Storage& inputStorage,
61  tcpip::Storage& outputStorage);
62 
63 
70  static bool processSet(TraCIServer& server, tcpip::Storage& inputStorage,
71  tcpip::Storage& outputStorage);
72 
73 
80  static bool getShape(const std::string& id, PositionVector& shape);
81 
82 
87  public:
89  StoringVisitor(std::set<std::string>& ids, const PositionVector& shape,
90  const SUMOReal range, const int domain)
91  : myIDs(ids), myShape(shape), myRange(range), myDomain(domain) {}
92 
95 
97  void add(const MSLane* const l) const;
98 
100  std::set<std::string>& myIDs;
103  const int myDomain;
104 
105  private:
107  StoringVisitor(const StoringVisitor& src);
108 
111  };
112 
113 
114 private:
117 
120 
121 
122 };
123 
124 
125 #endif
126 
127 #endif
128 
129 /****************************************************************************/