Eclipse SUMO - Simulation of Urban MObility
GUITriggerBuilder.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2004-2020 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
21 // Builds trigger objects for guisim
22 /****************************************************************************/
23 #pragma once
24 #include <config.h>
25 
26 #include <string>
28 
29 
30 // ===========================================================================
31 // class declarations
32 // ===========================================================================
33 class MSTrigger;
34 class MSNet;
35 class MSLaneSpeedTrigger;
36 class MSCalibrator;
37 class MSTriggerControl;
38 
39 
40 // ===========================================================================
41 // class definitions
42 // ===========================================================================
48 public:
51 
52 
55 
56 
57 protected:
62 
63 
76  const std::string& id, const std::vector<MSLane*>& destLanes,
77  const std::string& file);
78 
79 
91  const std::string& id, MSEdgeVector& edges,
92  double prob, const std::string& file, bool off,
93  SUMOTime timeThreshold,
94  const std::string& vTypes);
95 
96 
110  virtual void buildStoppingPlace(MSNet& net, std::string id, std::vector<std::string> lines, MSLane* lane,
111  double frompos, double topos, const SumoXMLTag element, std::string string,
112  int personCapacity, double parkingLength);
113 
114 
131  virtual void beginParkingArea(MSNet& net, const std::string& id,
132  const std::vector<std::string>& lines, MSLane* lane,
133  double frompos, double topos,
134  unsigned int capacity,
135  double width, double length, double angle, const std::string& name,
136  bool onRoad);
137 
138 
154  virtual void buildChargingStation(MSNet& net, const std::string& id, MSLane* lane,
155  double frompos, double topos, const std::string& name,
156  double chargingPower, double efficiency,
157  bool chargeInTransit, double chargeDelay);
158 
171  virtual void buildOverheadWireSegment(MSNet& net, const std::string& id, MSLane* lane,
172  double frompos, double topos, bool voltageSource);
173 
183  virtual void buildOverheadWireClamp(MSNet& net, const std::string& id, MSLane* lane_start, MSLane* lane_end);
185 
186 
190  virtual void endParkingArea();
191 
196  virtual void endStoppingPlace();
197 };
std::vector< MSEdge * > MSEdgeVector
Definition: MSEdge.h:73
long long int SUMOTime
Definition: SUMOTime.h:31
SumoXMLTag
Numbers representing SUMO-XML - element names.
Builds trigger objects for guisim.
virtual void endStoppingPlace()
End a stopping place.
virtual void buildChargingStation(MSNet &net, const std::string &id, MSLane *lane, double frompos, double topos, const std::string &name, double chargingPower, double efficiency, bool chargeInTransit, double chargeDelay)
Builds a charging station.
virtual MSLaneSpeedTrigger * buildLaneSpeedTrigger(MSNet &net, const std::string &id, const std::vector< MSLane * > &destLanes, const std::string &file)
Builds a lane speed trigger.
virtual void buildOverheadWireSegment(MSNet &net, const std::string &id, MSLane *lane, double frompos, double topos, bool voltageSource)
Builds an overhead wire segment.
virtual MSTriggeredRerouter * buildRerouter(MSNet &net, const std::string &id, MSEdgeVector &edges, double prob, const std::string &file, bool off, SUMOTime timeThreshold, const std::string &vTypes)
builds an rerouter
virtual void beginParkingArea(MSNet &net, const std::string &id, const std::vector< std::string > &lines, MSLane *lane, double frompos, double topos, unsigned int capacity, double width, double length, double angle, const std::string &name, bool onRoad)
Builds a parking area.
virtual void buildOverheadWireClamp(MSNet &net, const std::string &id, MSLane *lane_start, MSLane *lane_end)
Builds an overhead wire clamp.
virtual void buildStoppingPlace(MSNet &net, std::string id, std::vector< std::string > lines, MSLane *lane, double frompos, double topos, const SumoXMLTag element, std::string string, int personCapacity, double parkingLength)
Builds a bus stop.
GUITriggerBuilder()
Constructor.
virtual void endParkingArea()
End a parking area (it must be added to the SUMORTree after all parking spaces are loaded.
~GUITriggerBuilder()
Destructor.
Calibrates the flow on a segment to a specified one.
Definition: MSCalibrator.h:48
Representation of a lane in the micro simulation.
Definition: MSLane.h:82
Changes the speed allowed on a set of lanes.
The simulated network and simulation perfomer.
Definition: MSNet.h:89
An abstract device that changes the state of the micro simulation.
Definition: MSTrigger.h:38
Reroutes vehicles passing an edge.
Builds trigger objects for microsim.