Eclipse SUMO - Simulation of Urban MObility
GNEParkingAreaReroute.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2001-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
15 //
16 /****************************************************************************/
17 #ifndef GNEParkingAreaReroute_h
18 #define GNEParkingAreaReroute_h
19 
20 
21 // ===========================================================================
22 // included modules
23 // ===========================================================================
24 
25 #include "GNEAdditional.h"
26 
27 // ===========================================================================
28 // class declarations
29 // ===========================================================================
30 
31 class GNEEdge;
34 class GNEParkingArea;
35 
36 // ===========================================================================
37 // class definitions
38 // ===========================================================================
44 
45 public:
47  GNEParkingAreaReroute(GNERerouterIntervalDialog* rerouterIntervalDialog);
48 
50  GNEParkingAreaReroute(GNEAdditional* rerouterIntervalParent, GNEAdditional* newParkingArea, double probability, bool visible);
51 
54 
57 
60  void moveGeometry(const Position& offset);
61 
65  void commitGeometryMoving(GNEUndoList* undoList);
66 
68  void updateGeometry();
69 
72 
76 
79 
82  std::string getParentName() const;
83 
88  void drawGL(const GUIVisualizationSettings& s) const;
90 
93  /* @brief method for getting the Attribute of an XML key
94  * @param[in] key The attribute key
95  * @return string with the value associated to key
96  */
97  std::string getAttribute(SumoXMLAttr key) const;
98 
99  /* @brief method for setting the attribute and letting the object perform additional changes
100  * @param[in] key The attribute key
101  * @param[in] value The new value
102  * @param[in] undoList The undoList on which to register changes
103  */
104  void setAttribute(SumoXMLAttr key, const std::string& value, GNEUndoList* undoList);
105 
106  /* @brief method for checking if the key and their correspond attribute are valids
107  * @param[in] key The attribute key
108  * @param[in] value The value asociated to key key
109  * @return true if the value is valid, false in other case
110  */
111  bool isValid(SumoXMLAttr key, const std::string& value);
112 
114  std::string getPopUpID() const;
115 
117  std::string getHierarchyName() const;
119 
120 protected:
123 
125  bool myVisible;
126 
127 private:
129  void setAttribute(SumoXMLAttr key, const std::string& value);
130 
133 
136 };
137 
138 #endif
139 
140 /****************************************************************************/
std::string getAttribute(SumoXMLAttr key) const
Dialog for edit rerouter intervals.
Stores the information about how to visualize structures.
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
std::string getPopUpID() const
get PopPup ID (Used in AC Hierarchy)
A class that stores a 2D geometrical boundary.
Definition: Boundary.h:42
bool isValid(SumoXMLAttr key, const std::string &value)
method for checking if the key and their conrrespond attribute are valids
Position getPositionInView() const
Returns position of additional in view.
double myProbability
probability with which a vehicle will use the given edge as destination
A lane area vehicles can park at (netedit-version)
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:39
void updateGeometry()
update pre-computed geometry information
bool myVisible
enable or disable visibility of Parking Area Reroute
std::string getHierarchyName() const
get Hierarchy Name (Used in AC Hierarchy)
GNEParkingAreaReroute(GNERerouterIntervalDialog *rerouterIntervalDialog)
constructor (Used in GNERerouterIntervalDialog)
A road/street connecting two junctions (netedit-version)
Definition: GNEEdge.h:50
Boundary getCenteringBoundary() const
Returns the boundary to which the view shall be centered in order to show the object.
An Element which don't belongs to GNENet but has influency in the simulation.
Definition: GNEAdditional.h:47
std::string getParentName() const
Returns the name of the parent object.
GNEParkingAreaReroute & operator=(const GNEParkingAreaReroute &)=delete
Invalidated assignment operator.
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)
method for setting the attribute and letting the object perform additional changes ...
void commitGeometryMoving(GNEUndoList *undoList)
commit geometry changes in the attributes of an element after use of moveGeometry(...)
void moveGeometry(const Position &offset)
change the position of the element geometry without saving in undoList