Eclipse SUMO - Simulation of Urban MObility
GNENetHelper::GNEChange_ReplaceEdgeInTLS Class Reference

class for GNEChange_ReplaceEdgeInTLS More...

#include <GNENetHelper.h>

Inheritance diagram for GNENetHelper::GNEChange_ReplaceEdgeInTLS:
[legend]
Collaboration diagram for GNENetHelper::GNEChange_ReplaceEdgeInTLS:
[legend]

Public Member Functions

 GNEChange_ReplaceEdgeInTLS (NBTrafficLightLogicCont &tllcont, NBEdge *replaced, NBEdge *by)
 constructor More...
 
void redo ()
 redo action More...
 
std::string redoName () const
 get Redo name More...
 
bool trueChange ()
 wether original and new value differ More...
 
void undo ()
 undo action More...
 
std::string undoName () const
 undo name More...
 
 ~GNEChange_ReplaceEdgeInTLS ()
 destructor More...
 

Private Attributes

NBEdgemyBy
 replaced by NBEdge More...
 
NBEdgemyReplaced
 replaced NBEdge More...
 
NBTrafficLightLogicContmyTllcont
 container for traffic light logic More...
 

friend class

GNEChangenext
 
virtual int size () const
 Return the size of the command group. More...
 
Supermode getSupermode () const
 get supermode More...
 
bool canMerge () const
 Return TRUE if this command can be merged with previous undo commands. This is useful to combine e.g. multiple consecutive single-character text changes into a single block change. The default implementation returns FALSE. More...
 
bool mergeWith (GNEChange *command)
 Called by the undo system to try and merge the new incoming command with this command; should return TRUE if merging was possible. The default implementation returns FALSE. More...
 
const Supermode mySupermode
 supermode related with this change More...
 
bool myForward
 we group antagonistic commands (create junction/delete junction) and keep them apart by this flag More...
 
const bool mySelectedElement
 flag for check if element is selected More...
 
const GNEHierarchicalContainer myOriginalHierarchicalContainer
 Hierarchical container with parent and children. More...
 
std::map< GNEHierarchicalElement *, GNEHierarchicalContainermyHierarchicalContainers
 map with hierarchical container of all parent and children elements More...
 
void restoreHierarchicalContainers ()
 restore container (only use in undo() function) More...
 
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...
 

Detailed Description

class for GNEChange_ReplaceEdgeInTLS

Definition at line 989 of file GNENetHelper.h.

Constructor & Destructor Documentation

◆ GNEChange_ReplaceEdgeInTLS()

GNENetHelper::GNEChange_ReplaceEdgeInTLS::GNEChange_ReplaceEdgeInTLS ( NBTrafficLightLogicCont tllcont,
NBEdge replaced,
NBEdge by 
)

constructor

Definition at line 2854 of file GNENetHelper.cpp.

◆ ~GNEChange_ReplaceEdgeInTLS()

GNENetHelper::GNEChange_ReplaceEdgeInTLS::~GNEChange_ReplaceEdgeInTLS ( )

destructor

Definition at line 2862 of file GNENetHelper.cpp.

Member Function Documentation

◆ addElementInParentsAndChildren()

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

add given element into parents and children (only use in redo() function)

Definition at line 124 of file GNEChange.h.

References GNEHierarchicalContainer::getChildren(), GNEHierarchicalContainer::getParents(), and GNEChange::myOriginalHierarchicalContainer.

Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), and GNEChange_Lane::redo().

Here is the caller graph for this function:

◆ canMerge()

bool GNEChange::canMerge ( ) const
inherited

Return TRUE if this command can be merged with previous undo commands. This is useful to combine e.g. multiple consecutive single-character text changes into a single block change. The default implementation returns FALSE.

Definition at line 74 of file GNEChange.cpp.

Referenced by GNEUndoList::add().

Here is the caller graph for this function:

◆ getSupermode()

Supermode GNEChange::getSupermode ( ) const
inherited

get supermode

Definition at line 68 of file GNEChange.cpp.

References GNEChange::mySupermode.

Referenced by GNEUndoList::getRedoSupermode(), and GNEUndoList::getUndoSupermode().

Here is the caller graph for this function:

◆ mergeWith()

bool GNEChange::mergeWith ( GNEChange command)
inherited

Called by the undo system to try and merge the new incoming command with this command; should return TRUE if merging was possible. The default implementation returns FALSE.

Definition at line 80 of file GNEChange.cpp.

Referenced by GNEUndoList::add().

Here is the caller graph for this function:

◆ redo()

void GNENetHelper::GNEChange_ReplaceEdgeInTLS::redo ( )
virtual

redo action

Implements GNEChange.

Definition at line 2873 of file GNENetHelper.cpp.

◆ redoName()

std::string GNENetHelper::GNEChange_ReplaceEdgeInTLS::redoName ( ) const
virtual

get Redo name

Implements GNEChange.

Definition at line 2886 of file GNENetHelper.cpp.

References TL.

◆ removeElementFromParentsAndChildren()

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

remove given element from parents and children (only use in redo() function)

Definition at line 167 of file GNEChange.h.

References GNEHierarchicalContainer::getChildren(), GNEHierarchicalContainer::getParents(), and GNEChange::myOriginalHierarchicalContainer.

Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), and GNEChange_Lane::redo().

Here is the caller graph for this function:

◆ restoreHierarchicalContainers()

void GNEChange::restoreHierarchicalContainers ( )
protectedinherited

restore container (only use in undo() function)

Definition at line 94 of file GNEChange.cpp.

References GNEChange::myHierarchicalContainers.

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

Here is the caller graph for this function:

◆ size()

int GNEChange::size ( ) const
virtualinherited

Return the size of the command group.

Reimplemented in GNEChangeGroup.

Definition at line 61 of file GNEChange.cpp.

Referenced by GNEChangeGroup::size().

Here is the caller graph for this function:

◆ trueChange()

bool GNENetHelper::GNEChange_ReplaceEdgeInTLS::trueChange ( )

wether original and new value differ

Definition at line 2892 of file GNENetHelper.cpp.

◆ undo()

void GNENetHelper::GNEChange_ReplaceEdgeInTLS::undo ( )
virtual

undo action

Implements GNEChange.

Definition at line 2866 of file GNENetHelper.cpp.

◆ undoName()

std::string GNENetHelper::GNEChange_ReplaceEdgeInTLS::undoName ( ) const
virtual

undo name

Implements GNEChange.

Definition at line 2880 of file GNENetHelper.cpp.

References TL.

Field Documentation

◆ myBy

NBEdge* GNENetHelper::GNEChange_ReplaceEdgeInTLS::myBy
private

replaced by NBEdge

Definition at line 1022 of file GNENetHelper.h.

◆ myForward

bool GNEChange::myForward
protectedinherited

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

Definition at line 212 of file GNEChange.h.

Referenced by GNEChange_Additional::redo(), GNEChange_Children::redo(), GNEChange_Connection::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_MeanData::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redoName(), GNEChange_Children::redoName(), GNEChange_Connection::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_MeanData::redoName(), GNEChange_TLS::redoName(), GNEChange_Additional::undo(), GNEChange_Children::undo(), GNEChange_Connection::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_MeanData::undo(), GNEChange_TLS::undo(), GNEChange_Additional::undoName(), GNEChange_Children::undoName(), GNEChange_Connection::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_MeanData::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 221 of file GNEChange.h.

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

◆ myOriginalHierarchicalContainer

const GNEHierarchicalContainer GNEChange::myOriginalHierarchicalContainer
protectedinherited

◆ myReplaced

NBEdge* GNENetHelper::GNEChange_ReplaceEdgeInTLS::myReplaced
private

replaced NBEdge

Definition at line 1019 of file GNENetHelper.h.

◆ mySelectedElement

◆ mySupermode

const Supermode GNEChange::mySupermode
protectedinherited

supermode related with this change

Definition at line 209 of file GNEChange.h.

Referenced by GNEChange::getSupermode().

◆ myTllcont

NBTrafficLightLogicCont& GNENetHelper::GNEChange_ReplaceEdgeInTLS::myTllcont
private

container for traffic light logic

Definition at line 1016 of file GNENetHelper.h.

◆ next


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