SUMO - Simulation of Urban MObility
MSContainerTerminal.h
Go to the documentation of this file.
1 /****************************************************************************/
8 // A collection of stops for container where containers can be transhiped
9 // from one stop to another within the terminal.
10 /****************************************************************************/
11 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
12 // Copyright (C) 2005-2015 DLR (http://www.dlr.de/) and contributors
13 /****************************************************************************/
14 //
15 // This file is part of SUMO.
16 // SUMO is free software: you can redistribute it and/or modify
17 // it under the terms of the GNU General Public License as published by
18 // the Free Software Foundation, either version 3 of the License, or
19 // (at your option) any later version.
20 //
21 /****************************************************************************/
22 #ifndef MSContainerTerminal_h
23 #define MSContainerTerminal_h
24 
25 
26 // ===========================================================================
27 // included modules
28 // ===========================================================================
29 #ifdef _MSC_VER
30 #include <windows_config.h>
31 #else
32 #include <config.h>
33 #endif
34 
35 //#include <vector>
37 //#include <map>
38 //#include <string>
39 #include <set>
40 #include <utils/common/Named.h>
41 
42 
43 // ===========================================================================
44 // class declarations
45 // ===========================================================================
46 //class MSLane;
47 //class SUMOVehicle;
48 class MSContainerStop;
49 
50 
51 // ===========================================================================
52 // class definitions
53 // ===========================================================================
66 class MSContainerTerminal : public Named {
67 public:
73  MSContainerTerminal(const std::string& id,
74  const std::set<MSContainerStop*> stops);
75 
76 
78  virtual ~MSContainerTerminal();
79 //
80 //
81 // /** @brief Returns the lane this bus stop is located at
82 // *
83 // * @return Reference to the lane the bus stop is located at
84 // */
85 // const MSLane& getLane() const;
86 //
87 //
88 // /** @brief Returns the begin position of this bus stop
89 // *
90 // * @return The position the bus stop begins at
91 // */
92 // SUMOReal getBeginLanePosition() const;
93 //
94 //
95 // /** @brief Returns the end position of this bus stop
96 // *
97 // * @return The position the bus stop ends at
98 // */
99 // SUMOReal getEndLanePosition() const;
100 //
101 //
102 // /** @brief Called if a vehicle enters this stop
103 // *
104 // * Stores the position of the entering vehicle in myEndPositions.
105 // *
106 // * Recomputes the free space using "computeLastFreePos" then.
107 // *
108 // * @param[in] what The vehicle that enters the bus stop
109 // * @param[in] beg The begin halting position of the vehicle
110 // * @param[in] what The end halting position of the vehicle
111 // * @see computeLastFreePos
112 // */
113 // void enter(SUMOVehicle* what, SUMOReal beg, SUMOReal end);
114 //
115 //
116 // /** @brief Called if a vehicle leaves this stop
117 // *
118 // * Removes the position of the vehicle from myEndPositions.
119 // *
120 // * Recomputes the free space using "computeLastFreePos" then.
121 // *
122 // * @param[in] what The vehicle that leaves the bus stop
123 // * @see computeLastFreePos
124 // */
125 // void leaveFrom(SUMOVehicle* what);
126 //
127 //
128 // /** @brief Returns the last free position on this stop
129 // *
130 // * @return The last free position of this bus stop
131 // */
132 // SUMOReal getLastFreePos(const SUMOVehicle& forVehicle) const;
133 //
134 //
135 // /** @brief Returns the number of persons waiting on this stop
136 // */
137 // unsigned int getPersonNumber() const {
138 // return static_cast<unsigned int>(myWaitingPersons.size());
139 // }
140 //
141 // void addPerson(MSPerson* p) {
142 // myWaitingPersons.push_back(p);
143 // }
144 //
145 // void removePerson(MSPerson* p) {
146 // std::vector<MSPerson*>::iterator i = std::find(myWaitingPersons.begin(), myWaitingPersons.end(), p);
147 // if (i != myWaitingPersons.end()) {
148 // myWaitingPersons.erase(i);
149 // }
150 // }
151 //
152 //protected:
153 // /** @brief Computes the last free position on this stop
154 // *
155 // * The last free position is the one, the last vehicle ends at.
156 // * It is stored in myLastFreePos. If no vehicle halts, the last free
157 // * position gets the value of myEndPos.
158 // */
159 // void computeLastFreePos();
160 //
161 //
162 protected:
164  std::set<MSContainerStop*> myStops;
165 
166 private:
169 
172 
173 };
174 
175 
176 #endif
177 
178 /****************************************************************************/
179 
A collection of stops for containers where containers can be transhiped from one stop to another with...
A lane area vehicles can halt at and load and unload containers.
std::set< MSContainerStop * > myStops
Returns the lane this bus stop is located at.
MSContainerTerminal(const std::string &id, const std::set< MSContainerStop * > stops)
Constructor.
MSContainerTerminal & operator=(const MSContainerTerminal &)
Invalidated assignment operator.
Base class for objects which have an id.
Definition: Named.h:45
virtual ~MSContainerTerminal()
Destructor.