![]() |
SUMO - Simulation of Urban MObility
|
#include <GNEChange_Lane.h>
Public Member Functions | |
GNEChange_Lane (GNEEdge *edge, GNELane *lane, const NBEdge::Lane &laneAttrs, bool forward, bool recomputeConnections=true) | |
Constructor for creating/deleting an edge. More... | |
virtual FXuint | size () const |
return actual size More... | |
~GNEChange_Lane () | |
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 Attributes | |
bool | myForward |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag More... | |
GNENet * | myNet |
the net to which operations shall be applied or which shall be informed about gui updates (we are not responsible for the pointer) More... | |
Private Attributes | |
std::vector< GNEAdditional * > | myAdditionalChilds |
we need to preserve the list of additionals vinculated with this lane More... | |
GNEEdge * | myEdge |
we need the edge because it is the target of our change commands More... | |
std::vector< GNEAdditional * > | myFirstAdditionalParents |
we need to preserve the list of additional sets in which this lane is a child More... | |
GNELane * | myLane |
we need to preserve the lane because it maybe the target of GNEChange_Attribute commands More... | |
const NBEdge::Lane | myLaneAttrs |
we need to preserve the attributes explicitly because they are not contained withing GNELane itself More... | |
bool | myRecomputeConnections |
whether to recompute connection when adding a new lane More... | |
std::vector< GNEShape * > | myShapeChilds |
we need to preserve the list of shapes vinculated with this lane More... | |
A network change in which a single lane is created or deleted
Definition at line 47 of file GNEChange_Lane.h.
GNEChange_Lane::GNEChange_Lane | ( | GNEEdge * | edge, |
GNELane * | lane, | ||
const NBEdge::Lane & | laneAttrs, | ||
bool | forward, | ||
bool | recomputeConnections = true |
||
) |
Constructor for creating/deleting an edge.
constructor for creating an edge
[in] | edge | The edge on which to apply changes |
[in] | lane | The lane to be deleted or 0 if a lane should be created |
[in] | laneAttrs | The attributes of the lane to be created/deleted |
[in] | forward | Whether to create/delete (true/false) |
[in] | recomputeConnections | Whether to recompute all connections for the affected edge |
Definition at line 43 of file GNEChange_Lane.cpp.
GNEChange_Lane::~GNEChange_Lane | ( | ) |
Destructor.
Definition at line 64 of file GNEChange_Lane.cpp.
References GNEReferenceCounter::decRef(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myEdge, myLane, GNEReferenceCounter::unreferenced(), and WRITE_DEBUG.
|
virtual |
redo action
Reimplemented from GNEChange.
Definition at line 131 of file GNEChange_Lane.cpp.
References GNEEdge::addLane(), GNENet::deleteAdditional(), GNEInspectorFrame::getACHierarchy(), GNEAttributeCarrier::getID(), GNEViewParent::getInspectorFrame(), GNEAttributeCarrier::getTagStr(), GNENet::getViewNet(), GNEViewNet::getViewParent(), GNENet::insertAdditional(), myAdditionalChilds, myEdge, GNEChange::myForward, myLane, myLaneAttrs, GNEChange::myNet, myRecomputeConnections, myShapeChilds, GNEFrame::ACHierarchy::refreshACHierarchy(), GNEEdge::removeLane(), GNENet::removeShape(), GNENet::requiereSaveNet(), SUMO_TAG_EDGE, SUMO_TAG_LANE, toString(), and WRITE_DEBUG.
|
virtual |
get Redo name
Reimplemented from GNEChange.
Definition at line 187 of file GNEChange_Lane.cpp.
References GNEChange::myForward, SUMO_TAG_LANE, and toString().
|
virtualinherited |
|
virtual |
undo action
Reimplemented from GNEChange.
Definition at line 84 of file GNEChange_Lane.cpp.
References GNEEdge::addLane(), GNENet::deleteAdditional(), GNEInspectorFrame::getACHierarchy(), GNEAttributeCarrier::getID(), GNEViewParent::getInspectorFrame(), GNEAttributeCarrier::getTagStr(), GNENet::getViewNet(), GNEViewNet::getViewParent(), GNENet::insertAdditional(), myAdditionalChilds, myEdge, GNEChange::myForward, myLane, myLaneAttrs, GNEChange::myNet, myShapeChilds, GNEFrame::ACHierarchy::refreshACHierarchy(), GNEEdge::removeLane(), GNENet::removeShape(), GNENet::requiereSaveNet(), SUMO_TAG_EDGE, SUMO_TAG_LANE, toString(), and WRITE_DEBUG.
|
virtual |
return undoName
Reimplemented from GNEChange.
Definition at line 177 of file GNEChange_Lane.cpp.
References GNEChange::myForward, SUMO_TAG_LANE, and toString().
|
private |
we need to preserve the list of additionals vinculated with this lane
Definition at line 90 of file GNEChange_Lane.h.
|
private |
we need the edge because it is the target of our change commands
Definition at line 81 of file GNEChange_Lane.h.
Referenced by redo(), undo(), and ~GNEChange_Lane().
|
private |
we need to preserve the list of additional sets in which this lane is a child
Definition at line 96 of file GNEChange_Lane.h.
|
protectedinherited |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag
Definition at line 81 of file GNEChange.h.
Referenced by GNEChange_Junction::redo(), GNEChange_Shape::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redo(), GNEChange_Connection::redo(), GNEChange_Edge::redo(), redo(), GNEChange_Crossing::redo(), GNEChange_Junction::redoName(), GNEChange_Shape::redoName(), GNEChange_TLS::redoName(), GNEChange_Additional::redoName(), GNEChange_Connection::redoName(), GNEChange_Edge::redoName(), redoName(), GNEChange_Crossing::redoName(), GNEChange_Junction::undo(), GNEChange_Shape::undo(), GNEChange_Additional::undo(), GNEChange_TLS::undo(), GNEChange_Connection::undo(), GNEChange_Edge::undo(), undo(), GNEChange_Crossing::undo(), GNEChange_Junction::undoName(), GNEChange_Shape::undoName(), GNEChange_TLS::undoName(), GNEChange_Additional::undoName(), GNEChange_Connection::undoName(), GNEChange_Edge::undoName(), undoName(), and GNEChange_Crossing::undoName().
|
private |
we need to preserve the lane because it maybe the target of GNEChange_Attribute commands
Definition at line 84 of file GNEChange_Lane.h.
Referenced by redo(), undo(), and ~GNEChange_Lane().
|
private |
we need to preserve the attributes explicitly because they are not contained withing GNELane itself
Definition at line 87 of file GNEChange_Lane.h.
|
protectedinherited |
the net to which operations shall be applied or which shall be informed about gui updates (we are not responsible for the pointer)
Definition at line 76 of file GNEChange.h.
Referenced by GNEChange_Crossing::GNEChange_Crossing(), GNEChange_Shape::redo(), GNEChange_Junction::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redo(), GNEChange_Connection::redo(), GNEChange_Edge::redo(), redo(), GNEChange_Crossing::redo(), GNEChange_Shape::undo(), GNEChange_Junction::undo(), GNEChange_TLS::undo(), GNEChange_Additional::undo(), GNEChange_Connection::undo(), GNEChange_Edge::undo(), undo(), GNEChange_Crossing::undo(), GNEChange_Additional::~GNEChange_Additional(), GNEChange_Crossing::~GNEChange_Crossing(), and GNEChange_Shape::~GNEChange_Shape().
|
private |
whether to recompute connection when adding a new lane
Definition at line 99 of file GNEChange_Lane.h.
Referenced by redo().
|
private |
we need to preserve the list of shapes vinculated with this lane
Definition at line 93 of file GNEChange_Lane.h.