Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
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-2025 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/****************************************************************************/
23// A lane area vehicles can halt at (gui-version)
24/****************************************************************************/
25#pragma once
26#include <config.h>
27
28#include <vector>
29#include <string>
34#include <guisim/GUIBusStop.h>
38#include <utils/geom/Position.h>
39#include <gui/GUIManipulator.h>
40
41
42// ===========================================================================
43// class declarations
44// ===========================================================================
45class MSNet;
46class MSLane;
47class GUIManipulator;
48
49
50// ===========================================================================
51// class definitions
52// ===========================================================================
65public:
79 GUIChargingStation(const std::string& id, MSLane& lane, double frompos, double topos,
80 const std::string& name, double chargingPower, double totalPower, double efficiency,
81 bool chargeInTransit, SUMOTime chargeDelay, const std::string& chargeType,
82 SUMOTime waitingTime);
83
97 GUIChargingStation(const std::string& id, MSParkingArea* parkingArea,
98 const std::string& name, double chargingPower, double totalPower, double efficiency,
99 bool chargeInTransit, SUMOTime chargeDelay, const std::string& chargeType,
100 SUMOTime waitingTime);
101
104
106
107
116
127
129 double getExaggeration(const GUIVisualizationSettings& s) const override;
130
136 Boundary getCenteringBoundary() const override;
137
139 const std::string getOptionalName() const override;
140
145 void drawGL(const GUIVisualizationSettings& s) const override;
147
148 const Position& getSignPos() const {
149 return myFGSignPos;
150 }
151
152private:
154 void initAppearance(MSLane& lane, double frompos, double topos);
155
156private:
158 std::vector<double> myFGShapeRotations;
159
161 std::vector<double> myFGShapeLengths;
162
165
168
171};
long long int SUMOTime
Definition GUI.h:36
A class that stores a 2D geometrical boundary.
Definition Boundary.h:39
A lane area vehicles can halt at (gui-version)
const std::string getOptionalName() const override
Returns the stopping place name.
std::vector< double > myFGShapeRotations
The rotations of the shape parts.
PositionVector myFGShape
The shape.
std::vector< double > myFGShapeLengths
The lengths of the shape parts.
~GUIChargingStation()
Destructor.
double myFGSignRot
The rotation of the sign.
GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent) override
Returns an own popup-menu.
void initAppearance(MSLane &lane, double frompos, double topos)
Returns the stopping place name.
Boundary getCenteringBoundary() const override
Returns the boundary to which the view shall be centered in order to show the object.
const Position & getSignPos() const
double getExaggeration(const GUIVisualizationSettings &s) const override
return exaggeration associated with this GLObject
GUIParameterTableWindow * getParameterWindow(GUIMainWindow &app, GUISUMOAbstractView &parent) override
Returns an own parameter window.
Position myFGSignPos
The position of the sign.
void drawGL(const GUIVisualizationSettings &s) const override
Draws the object.
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.
A point in 2D or 3D with translation and scaling methods.
Definition Position.h:37
A list of positions.