Eclipse SUMO - Simulation of Urban MObility
GNERouteProbReroute.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 GNERouteProbReroute_h
18 #define GNERouteProbReroute_h
19 
20 
21 // ===========================================================================
22 // included modules
23 // ===========================================================================
24 
25 #include "GNEAdditional.h"
26 
27 // ===========================================================================
28 // class declarations
29 // ===========================================================================
30 
31 class GNEEdge;
34 
35 // ===========================================================================
36 // class definitions
37 // ===========================================================================
38 
44 public:
46  GNERouteProbReroute(GNERerouterIntervalDialog* rerouterIntervalDialog);
47 
49  GNERouteProbReroute(GNEAdditional* rerouterIntervalParent, const std::string& newRouteId, double probability);
50 
53 
56 
59  void moveGeometry(const Position& offset);
60 
64  void commitGeometryMoving(GNEUndoList* undoList);
65 
67  void updateGeometry();
68 
71 
75 
78 
81  std::string getParentName() const;
82 
87  void drawGL(const GUIVisualizationSettings& s) const;
89 
92  /* @brief method for getting the Attribute of an XML key
93  * @param[in] key The attribute key
94  * @return string with the value associated to key
95  */
96  std::string getAttribute(SumoXMLAttr key) const;
97 
98  /* @brief method for setting the attribute and letting the object perform additional changes
99  * @param[in] key The attribute key
100  * @param[in] value The new value
101  * @param[in] undoList The undoList on which to register changes
102  */
103  void setAttribute(SumoXMLAttr key, const std::string& value, GNEUndoList* undoList);
104 
105  /* @brief method for checking if the key and their correspond attribute are valids
106  * @param[in] key The attribute key
107  * @param[in] value The value asociated to key key
108  * @return true if the value is valid, false in other case
109  */
110  bool isValid(SumoXMLAttr key, const std::string& value);
111 
113  std::string getPopUpID() const;
114 
116  std::string getHierarchyName() const;
118 
119 protected:
121  std::string myNewRouteId;
122 
125 
126 private:
128  void setAttribute(SumoXMLAttr key, const std::string& value);
129 
131  GNERouteProbReroute(const GNERouteProbReroute&) = delete;
132 
135 };
136 
137 #endif
138 
139 /****************************************************************************/
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
Position getPositionInView() const
Returns position of additional in view.
std::string getPopUpID() const
get PopPup ID (Used in AC Hierarchy)
Dialog for edit rerouter intervals.
Stores the information about how to visualize structures.
std::string myNewRouteId
id of new route
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
double myProbability
probability with which a vehicle will use the given edge as destination
void moveGeometry(const Position &offset)
change the position of the element geometry without saving in undoList
A class that stores a 2D geometrical boundary.
Definition: Boundary.h:42
GNERouteProbReroute & operator=(const GNERouteProbReroute &)=delete
Invalidated assignment operator.
void commitGeometryMoving(GNEUndoList *undoList)
commit geometry changes in the attributes of an element after use of moveGeometry(...)
A point in 2D or 3D with translation and scaling methods.
Definition: Position.h:39
std::string getAttribute(SumoXMLAttr key) const
~GNERouteProbReroute()
destructor
std::string getParentName() const
Returns the name of the parent object.
void updateGeometry()
update pre-computed geometry information
A road/street connecting two junctions (netedit-version)
Definition: GNEEdge.h:50
std::string getHierarchyName() const
get Hierarchy Name (Used in AC Hierarchy)
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
GNERouteProbReroute(GNERerouterIntervalDialog *rerouterIntervalDialog)
constructor (Used in GNERerouterIntervalDialog)
bool isValid(SumoXMLAttr key, const std::string &value)
method for checking if the key and their conrrespond attribute are valids
void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)
method for setting the attribute and letting the object perform additional changes ...