Eclipse SUMO - Simulation of Urban MObility
GUIChargingStation.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2001-2024 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 // A lane area vehicles can halt at (gui-version)
23 /****************************************************************************/
24 #pragma once
25 #include <config.h>
26 
27 #include <vector>
28 #include <string>
29 #include <utils/common/Command.h>
33 #include <guisim/GUIBusStop.h>
37 #include <utils/geom/Position.h>
38 #include <gui/GUIManipulator.h>
39 
40 
41 // ===========================================================================
42 // class declarations
43 // ===========================================================================
44 class MSNet;
45 class MSLane;
46 class GUIManipulator;
47 
48 
49 // ===========================================================================
50 // class definitions
51 // ===========================================================================
64 public:
77  GUIChargingStation(const std::string& id, MSLane& lane, double frompos, double topos,
78  const std::string& name, double chargingPower, double efficiency,
79  bool chargeInTransit, SUMOTime chargeDelay, const std::string& chargeType,
80  SUMOTime waitingTime);
81 
94  GUIChargingStation(const std::string& id, MSParkingArea* parkingArea,
95  const std::string& name, double chargingPower, double efficiency,
96  bool chargeInTransit, SUMOTime chargeDelay, const std::string& chargeType,
97  SUMOTime waitingTime);
98 
101 
103 
104 
113 
124 
126  double getExaggeration(const GUIVisualizationSettings& s) const;
127 
134 
136  const std::string getOptionalName() const;
137 
142  void drawGL(const GUIVisualizationSettings& s) const;
144 
145 private:
147  void initAppearance(MSLane& lane, double frompos, double topos);
148 
149 private:
151  std::vector<double> myFGShapeRotations;
152 
154  std::vector<double> myFGShapeLengths;
155 
158 
161 
163  double myFGSignRot;
164 };
long long int SUMOTime
Definition: GUI.h:35
A class that stores a 2D geometrical boundary.
Definition: Boundary.h:39
A lane area vehicles can halt at (gui-version)
std::vector< double > myFGShapeRotations
The rotations of the shape parts.
PositionVector myFGShape
The shape.
std::vector< double > myFGShapeLengths
The lengths of the shape parts.
double getExaggeration(const GUIVisualizationSettings &s) const
return exaggeration associated with this GLObject
~GUIChargingStation()
Destructor.
const std::string getOptionalName() const
Returns the stopping place name.
double myFGSignRot
The rotation of the sign.
void initAppearance(MSLane &lane, double frompos, double topos)
Returns the stopping place name.
GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own popup-menu.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own parameter window.
GUIChargingStation(const std::string &id, MSLane &lane, double frompos, double topos, const std::string &name, double chargingPower, double efficiency, bool chargeInTransit, SUMOTime chargeDelay, const std::string &chargeType, SUMOTime waitingTime)
Constructor.
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
Position myFGSignPos
The position of the sign.
The popup menu of a globject.
A window containing a gl-object's parameter.
Stores the information about how to visualize structures.
Representation of a lane in the micro simulation.
Definition: MSLane.h:84
The simulated network and simulation perfomer.
Definition: MSNet.h:89
A lane area vehicles can halt at.
Definition: MSParkingArea.h:60
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:37
A list of positions.