Eclipse SUMO - Simulation of Urban MObility
GNEChange_Connection Class Reference

#include <GNEChange_Connection.h>

Inheritance diagram for GNEChange_Connection:
Collaboration diagram for GNEChange_Connection:

Public Member Functions

 GNEChange_Connection (GNEEdge *edge, NBEdge::Connection nbCon, bool selected, bool forward)
 Constructor for creating/deleting a connection. More...
 
virtual FXuint size () const
 return actual size More...
 
 ~GNEChange_Connection ()
 Destructor. More...
 
inherited from GNEChange

get undo Name

FXString undoName () const
 return undoName More...
 
FXString redoName () const
 get Redo name More...
 
void undo ()
 undo action More...
 
void redo ()
 redo action More...
 

Protected Member Functions

template<typename T >
void addElementInParentsAndChildren (T *element)
 add given element into parents and children (only use in redo() function) More...
 
template<typename T >
void removeElementFromParentsAndChildren (T *element)
 remove given element from parents and children (only use in redo() function) More...
 
void restoreHierarchicalContainers ()
 restore container (only use in undo() function) More...
 

Protected Attributes

bool myForward
 we group antagonistic commands (create junction/delete junction) and keep them apart by this flag More...
 
std::map< GNEHierarchicalElement *, GNEHierarchicalContainermyHierarchicalContainers
 map with hierarchical container of all parent and children elements More...
 
const GNEHierarchicalContainer myOriginalHierarchicalContainer
 Hierarchical container with parent and children. More...
 
const bool mySelectedElement
 flag for check if element is selected More...
 

Private Attributes

GNEEdgemyEdge
 
NBEdge::Connection myNBEdgeConnection
 the data which must be copied because the original reference does not persist More...
 

Detailed Description

A network change in which a single lane is created or deleted

Definition at line 32 of file GNEChange_Connection.h.

Constructor & Destructor Documentation

◆ GNEChange_Connection()

GNEChange_Connection::GNEChange_Connection ( GNEEdge edge,
NBEdge::Connection  nbCon,
bool  selected,
bool  forward 
)

Constructor for creating/deleting a connection.

Parameters
[in]edgeThe source edge of the connection
[in]nbConThe data of the connection
[in]checkif in the moment of change connection was selected
[in]forwardWhether to create/delete (true/false)

Definition at line 36 of file GNEChange_Connection.cpp.

◆ ~GNEChange_Connection()

GNEChange_Connection::~GNEChange_Connection ( )

Destructor.

Definition at line 43 of file GNEChange_Connection.cpp.

Member Function Documentation

◆ addElementInParentsAndChildren()

template<typename T >
void GNEChange::addElementInParentsAndChildren ( T *  element)
inlineprotectedinherited

◆ redo()

◆ redoName()

FXString GNEChange_Connection::redoName ( ) const
virtual

get Redo name

Reimplemented from GNEChange.

Definition at line 104 of file GNEChange_Connection.cpp.

References GNEChange::myForward, SUMO_TAG_CONNECTION, and toString().

◆ removeElementFromParentsAndChildren()

template<typename T >
void GNEChange::removeElementFromParentsAndChildren ( T *  element)
inlineprotectedinherited

◆ restoreHierarchicalContainers()

void GNEChange::restoreHierarchicalContainers ( )
protectedinherited

restore container (only use in undo() function)

Definition at line 82 of file GNEChange.cpp.

References GNEChange::myHierarchicalContainers.

Referenced by GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_GenericData::undo(), GNEChange_Lane::undo(), GNEChange_Shape::undo(), and GNEChange_TAZElement::undo().

Here is the caller graph for this function:

◆ size()

FXuint GNEChange::size ( ) const
virtualinherited

return actual size

Definition at line 56 of file GNEChange.cpp.

◆ undo()

◆ undoName()

FXString GNEChange_Connection::undoName ( ) const
virtual

return undoName

Reimplemented from GNEChange.

Definition at line 94 of file GNEChange_Connection.cpp.

References GNEChange::myForward, SUMO_TAG_CONNECTION, and toString().

Field Documentation

◆ myEdge

GNEEdge* GNEChange_Connection::myEdge
private

Definition at line 66 of file GNEChange_Connection.h.

Referenced by redo(), and undo().

◆ myForward

bool GNEChange::myForward
protectedinherited

we group antagonistic commands (create junction/delete junction) and keep them apart by this flag

Definition at line 215 of file GNEChange.h.

Referenced by GNEChange_Additional::redo(), GNEChange_Children::redo(), redo(), GNEChange_Crossing::redo(), GNEChange_DataInterval::redo(), GNEChange_DataSet::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_EdgeType::redo(), GNEChange_GenericData::redo(), GNEChange_Junction::redo(), GNEChange_Lane::redo(), GNEChange_LaneType::redo(), GNEChange_Shape::redo(), GNEChange_TAZElement::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redoName(), GNEChange_Children::redoName(), redoName(), GNEChange_Crossing::redoName(), GNEChange_DataInterval::redoName(), GNEChange_DataSet::redoName(), GNEChange_DemandElement::redoName(), GNEChange_Edge::redoName(), GNEChange_EdgeType::redoName(), GNEChange_GenericData::redoName(), GNEChange_Junction::redoName(), GNEChange_Lane::redoName(), GNEChange_LaneType::redoName(), GNEChange_Shape::redoName(), GNEChange_TAZElement::redoName(), GNEChange_TLS::redoName(), GNEChange_Additional::undo(), GNEChange_Children::undo(), undo(), GNEChange_Crossing::undo(), GNEChange_DataInterval::undo(), GNEChange_DataSet::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_EdgeType::undo(), GNEChange_GenericData::undo(), GNEChange_Junction::undo(), GNEChange_Lane::undo(), GNEChange_LaneType::undo(), GNEChange_Shape::undo(), GNEChange_TAZElement::undo(), GNEChange_TLS::undo(), GNEChange_Additional::undoName(), GNEChange_Children::undoName(), undoName(), GNEChange_Crossing::undoName(), GNEChange_DataInterval::undoName(), GNEChange_DataSet::undoName(), GNEChange_DemandElement::undoName(), GNEChange_Edge::undoName(), GNEChange_EdgeType::undoName(), GNEChange_GenericData::undoName(), GNEChange_Junction::undoName(), GNEChange_Lane::undoName(), GNEChange_LaneType::undoName(), GNEChange_Shape::undoName(), GNEChange_TAZElement::undoName(), and GNEChange_TLS::undoName().

◆ myHierarchicalContainers

std::map<GNEHierarchicalElement*, GNEHierarchicalContainer> GNEChange::myHierarchicalContainers
protectedinherited

map with hierarchical container of all parent and children elements

Definition at line 224 of file GNEChange.h.

Referenced by GNEChange::GNEChange(), and GNEChange::restoreHierarchicalContainers().

◆ myNBEdgeConnection

NBEdge::Connection GNEChange_Connection::myNBEdgeConnection
private

the data which must be copied because the original reference does not persist

Definition at line 69 of file GNEChange_Connection.h.

Referenced by redo(), and undo().

◆ myOriginalHierarchicalContainer

const GNEHierarchicalContainer GNEChange::myOriginalHierarchicalContainer
protectedinherited

◆ mySelectedElement


The documentation for this class was generated from the following files: