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-2023 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/****************************************************************************/
22// Builds trigger objects for guisim
23/****************************************************************************/
24#pragma once
25#include <config.h>
26
27#include <string>
30
31
32// ===========================================================================
33// class declarations
34// ===========================================================================
35class MSTrigger;
36class MSNet;
38class MSCalibrator;
39class MSTriggerControl;
40
41
42// ===========================================================================
43// class definitions
44// ===========================================================================
50public:
53
54
57
58
59protected:
64
65
78 const std::string& id, const std::vector<MSLane*>& destLanes,
79 const std::string& file) override;
80
81
92 const std::string& id, MSEdgeVector& edges,
93 double prob, bool off, SUMOTime timeThreshold,
94 const std::string& vTypes) override;
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, RGBColor& color) override;
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 const std::string& departPos) override;
138
139
155 virtual void buildChargingStation(MSNet& net, const std::string& id, MSLane* lane,
156 double frompos, double topos, const std::string& name,
157 double chargingPower, double efficiency,
158 bool chargeInTransit, SUMOTime chargeDelay) override;
159
172 virtual void buildOverheadWireSegment(MSNet& net, const std::string& id, MSLane* lane,
173 double frompos, double topos, bool voltageSource) override;
174
184 virtual void buildOverheadWireClamp(MSNet& net, const std::string& id, MSLane* lane_start, MSLane* lane_end) override;
186
187
191 virtual void endParkingArea() override;
192
197 virtual void endStoppingPlace() override;
198};
long long int SUMOTime
Definition: GUI.h:36
std::vector< MSEdge * > MSEdgeVector
Definition: MSEdge.h:73
SumoXMLTag
Numbers representing SUMO-XML - element names.
Builds trigger objects for guisim.
virtual void buildOverheadWireClamp(MSNet &net, const std::string &id, MSLane *lane_start, MSLane *lane_end) override
Builds an overhead wire clamp.
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, SUMOTime chargeDelay) override
Builds a charging station.
virtual void endParkingArea() override
End a parking area (it must be added to the SUMORTree after all parking spaces are loaded.
virtual MSLaneSpeedTrigger * buildLaneSpeedTrigger(MSNet &net, const std::string &id, const std::vector< MSLane * > &destLanes, const std::string &file) override
Builds a lane speed trigger.
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, RGBColor &color) override
Builds a bus stop.
virtual void endStoppingPlace() override
End a stopping place.
virtual MSTriggeredRerouter * buildRerouter(MSNet &net, const std::string &id, MSEdgeVector &edges, double prob, bool off, SUMOTime timeThreshold, const std::string &vTypes) override
builds an rerouter
GUITriggerBuilder()
Constructor.
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, const std::string &departPos) override
Builds a parking area.
~GUITriggerBuilder()
Destructor.
virtual void buildOverheadWireSegment(MSNet &net, const std::string &id, MSLane *lane, double frompos, double topos, bool voltageSource) override
Builds an overhead wire segment.
Calibrates the flow on a segment to a specified one.
Definition: MSCalibrator.h:47
Representation of a lane in the micro simulation.
Definition: MSLane.h:84
Changes the speed allowed on a set of lanes.
The simulated network and simulation perfomer.
Definition: MSNet.h:88
Reroutes vehicles passing an edge.
Builds trigger objects for microsim.