SUMO - Simulation of Urban MObility
GNEChange_Additional.h
Go to the documentation of this file.
1 /****************************************************************************/
8 /****************************************************************************/
9 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
10 // Copyright (C) 2001-2017 DLR (http://www.dlr.de/) and contributors
11 /****************************************************************************/
12 //
13 // This file is part of SUMO.
14 // SUMO is free software; you can redistribute it and/or modify
15 // it under the terms of the GNU General Public License as published by
16 // the Free Software Foundation; either version 3 of the License, or
17 // (at your option) any later version.
18 //
19 /****************************************************************************/
20 #ifndef GNEChange_Additional_h
21 #define GNEChange_Additional_h
22 
23 // ===========================================================================
24 // included modules
25 // ===========================================================================
26 #ifdef _MSC_VER
27 #include <windows_config.h>
28 #else
29 #include <config.h>
30 #endif
31 
32 #include <fx.h>
34 #include <netbuild/NBEdge.h>
35 #include "GNEChange.h"
36 
37 // ===========================================================================
38 // class declarations
39 // ===========================================================================
40 class GNEAdditional;
41 class GNEViewNet;
42 class GNEDetectorEntry;
43 class GNEDetectorExit;
44 class GNEDetectorE3;
45 class GNELane;
46 class GNEEdge;
47 
48 // ===========================================================================
49 // class definitions
50 // ===========================================================================
56  FXDECLARE_ABSTRACT(GNEChange_Additional)
57 
58 public:
63  GNEChange_Additional(GNEAdditional* additional, bool forward);
64 
67 
71  FXString undoName() const;
72 
74  FXString redoName() const;
75 
77  void undo();
78 
80  void redo();
82 
83 private:
88 
91 
94 
97 
99  std::vector<GNEDetectorEntry*> myEntryChilds;
100 
102  std::vector<GNEDetectorExit*> myExitChilds;
103 
105  std::vector<GNEEdge*> myEdgeChilds;
106 };
107 
108 #endif
109 /****************************************************************************/
GNEEdge * myEdgeParent
pointer to edge (used by additionals with edge parent)
the function-object for an editing operation (abstract base)
Definition: GNEChange.h:49
FXString redoName() const
get Redo name
std::vector< GNEDetectorEntry * > myEntryChilds
list of Entry detectors child (used by E3 Detector)
std::vector< GNEEdge * > myEdgeChilds
list of Edge childs (used by Rerouters)
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
Definition: GNELane.h:54
~GNEChange_Additional()
Destructor.
FXString undoName() const
return undoName
GNEAdditional * myAdditional
full information regarding the additional element that is to be created/deleted
std::vector< GNEDetectorExit * > myExitChilds
list of Exit detectors child used (used by E3 Detector)
GNEChange_Additional(GNEAdditional *additional, bool forward)
Constructor for creating/deleting an additional element.
A road/street connecting two junctions (netedit-version)
Definition: GNEEdge.h:57
An Element which don&#39;t belongs to GNENet but has influency in the simulation.
Definition: GNEAdditional.h:62
GNEDetectorE3 * myE3Parent
pointer to E3 parent (used by Entry/exits)
GNELane * myLaneParent
pointer to lane (used by additionals with lane parent)