![]() |
Eclipse SUMO - Simulation of Urban MObility
|
An special type of Attribute carrier that owns hierarchical elements. More...
#include <GNEHierarchicalChildElements.h>
Data Structures | |
struct | ChildConnections |
struct for pack all variables and functions relative to connections between hierarchical element and their children More... | |
Public Member Functions | |
void | drawChildConnections (const GUIVisualizationSettings &s, const GUIGlObjectType GLTypeParent) const |
virtual std::string | generateChildID (SumoXMLTag childTag)=0 |
gererate a new ID for an element child More... | |
const Position & | getChildPosition (const GNELane *lane) |
get child position calculated in ChildConnections More... | |
double | getChildRotation (const GNELane *lane) |
get child rotation calculated in ChildConnections More... | |
GNEHierarchicalChildElements (GNEAttributeCarrier *AC, const std::vector< GNEEdge * > &childEdges, const std::vector< GNELane * > &childLanes, const std::vector< GNEShape * > &childShapes, const std::vector< GNEAdditional * > &childAdditionals, const std::vector< GNEDemandElement * > &childDemandElements) | |
Parameter Constructor. More... | |
void | updateChildConnections () |
update child connections More... | |
virtual void | updateParentAdditional () |
update parent after add or remove a child (can be reimplemented, for example used for statistics) More... | |
virtual void | updateParentDemandElement () |
update parent after add or remove a child (can be reimplemented, for example used for statistics) More... | |
~GNEHierarchicalChildElements () | |
Destructor. More... | |
Functions related with geometry of element | |
update pre-computed geometry information | |
virtual void | updateGeometry ()=0 |
virtual Position | getPositionInView () const =0 |
Returns position of hierarchical element in view. More... | |
members and functions related to child edges | |
add child edge | |
void | addChildEdge (GNEEdge *edge) |
void | removeChildEdge (GNEEdge *edge) |
remove child edge More... | |
const std::vector< GNEEdge * > & | getChildEdges () const |
get child edges More... | |
members and functions related to child lanes | |
add child lane | |
void | addChildLane (GNELane *lane) |
void | removeChildLane (GNELane *lane) |
remove child lane More... | |
const std::vector< GNELane * > & | getChildLanes () const |
get child lanes More... | |
members and functions related to child shapes | |
add child shape | |
void | addChildShape (GNEShape *shape) |
void | removeChildShape (GNEShape *shape) |
remove child shape More... | |
const std::vector< GNEShape * > & | getChildShapes () const |
get child shapes More... | |
members and functions related to child additionals | |
add child additional | |
void | addChildAdditional (GNEAdditional *additional) |
void | removeChildAdditional (GNEAdditional *additional) |
remove child additional More... | |
const std::vector< GNEAdditional * > & | getChildAdditionals () const |
return child additionals More... | |
void | sortChildAdditionals () |
sort child additionals (used by Rerouters, VSS, TAZs...) More... | |
bool | checkChildAdditionalsOverlapping () const |
check if children are overlapped (Used by Rerouters) More... | |
members and functions related to child demand elements | |
add child demand element | |
void | addChildDemandElement (GNEDemandElement *demandElement) |
void | removeChildDemandElement (GNEDemandElement *demandElement) |
remove child demand element More... | |
const std::vector< GNEDemandElement * > & | getChildDemandElements () const |
return child demand elements More... | |
const std::set< GNEDemandElement * > & | getChildDemandElementsSortedByType (SumoXMLTag tag) const |
return child demand elements sorted by type More... | |
void | sortChildDemandElements () |
sort child demand elements More... | |
bool | checkChildDemandElementsOverlapping () const |
check if childs demand elements are overlapped More... | |
GNEDemandElement * | getPreviousChildDemandElement (const GNEDemandElement *demandElement) const |
get previous child demand element to the given demand element More... | |
GNEDemandElement * | getNextChildDemandElement (const GNEDemandElement *demandElement) const |
get next child demand element to the given demand element More... | |
Protected Member Functions | |
void | changeChildEdges (GNEAdditional *elementChild, const std::string &newEdgeIDs) |
change child edges of an additional More... | |
void | changeChildLanes (GNEAdditional *elementChild, const std::string &newEdgeIDs) |
change child edges of an additional More... | |
Protected Attributes | |
ChildConnections | myChildConnections |
variable ChildConnections More... | |
Private Member Functions | |
GNEHierarchicalChildElements (const GNEHierarchicalChildElements &)=delete | |
Invalidated copy constructor. More... | |
GNEHierarchicalChildElements & | operator= (const GNEHierarchicalChildElements &)=delete |
Invalidated assignment operator. More... | |
Private Attributes | |
GNEAttributeCarrier * | myAC |
pointer to AC (needed to avoid diamond problem) More... | |
std::vector< GNEAdditional * > | myChildAdditionals |
vector with the child additional More... | |
std::vector< GNEDemandElement * > | myChildDemandElements |
vector with the demand elements children More... | |
std::vector< GNEEdge * > | myChildEdges |
vector with the child edges of this element More... | |
std::vector< GNELane * > | myChildLanes |
vector with the child lanes of this element More... | |
std::vector< GNEShape * > | myChildShapes |
vector with the child lanes of this element More... | |
std::map< SumoXMLTag, std::set< GNEDemandElement * > > | mySortedChildDemandElementsByType |
vector with the demand elements children sorted by type and filtered (to avoid duplicated More... | |
Friends | |
class | GNEChange_Children |
declare GNEChange_Children as friend class More... | |
An special type of Attribute carrier that owns hierarchical elements.
Definition at line 45 of file GNEHierarchicalChildElements.h.
GNEHierarchicalChildElements::GNEHierarchicalChildElements | ( | GNEAttributeCarrier * | AC, |
const std::vector< GNEEdge * > & | childEdges, | ||
const std::vector< GNELane * > & | childLanes, | ||
const std::vector< GNEShape * > & | childShapes, | ||
const std::vector< GNEAdditional * > & | childAdditionals, | ||
const std::vector< GNEDemandElement * > & | childDemandElements | ||
) |
Parameter Constructor.
[in] | childEdges | vector of child edges |
[in] | childLanes | vector of child lanes |
[in] | childShapes | vector of child shapes |
[in] | childAdditionals | vector of child additional |
[in] | childDemandElements | vector of child demand elements |
Definition at line 36 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::allowedTagsByCategory(), and mySortedChildDemandElementsByType.
GNEHierarchicalChildElements::~GNEHierarchicalChildElements | ( | ) |
Destructor.
Definition at line 57 of file GNEHierarchicalChildElements.cpp.
|
privatedelete |
Invalidated copy constructor.
void GNEHierarchicalChildElements::addChildAdditional | ( | GNEAdditional * | additional | ) |
Definition at line 95 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myChildAdditionals, sortChildAdditionals(), and updateParentAdditional().
Referenced by GNEAdditionalHandler::buildAccess(), GNEAdditionalHandler::buildBusStop(), GNEAdditionalHandler::buildCalibrator(), GNEAdditionalHandler::buildCalibratorFlow(), GNEAdditionalHandler::buildChargingStation(), GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNEAdditionalHandler::buildContainerStop(), GNEAdditionalHandler::buildDetectorE1(), GNEAdditionalHandler::buildDetectorE1Instant(), GNEAdditionalHandler::buildDetectorEntry(), GNEAdditionalHandler::buildDetectorExit(), GNEAdditionalHandler::builDestProbReroute(), GNEAdditionalHandler::buildParkingArea(), GNEAdditionalHandler::buildParkingSpace(), GNEAdditionalHandler::buildRerouterInterval(), GNEAdditionalHandler::buildRouteProbe(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditionalHandler::buildSingleLaneDetectorE2(), GNEAdditionalHandler::buildTAZ(), GNEAdditionalHandler::buildVaporizer(), GNEAdditionalHandler::buildVariableSpeedSignStep(), and GNEAdditionalHandler::builParkingAreaReroute().
void GNEHierarchicalChildElements::addChildDemandElement | ( | GNEDemandElement * | demandElement | ) |
Definition at line 256 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myChildDemandElements, mySortedChildDemandElementsByType, and sortChildDemandElements().
Referenced by GNERouteHandler::buildFlow(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowWithEmbeddedRoute(), GNERouteHandler::buildPerson(), GNERouteHandler::buildPersonFlow(), GNERouteHandler::buildPersonTripBusStop(), GNERouteHandler::buildPersonTripFromTo(), GNERouteHandler::buildRideBusStop(), GNERouteHandler::buildRideFromTo(), GNERouteHandler::buildStop(), GNERouteHandler::buildTrip(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVehicleWithEmbeddedRoute(), GNERouteHandler::buildWalkBusStop(), GNERouteHandler::buildWalkEdges(), GNERouteHandler::buildWalkFromTo(), GNERouteHandler::buildWalkRoute(), and GNERouteHandler::closeRoute().
void GNEHierarchicalChildElements::addChildEdge | ( | GNEEdge * | edge | ) |
Definition at line 350 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myChildEdges.
void GNEHierarchicalChildElements::addChildLane | ( | GNELane * | lane | ) |
Definition at line 382 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myChildLanes, and GNEHierarchicalChildElements::ChildConnections::update().
void GNEHierarchicalChildElements::addChildShape | ( | GNEShape * | shape | ) |
Definition at line 414 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myChildShapes, and GNEHierarchicalChildElements::ChildConnections::update().
|
protected |
change child edges of an additional
Definition at line 462 of file GNEHierarchicalChildElements.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), myChildConnections, myChildEdges, and GNEHierarchicalChildElements::ChildConnections::update().
Referenced by GNERerouter::setAttribute().
|
protected |
change child edges of an additional
Definition at line 479 of file GNEHierarchicalChildElements.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), myChildConnections, myChildLanes, and GNEHierarchicalChildElements::ChildConnections::update().
Referenced by GNEVariableSpeedSign::setAttribute().
bool GNEHierarchicalChildElements::checkChildAdditionalsOverlapping | ( | ) | const |
check if children are overlapped (Used by Rerouters)
Definition at line 215 of file GNEHierarchicalChildElements.cpp.
References GNEAdditional::getAttributeDouble(), myChildAdditionals, SUMO_ATTR_BEGIN, SUMO_ATTR_END, and SUMO_ATTR_TIME.
Referenced by GNERerouterDialog::onCmdAccept().
bool GNEHierarchicalChildElements::checkChildDemandElementsOverlapping | ( | ) | const |
check if childs demand elements are overlapped
Definition at line 314 of file GNEHierarchicalChildElements.cpp.
void GNEHierarchicalChildElements::drawChildConnections | ( | const GUIVisualizationSettings & | s, |
const GUIGlObjectType | GLTypeParent | ||
) | const |
Definition at line 89 of file GNEHierarchicalChildElements.cpp.
References GNEHierarchicalChildElements::ChildConnections::draw(), and myChildConnections.
Referenced by GNEDetectorE3::drawGL(), GNEVariableSpeedSign::drawGL(), GNERerouter::drawGL(), GNEEdge::drawRerouterSymbol(), and GNELane::drawVSSSymbol().
|
pure virtual |
gererate a new ID for an element child
Implemented in GNEShape, GNENetElement, GNEDemandElement, GNEAdditional, GNEPOI, GNEEdge, GNEPoly, GNEJunction, GNELane, GNECrossing, and GNEConnection.
const std::vector< GNEAdditional * > & GNEHierarchicalChildElements::getChildAdditionals | ( | ) | const |
return child additionals
Definition at line 131 of file GNEHierarchicalChildElements.cpp.
References myChildAdditionals.
Referenced by GNEAdditionalHandler::accessCanBeCreated(), GNEEdge::addConnection(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEDetectorE3::checkChildAdditionalRestriction(), GNEAdditionalHandler::checkOverlappingRerouterIntervals(), GNENet::deleteAdditional(), GNENet::deleteEdge(), GNENet::deleteLane(), GNEBusStop::drawGL(), GNELane::drawGL(), GNEEdge::drawGL(), GNELane::endGeometryMoving(), GNEEdge::endGeometryMoving(), GNEAdditional::generateChildID(), GNETAZ::getAttribute(), GNEEdge::getRouteProbeRelativePosition(), GNEVariableSpeedSignStep::isValid(), GNEAdditionalHandler::myEndElement(), GNECalibratorDialog::onCmdClickedFlow(), GNERerouterDialog::onCmdClickedInterval(), GNECalibratorDialog::onCmdClickedRoute(), GNEVariableSpeedSignDialog::onCmdClickedStep(), GNECalibratorDialog::onCmdClickedVehicleType(), GNEVariableSpeedSignDialog::onCmdEditStep(), GNEEdge::removeConnection(), GNENet::replaceIncomingEdge(), GNEEdge::retrieveGNEConnection(), GNEBusStop::setAttribute(), GNEParkingArea::setAttribute(), GNEDetectorE3::setAttribute(), GNERerouterInterval::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNERerouter::setAttribute(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren(), GNENet::splitEdge(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNECalibratorDialog::updateFlowTable(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNERerouterDialog::updateIntervalTable(), GNETAZ::updateParentAdditional(), GNEVariableSpeedSignDialog::updateTableSteps(), and GNEAdditional::writeAdditional().
const std::vector< GNEDemandElement * > & GNEHierarchicalChildElements::getChildDemandElements | ( | ) | const |
return child demand elements
Definition at line 296 of file GNEHierarchicalChildElements.cpp.
References myChildDemandElements.
Referenced by GNENet::deleteAdditional(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteLane(), GNEBusStop::drawGL(), GNEContainerStop::drawGL(), GNEChargingStation::drawGL(), GNEParkingArea::drawGL(), GNELane::drawGL(), GNEStop::drawGL(), GNEPerson::drawGL(), GNEVehicle::drawGL(), GNEEdge::drawPartialPersonPlan(), GNEEdge::drawPartialRoute(), GNELane::endGeometryMoving(), GNEEdge::endGeometryMoving(), GNEAdditional::endGeometryMoving(), GNEDemandElement::generateChildID(), GNEPerson::getCenteringBoundary(), GNEPerson::getFromEdge(), GNEVehicle::getFromEdge(), GNEPerson::getPositionInView(), GNEPerson::getToEdge(), GNEVehicle::getToEdge(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNENet::replaceIncomingEdge(), GNERouteHandler::separateEmbeddedRoute(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren(), GNEViewNetHelper::DemandViewOptions::showNonInspectedDemandElements(), GNENet::splitEdge(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEAdditional::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNEBusStop::updateGeometry(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNEVehicleType::updateGeometry(), GNERide::updateGeometry(), GNEPersonTrip::updateGeometry(), GNEWalk::updateGeometry(), GNERoute::updateGeometry(), GNEPerson::updateGeometry(), GNEVehicle::updateGeometry(), GNEVehicleType::updatePartialGeometry(), GNERide::updatePartialGeometry(), GNEPersonTrip::updatePartialGeometry(), GNEWalk::updatePartialGeometry(), GNERoute::updatePartialGeometry(), GNEPerson::updatePartialGeometry(), GNEVehicle::updatePartialGeometry(), GNERide::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNEWalk::writeDemandElement(), GNERoute::writeDemandElement(), GNEPerson::writeDemandElement(), and GNEVehicle::writeDemandElement().
const std::set< GNEDemandElement * > & GNEHierarchicalChildElements::getChildDemandElementsSortedByType | ( | SumoXMLTag | tag | ) | const |
return child demand elements sorted by type
Definition at line 302 of file GNEHierarchicalChildElements.cpp.
References mySortedChildDemandElementsByType.
Referenced by GNEEdge::drawGL(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
const std::vector< GNEEdge * > & GNEHierarchicalChildElements::getChildEdges | ( | ) | const |
get child edges
Definition at line 376 of file GNEHierarchicalChildElements.cpp.
References myChildEdges.
Referenced by GNERerouter::getAttribute(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
const std::vector< GNELane * > & GNEHierarchicalChildElements::getChildLanes | ( | ) | const |
get child lanes
Definition at line 408 of file GNEHierarchicalChildElements.cpp.
References myChildLanes.
Referenced by GNEVariableSpeedSign::getAttribute(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
get child position calculated in ChildConnections
Definition at line 61 of file GNEHierarchicalChildElements.cpp.
References myChildConnections, and GNEHierarchicalChildElements::ChildConnections::symbolsPositionAndRotation.
Referenced by GNEEdge::drawRerouterSymbol(), and GNELane::drawVSSSymbol().
double GNEHierarchicalChildElements::getChildRotation | ( | const GNELane * | lane | ) |
get child rotation calculated in ChildConnections
Definition at line 72 of file GNEHierarchicalChildElements.cpp.
References myChildConnections, and GNEHierarchicalChildElements::ChildConnections::symbolsPositionAndRotation.
Referenced by GNEEdge::drawRerouterSymbol(), and GNELane::drawVSSSymbol().
const std::vector< GNEShape * > & GNEHierarchicalChildElements::getChildShapes | ( | ) | const |
get child shapes
Definition at line 444 of file GNEHierarchicalChildElements.cpp.
References myChildShapes.
Referenced by GNENet::deleteEdge(), GNENet::deleteLane(), GNELane::drawGL(), GNELane::endGeometryMoving(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren(), GNELane::startGeometryMoving(), and GNELane::updateGeometry().
GNEDemandElement * GNEHierarchicalChildElements::getNextChildDemandElement | ( | const GNEDemandElement * | demandElement | ) | const |
get next child demand element to the given demand element
Definition at line 335 of file GNEHierarchicalChildElements.cpp.
References myChildDemandElements.
|
pure virtual |
Returns position of hierarchical element in view.
Implemented in GNEDemandElement, GNEAdditional, GNEShape, GNENetElement, GNEVehicle, GNEPerson, GNERoute, GNEWalk, GNEPOI, GNEPersonTrip, GNERide, GNEPoly, GNEStop, GNEDetector, GNEVehicleType, GNECalibrator, GNEStoppingPlace, GNEEdge, GNEJunction, GNEAccess, GNERerouter, GNELane, GNEVariableSpeedSign, GNERerouterInterval, GNETAZSourceSink, GNECalibratorFlow, GNEParkingSpace, GNEVariableSpeedSignStep, GNEDetectorE3, GNEParkingAreaReroute, GNEClosingLaneReroute, GNEDestProbReroute, GNERouteProbReroute, GNEClosingReroute, GNECrossing, GNERouteProbe, GNETAZ, GNEVaporizer, and GNEConnection.
GNEDemandElement * GNEHierarchicalChildElements::getPreviousChildDemandElement | ( | const GNEDemandElement * | demandElement | ) | const |
get previous child demand element to the given demand element
Definition at line 320 of file GNEHierarchicalChildElements.cpp.
References myChildDemandElements.
|
privatedelete |
Invalidated assignment operator.
void GNEHierarchicalChildElements::removeChildAdditional | ( | GNEAdditional * | additional | ) |
remove child additional
Definition at line 113 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myChildAdditionals, sortChildAdditionals(), and updateParentAdditional().
void GNEHierarchicalChildElements::removeChildDemandElement | ( | GNEDemandElement * | demandElement | ) |
remove child demand element
Definition at line 274 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myChildDemandElements, mySortedChildDemandElementsByType, and sortChildDemandElements().
void GNEHierarchicalChildElements::removeChildEdge | ( | GNEEdge * | edge | ) |
remove child edge
Definition at line 361 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myChildEdges, and GNEHierarchicalChildElements::ChildConnections::update().
void GNEHierarchicalChildElements::removeChildLane | ( | GNELane * | lane | ) |
remove child lane
Definition at line 395 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myChildLanes, and GNEHierarchicalChildElements::ChildConnections::update().
void GNEHierarchicalChildElements::removeChildShape | ( | GNEShape * | shape | ) |
remove child shape
Definition at line 429 of file GNEHierarchicalChildElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myChildShapes, and GNEHierarchicalChildElements::ChildConnections::update().
void GNEHierarchicalChildElements::sortChildAdditionals | ( | ) |
sort child additionals (used by Rerouters, VSS, TAZs...)
Definition at line 137 of file GNEHierarchicalChildElements.cpp.
References GNEAdditional::getAttributeDouble(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), myAC, myChildAdditionals, SUMO_ATTR_BEGIN, SUMO_ATTR_END, SUMO_ATTR_TIME, SUMO_TAG_DET_ENTRY, SUMO_TAG_DET_EXIT, SUMO_TAG_E3DETECTOR, SUMO_TAG_TAZ, SUMO_TAG_TAZSINK, and SUMO_TAG_TAZSOURCE.
Referenced by addChildAdditional(), GNEVariableSpeedSignDialog::onCmdAccept(), GNERerouterIntervalDialog::onCmdChangeBeginEnd(), GNERerouterDialog::onCmdSortIntervals(), GNEVariableSpeedSignDialog::onCmdSortSteps(), and removeChildAdditional().
void GNEHierarchicalChildElements::sortChildDemandElements | ( | ) |
sort child demand elements
Definition at line 308 of file GNEHierarchicalChildElements.cpp.
Referenced by addChildDemandElement(), and removeChildDemandElement().
void GNEHierarchicalChildElements::updateChildConnections | ( | ) |
update child connections
Definition at line 83 of file GNEHierarchicalChildElements.cpp.
References myChildConnections, and GNEHierarchicalChildElements::ChildConnections::update().
|
pure virtual |
Implemented in GNEDemandElement, GNEAdditional, GNEDetector, GNEShape, GNEStoppingPlace, GNENetElement, GNEVehicle, GNEPerson, GNERoute, GNEWalk, GNEPOI, GNEPersonTrip, GNERide, GNEDetectorE2, GNEPoly, GNEStop, GNECalibrator, GNEVehicleType, GNEDetectorE1Instant, GNEDetectorEntryExit, GNEEdge, GNEDetectorE1, GNEJunction, GNEAccess, GNERerouter, GNELane, GNEVariableSpeedSign, GNERerouterInterval, GNETAZSourceSink, GNECalibratorFlow, GNEParkingSpace, GNEVariableSpeedSignStep, GNEDetectorE3, GNEParkingAreaReroute, GNEClosingLaneReroute, GNEDestProbReroute, GNERouteProbReroute, GNEClosingReroute, GNECrossing, GNERouteProbe, GNETAZ, GNEVaporizer, GNEParkingArea, GNEConnection, GNEChargingStation, GNEBusStop, and GNEContainerStop.
|
virtual |
update parent after add or remove a child (can be reimplemented, for example used for statistics)
Reimplemented in GNETAZ, and GNEDetectorE3.
Definition at line 450 of file GNEHierarchicalChildElements.cpp.
Referenced by addChildAdditional(), and removeChildAdditional().
|
virtual |
update parent after add or remove a child (can be reimplemented, for example used for statistics)
Definition at line 456 of file GNEHierarchicalChildElements.cpp.
|
friend |
declare GNEChange_Children as friend class
Definition at line 50 of file GNEHierarchicalChildElements.h.
|
private |
pointer to AC (needed to avoid diamond problem)
Definition at line 259 of file GNEHierarchicalChildElements.h.
Referenced by addChildAdditional(), addChildDemandElement(), addChildEdge(), addChildLane(), addChildShape(), removeChildAdditional(), removeChildDemandElement(), removeChildEdge(), removeChildLane(), removeChildShape(), and sortChildAdditionals().
|
private |
vector with the child additional
Definition at line 250 of file GNEHierarchicalChildElements.h.
Referenced by addChildAdditional(), checkChildAdditionalsOverlapping(), getChildAdditionals(), removeChildAdditional(), and sortChildAdditionals().
|
protected |
variable ChildConnections
Definition at line 237 of file GNEHierarchicalChildElements.h.
Referenced by addChildLane(), addChildShape(), changeChildEdges(), changeChildLanes(), drawChildConnections(), GNEDetectorE3::drawGL(), GNEVariableSpeedSign::drawGL(), GNERerouter::drawGL(), getChildPosition(), getChildRotation(), removeChildEdge(), removeChildLane(), removeChildShape(), updateChildConnections(), GNEDetectorE3::updateGeometry(), GNEVariableSpeedSign::updateGeometry(), GNERerouter::updateGeometry(), and GNEDetectorE3::updateParentAdditional().
|
private |
vector with the demand elements children
Definition at line 253 of file GNEHierarchicalChildElements.h.
Referenced by addChildDemandElement(), getChildDemandElements(), getNextChildDemandElement(), getPreviousChildDemandElement(), GNEChange_Children::redo(), removeChildDemandElement(), and GNEChange_Children::undo().
|
private |
vector with the child edges of this element
Definition at line 241 of file GNEHierarchicalChildElements.h.
Referenced by addChildEdge(), changeChildEdges(), getChildEdges(), and removeChildEdge().
|
private |
vector with the child lanes of this element
Definition at line 244 of file GNEHierarchicalChildElements.h.
Referenced by addChildLane(), changeChildLanes(), getChildLanes(), and removeChildLane().
|
private |
vector with the child lanes of this element
Definition at line 247 of file GNEHierarchicalChildElements.h.
Referenced by addChildShape(), getChildShapes(), and removeChildShape().
|
private |
vector with the demand elements children sorted by type and filtered (to avoid duplicated
Definition at line 256 of file GNEHierarchicalChildElements.h.
Referenced by addChildDemandElement(), getChildDemandElementsSortedByType(), GNEHierarchicalChildElements(), and removeChildDemandElement().