Eclipse SUMO - Simulation of Urban MObility
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
GNEChange_GenericData Class Reference

#include <GNEChange_GenericData.h>

Inheritance diagram for GNEChange_GenericData:
[legend]
Collaboration diagram for GNEChange_GenericData:
[legend]

Public Member Functions

 GNEChange_GenericData (GNEGenericData *genericData, bool forward)
 Constructor for creating/deleting an generic data set.
 
 ~GNEChange_GenericData ()
 Destructor.
 
inherited from GNEChange

get undo Name

std::string undoName () const
 return undoName
 
std::string redoName () const
 get Redo name
 
void undo ()
 undo action
 
void redo ()
 redo action
 

Private Attributes

GNEDataIntervalmyDataIntervalParent
 data interval parent
 
GNEGenericDatamyGenericData
 full information regarding the generic data set that is to be created/deleted
 

friend class

GNEChangenext
 
virtual int size () const
 Return the size of the command group.
 
Supermode getSupermode () const
 get supermode
 
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.
 
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.
 
const Supermode mySupermode
 supermode related with this change
 
const GNEHierarchicalStructureParents myParents
 Hierarchical container with parents.
 
bool myForward
 we group antagonistic commands (create junction/delete junction) and keep them apart by this flag
 
const bool mySelectedElement
 flag for check if element is selected
 
template<typename T >
void addElementInParentsAndChildren (T *element)
 add given element in parents and children
 
template<typename T >
void removeElementFromParentsAndChildren (T *element)
 remove given element from parents and children
 

Detailed Description

A network change in which a generic data set is created or deleted

Definition at line 37 of file GNEChange_GenericData.h.

Constructor & Destructor Documentation

◆ GNEChange_GenericData()

GNEChange_GenericData::GNEChange_GenericData ( GNEGenericData genericData,
bool  forward 
)

Constructor for creating/deleting an generic data set.

Parameters
[in]genericdata The generic data set to be created/deleted
[in]forwardWhether to create/delete (true/false)

Definition at line 39 of file GNEChange_GenericData.cpp.

◆ ~GNEChange_GenericData()

Member Function Documentation

◆ addElementInParentsAndChildren()

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

add given element in parents and children

Definition at line 121 of file GNEChange.h.

References GNEHierarchicalStructureParents::get(), GNEHierarchicalElement::insertChild(), and GNEChange::myParents.

Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), redo(), GNEChange_Junction::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), undo(), GNEChange_Junction::undo(), and GNEChange_TAZSourceSink::undo().

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 72 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 66 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 78 of file GNEChange.cpp.

Referenced by GNEUndoList::add().

Here is the caller graph for this function:

◆ redo()

◆ redoName()

std::string GNEChange_GenericData::redoName ( ) const
virtual

get Redo name

Implements GNEChange.

Definition at line 126 of file GNEChange_GenericData.cpp.

References GNEAttributeCarrier::getTagStr(), GNEChange::myForward, myGenericData, and TL.

◆ removeElementFromParentsAndChildren()

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

remove given element from parents and children

Definition at line 148 of file GNEChange.h.

References GNEHierarchicalStructureParents::get(), GNEChange::myParents, and GNEHierarchicalElement::removeChild().

Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), redo(), GNEChange_Junction::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), undo(), GNEChange_Junction::undo(), and GNEChange_TAZSourceSink::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 59 of file GNEChange.cpp.

Referenced by GNEUndoList::currentCommandGroupSize(), and GNEChangeGroup::size().

Here is the caller graph for this function:

◆ undo()

◆ undoName()

std::string GNEChange_GenericData::undoName ( ) const
virtual

return undoName

Implements GNEChange.

Definition at line 116 of file GNEChange_GenericData.cpp.

References GNEAttributeCarrier::getTagStr(), GNEChange::myForward, myGenericData, and TL.

Field Documentation

◆ myDataIntervalParent

GNEDataInterval* GNEChange_GenericData::myDataIntervalParent
private

data interval parent

Definition at line 72 of file GNEChange_GenericData.h.

Referenced by redo(), undo(), and ~GNEChange_GenericData().

◆ myForward

bool GNEChange::myForward
protectedinherited

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

Definition at line 180 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(), redo(), GNEChange_Junction::redo(), GNEChange_Lane::redo(), GNEChange_MeanData::redo(), GNEChange_TAZSourceSink::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(), redoName(), GNEChange_Junction::redoName(), GNEChange_Lane::redoName(), GNEChange_MeanData::redoName(), GNEChange_TAZSourceSink::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(), undo(), GNEChange_Junction::undo(), GNEChange_Lane::undo(), GNEChange_MeanData::undo(), GNEChange_TAZSourceSink::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(), undoName(), GNEChange_Junction::undoName(), GNEChange_Lane::undoName(), GNEChange_MeanData::undoName(), GNEChange_TAZSourceSink::undoName(), and GNEChange_TLS::undoName().

◆ myGenericData

GNEGenericData* GNEChange_GenericData::myGenericData
private

full information regarding the generic data set that is to be created/deleted

Note
we assume shared responsibility for the pointer (via reference counting)

Definition at line 69 of file GNEChange_GenericData.h.

Referenced by redo(), redoName(), undo(), undoName(), and ~GNEChange_GenericData().

◆ myParents

const GNEHierarchicalStructureParents GNEChange::myParents
protectedinherited

◆ mySelectedElement

◆ mySupermode

const Supermode GNEChange::mySupermode
protectedinherited

supermode related with this change

Definition at line 174 of file GNEChange.h.

Referenced by GNEChange::getSupermode().

◆ next


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