![]() |
Eclipse SUMO - Simulation of Urban MObility
|
An special type of Attribute carrier that owns hierarchical elements. More...
#include <GNEHierarchicalElementChildren.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... | |
GNEHierarchicalElementChildren (GNEAttributeCarrier *AC, const std::vector< GNEEdge * > &edgeChildren, const std::vector< GNELane * > &laneChildren, const std::vector< GNEShape * > &shapeChildren, const std::vector< GNEAdditional * > &additionalChildren, const std::vector< GNEDemandElement * > &demandElementChildren) | |
Parameter Constructor. More... | |
virtual void | updateAdditionalParent () |
update parent after add or remove a child (can be reimplemented, for example used for statistics) More... | |
void | updateChildConnections () |
update child connections More... | |
virtual void | updateDemandElementParent () |
update parent after add or remove a child (can be reimplemented, for example used for statistics) More... | |
~GNEHierarchicalElementChildren () | |
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 edge children | |
add edge child | |
void | addEdgeChild (GNEEdge *edge) |
void | removeEdgeChild (GNEEdge *edge) |
remove edge child More... | |
const std::vector< GNEEdge * > & | getEdgeChildren () const |
get edge chidls More... | |
members and functions related to lane children | |
add lane child | |
void | addLaneChild (GNELane *lane) |
void | removeLaneChild (GNELane *lane) |
remove lane child More... | |
const std::vector< GNELane * > & | getLaneChildren () const |
get lanes of VSS More... | |
members and functions related to shape children | |
add shape child | |
void | addShapeChild (GNEShape *shape) |
void | removeShapeChild (GNEShape *shape) |
remove shape child More... | |
const std::vector< GNEShape * > & | getShapeChildren () const |
get shapes of VSS More... | |
members and functions related to additional children | |
add additional child to this additional | |
void | addAdditionalChild (GNEAdditional *additional) |
void | removeAdditionalChild (GNEAdditional *additional) |
remove additional child from this additional More... | |
const std::vector< GNEAdditional * > & | getAdditionalChildren () const |
return vector of additionals that have as Parent this edge (For example, Calibrators) More... | |
void | sortAdditionalChildren () |
sort children (used by Rerouters, VSS, TAZs...) More... | |
bool | checkAdditionalChildrenOverlapping () const |
check if children are overlapped (Used by Rerouters) More... | |
members and functions related to demand element children | |
add demand element child to this demand element | |
void | addDemandElementChild (GNEDemandElement *demandElement) |
void | removeDemandElementChild (GNEDemandElement *demandElement) |
remove demand element child from this demand element More... | |
const std::vector< GNEDemandElement * > & | getDemandElementChildren () const |
return vector of demand elements that have as Parent this edge (For example, Calibrators) More... | |
const std::set< GNEDemandElement * > & | getSortedDemandElementChildrenByType (SumoXMLTag tag) const |
return vector of demand elements that have as Parent this edge (For example, Calibrators) More... | |
void | sortDemandElementChildren () |
sort children (used by Rerouters, VSS, TAZs...) More... | |
bool | checkDemandElementChildrenOverlapping () const |
check if children are overlapped (Used by Rerouters) More... | |
GNEDemandElement * | getPreviousemandElement (const GNEDemandElement *demandElement) const |
get previous demand element to the given demand element More... | |
GNEDemandElement * | getNextDemandElement (const GNEDemandElement *demandElement) const |
get next demand element to the given demand element More... | |
Protected Member Functions | |
void | changeEdgeChildren (GNEAdditional *elementChild, const std::string &newEdgeIDs) |
change edge children of an additional More... | |
void | changeLaneChildren (GNEAdditional *elementChild, const std::string &newEdgeIDs) |
change edge children of an additional More... | |
Protected Attributes | |
ChildConnections | myChildConnections |
variable ChildConnections More... | |
Private Member Functions | |
GNEHierarchicalElementChildren (const GNEHierarchicalElementChildren &)=delete | |
Invalidated copy constructor. More... | |
GNEHierarchicalElementChildren & | operator= (const GNEHierarchicalElementChildren &)=delete |
Invalidated assignment operator. More... | |
Private Attributes | |
GNEAttributeCarrier * | myAC |
pointer to AC (needed to avoid diamond problem) More... | |
std::vector< GNEAdditional * > | myAdditionalChildren |
vector with the additional children More... | |
std::vector< GNEDemandElement * > | myDemandElementChildren |
vector with the demand elements children More... | |
std::vector< GNEEdge * > | myEdgeChildren |
vector with the edge children of this element More... | |
std::vector< GNELane * > | myLaneChildren |
vector with the lane children of this element More... | |
std::vector< GNEShape * > | myShapeChildren |
vector with the lane children of this element More... | |
std::map< SumoXMLTag, std::set< GNEDemandElement * > > | mySortedDemandElementChildrenByType |
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 46 of file GNEHierarchicalElementChildren.h.
GNEHierarchicalElementChildren::GNEHierarchicalElementChildren | ( | GNEAttributeCarrier * | AC, |
const std::vector< GNEEdge * > & | edgeChildren, | ||
const std::vector< GNELane * > & | laneChildren, | ||
const std::vector< GNEShape * > & | shapeChildren, | ||
const std::vector< GNEAdditional * > & | additionalChildren, | ||
const std::vector< GNEDemandElement * > & | demandElementChildren | ||
) |
Parameter Constructor.
[in] | edgeChildren | vector of edge children |
[in] | laneChildren | vector of lane children |
[in] | shapeChildren | vector of shape children |
[in] | additionalChildren | vector of additional children |
[in] | demandElementChildren | vector of demand element children |
Definition at line 37 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::allowedTagsByCategory(), and mySortedDemandElementChildrenByType.
GNEHierarchicalElementChildren::~GNEHierarchicalElementChildren | ( | ) |
Destructor.
Definition at line 58 of file GNEHierarchicalElementChildren.cpp.
|
privatedelete |
Invalidated copy constructor.
void GNEHierarchicalElementChildren::addAdditionalChild | ( | GNEAdditional * | additional | ) |
Definition at line 96 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myAdditionalChildren, sortAdditionalChildren(), and updateAdditionalParent().
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 GNEHierarchicalElementChildren::addDemandElementChild | ( | GNEDemandElement * | demandElement | ) |
Definition at line 257 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myDemandElementChildren, mySortedDemandElementChildrenByType, and sortDemandElementChildren().
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 GNEHierarchicalElementChildren::addEdgeChild | ( | GNEEdge * | edge | ) |
Definition at line 351 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myEdgeChildren.
void GNEHierarchicalElementChildren::addLaneChild | ( | GNELane * | lane | ) |
Definition at line 383 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myLaneChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
void GNEHierarchicalElementChildren::addShapeChild | ( | GNEShape * | shape | ) |
Definition at line 415 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myShapeChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
|
protected |
change edge children of an additional
Definition at line 463 of file GNEHierarchicalElementChildren.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), myChildConnections, myEdgeChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
Referenced by GNERerouter::setAttribute().
|
protected |
change edge children of an additional
Definition at line 480 of file GNEHierarchicalElementChildren.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), myChildConnections, myLaneChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
Referenced by GNEVariableSpeedSign::setAttribute().
bool GNEHierarchicalElementChildren::checkAdditionalChildrenOverlapping | ( | ) | const |
check if children are overlapped (Used by Rerouters)
Definition at line 216 of file GNEHierarchicalElementChildren.cpp.
References myAdditionalChildren, SUMO_ATTR_BEGIN, SUMO_ATTR_END, and SUMO_ATTR_TIME.
Referenced by GNERerouterDialog::onCmdAccept().
bool GNEHierarchicalElementChildren::checkDemandElementChildrenOverlapping | ( | ) | const |
check if children are overlapped (Used by Rerouters)
Definition at line 315 of file GNEHierarchicalElementChildren.cpp.
void GNEHierarchicalElementChildren::drawChildConnections | ( | const GUIVisualizationSettings & | s, |
const GUIGlObjectType | GLTypeParent | ||
) | const |
Definition at line 90 of file GNEHierarchicalElementChildren.cpp.
References GNEHierarchicalElementChildren::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 GNENetElement, GNEShape, GNEDemandElement, GNEAdditional, GNEPOI, GNEPoly, GNEEdge, GNEJunction, GNELane, GNECrossing, and GNEConnection.
const std::vector< GNEAdditional * > & GNEHierarchicalElementChildren::getAdditionalChildren | ( | ) | const |
return vector of additionals that have as Parent this edge (For example, Calibrators)
Definition at line 132 of file GNEHierarchicalElementChildren.cpp.
References myAdditionalChildren.
Referenced by GNEAdditionalHandler::accessCanBeCreated(), GNEEdge::addConnection(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEDetectorE3::checkAdditionalChildRestriction(), 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(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNETAZ::updateAdditionalParent(), GNECalibratorDialog::updateFlowTable(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNERerouterDialog::updateIntervalTable(), GNEVariableSpeedSignDialog::updateTableSteps(), and GNEAdditional::writeAdditional().
get child position calculated in ChildConnections
Definition at line 62 of file GNEHierarchicalElementChildren.cpp.
References myChildConnections, and GNEHierarchicalElementChildren::ChildConnections::symbolsPositionAndRotation.
Referenced by GNEEdge::drawRerouterSymbol(), and GNELane::drawVSSSymbol().
double GNEHierarchicalElementChildren::getChildRotation | ( | const GNELane * | lane | ) |
get child rotation calculated in ChildConnections
Definition at line 73 of file GNEHierarchicalElementChildren.cpp.
References myChildConnections, and GNEHierarchicalElementChildren::ChildConnections::symbolsPositionAndRotation.
Referenced by GNEEdge::drawRerouterSymbol(), and GNELane::drawVSSSymbol().
const std::vector< GNEDemandElement * > & GNEHierarchicalElementChildren::getDemandElementChildren | ( | ) | const |
return vector of demand elements that have as Parent this edge (For example, Calibrators)
Definition at line 297 of file GNEHierarchicalElementChildren.cpp.
References myDemandElementChildren.
Referenced by GNEStoppingPlace::commitGeometryMoving(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteLane(), GNEChargingStation::drawGL(), GNEBusStop::drawGL(), GNEContainerStop::drawGL(), GNEParkingArea::drawGL(), GNEStop::drawGL(), GNELane::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(), GNEStoppingPlace::moveGeometry(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNENet::replaceIncomingEdge(), GNERouteHandler::separateEmbeddedRoute(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren(), GNEViewNetHelper::DemandViewOptions::showNonInspectedDemandElements(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEAdditional::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNEBusStop::updateGeometry(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNERide::updateGeometry(), GNEPersonTrip::updateGeometry(), GNEWalk::updateGeometry(), GNERoute::updateGeometry(), GNEPerson::updateGeometry(), GNEVehicle::updateGeometry(), GNERide::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNEWalk::writeDemandElement(), GNERoute::writeDemandElement(), GNEPerson::writeDemandElement(), and GNEVehicle::writeDemandElement().
const std::vector< GNEEdge * > & GNEHierarchicalElementChildren::getEdgeChildren | ( | ) | const |
get edge chidls
Definition at line 377 of file GNEHierarchicalElementChildren.cpp.
References myEdgeChildren.
Referenced by GNERerouter::getAttribute(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
const std::vector< GNELane * > & GNEHierarchicalElementChildren::getLaneChildren | ( | ) | const |
get lanes of VSS
Definition at line 409 of file GNEHierarchicalElementChildren.cpp.
References myLaneChildren.
Referenced by GNEVariableSpeedSign::getAttribute(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
GNEDemandElement * GNEHierarchicalElementChildren::getNextDemandElement | ( | const GNEDemandElement * | demandElement | ) | const |
get next demand element to the given demand element
Definition at line 336 of file GNEHierarchicalElementChildren.cpp.
References myDemandElementChildren.
|
pure virtual |
Returns position of hierarchical element in view.
Implemented in GNEDemandElement, GNEAdditional, GNEShape, GNENetElement, GNEVehicle, GNEPerson, GNERoute, GNEPOI, GNEWalk, GNEPersonTrip, GNERide, GNEPoly, GNEDetector, GNEStoppingPlace, GNEStop, GNEVehicleType, GNECalibrator, GNEEdge, GNEJunction, GNEAccess, GNERerouter, GNEVariableSpeedSign, GNERerouterInterval, GNETAZSourceSink, GNECalibratorFlow, GNEParkingSpace, GNEVariableSpeedSignStep, GNEDetectorE3, GNEParkingAreaReroute, GNELane, GNEClosingLaneReroute, GNEDestProbReroute, GNERouteProbReroute, GNEClosingReroute, GNERouteProbe, GNEVaporizer, GNECrossing, GNETAZ, and GNEConnection.
GNEDemandElement * GNEHierarchicalElementChildren::getPreviousemandElement | ( | const GNEDemandElement * | demandElement | ) | const |
get previous demand element to the given demand element
Definition at line 321 of file GNEHierarchicalElementChildren.cpp.
References myDemandElementChildren.
const std::vector< GNEShape * > & GNEHierarchicalElementChildren::getShapeChildren | ( | ) | const |
get shapes of VSS
Definition at line 445 of file GNEHierarchicalElementChildren.cpp.
References myShapeChildren.
Referenced by GNENet::deleteEdge(), GNENet::deleteLane(), GNELane::drawGL(), GNELane::endGeometryMoving(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren(), GNELane::startGeometryMoving(), and GNELane::updateGeometry().
const std::set< GNEDemandElement * > & GNEHierarchicalElementChildren::getSortedDemandElementChildrenByType | ( | SumoXMLTag | tag | ) | const |
return vector of demand elements that have as Parent this edge (For example, Calibrators)
Definition at line 303 of file GNEHierarchicalElementChildren.cpp.
References mySortedDemandElementChildrenByType.
Referenced by GNEEdge::drawGL(), and GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierChildren().
|
privatedelete |
Invalidated assignment operator.
void GNEHierarchicalElementChildren::removeAdditionalChild | ( | GNEAdditional * | additional | ) |
remove additional child from this additional
Definition at line 114 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myAdditionalChildren, sortAdditionalChildren(), and updateAdditionalParent().
void GNEHierarchicalElementChildren::removeDemandElementChild | ( | GNEDemandElement * | demandElement | ) |
remove demand element child from this demand element
Definition at line 275 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::TagProperties::canAutomaticSortChildren(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), myAC, myDemandElementChildren, mySortedDemandElementChildrenByType, and sortDemandElementChildren().
void GNEHierarchicalElementChildren::removeEdgeChild | ( | GNEEdge * | edge | ) |
remove edge child
Definition at line 362 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myEdgeChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
void GNEHierarchicalElementChildren::removeLaneChild | ( | GNELane * | lane | ) |
remove lane child
Definition at line 396 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myLaneChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
void GNEHierarchicalElementChildren::removeShapeChild | ( | GNEShape * | shape | ) |
remove shape child
Definition at line 430 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myChildConnections, myShapeChildren, and GNEHierarchicalElementChildren::ChildConnections::update().
void GNEHierarchicalElementChildren::sortAdditionalChildren | ( | ) |
sort children (used by Rerouters, VSS, TAZs...)
Definition at line 138 of file GNEHierarchicalElementChildren.cpp.
References GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), myAC, myAdditionalChildren, 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 addAdditionalChild(), GNEVariableSpeedSignDialog::onCmdAccept(), GNERerouterIntervalDialog::onCmdChangeBeginEnd(), GNERerouterDialog::onCmdSortIntervals(), GNEVariableSpeedSignDialog::onCmdSortSteps(), and removeAdditionalChild().
void GNEHierarchicalElementChildren::sortDemandElementChildren | ( | ) |
sort children (used by Rerouters, VSS, TAZs...)
Definition at line 309 of file GNEHierarchicalElementChildren.cpp.
Referenced by addDemandElementChild(), and removeDemandElementChild().
|
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 451 of file GNEHierarchicalElementChildren.cpp.
Referenced by addAdditionalChild(), and removeAdditionalChild().
void GNEHierarchicalElementChildren::updateChildConnections | ( | ) |
update child connections
Definition at line 84 of file GNEHierarchicalElementChildren.cpp.
References myChildConnections, and GNEHierarchicalElementChildren::ChildConnections::update().
|
virtual |
update parent after add or remove a child (can be reimplemented, for example used for statistics)
Definition at line 457 of file GNEHierarchicalElementChildren.cpp.
|
pure virtual |
Implemented in GNEDemandElement, GNEAdditional, GNEDetector, GNEStoppingPlace, GNEShape, GNENetElement, GNEVehicle, GNEPerson, GNERoute, GNEWalk, GNEPersonTrip, GNEPOI, GNERide, GNEDetectorE2, GNEPoly, GNEStop, GNEVehicleType, GNECalibrator, GNEDetectorE1Instant, GNEDetectorEntryExit, GNEDetectorE1, GNEEdge, GNEAccess, GNERerouter, GNEJunction, GNEVariableSpeedSign, GNERerouterInterval, GNETAZSourceSink, GNECalibratorFlow, GNEParkingSpace, GNEVariableSpeedSignStep, GNEDetectorE3, GNEParkingAreaReroute, GNELane, GNEClosingLaneReroute, GNEDestProbReroute, GNERouteProbReroute, GNEClosingReroute, GNERouteProbe, GNEVaporizer, GNECrossing, GNEParkingArea, GNETAZ, GNEBusStop, GNEChargingStation, GNEContainerStop, and GNEConnection.
|
friend |
declare GNEChange_Children as friend class
Definition at line 51 of file GNEHierarchicalElementChildren.h.
|
private |
pointer to AC (needed to avoid diamond problem)
Definition at line 260 of file GNEHierarchicalElementChildren.h.
Referenced by addAdditionalChild(), addDemandElementChild(), addEdgeChild(), addLaneChild(), addShapeChild(), removeAdditionalChild(), removeDemandElementChild(), removeEdgeChild(), removeLaneChild(), removeShapeChild(), and sortAdditionalChildren().
|
private |
vector with the additional children
Definition at line 251 of file GNEHierarchicalElementChildren.h.
Referenced by addAdditionalChild(), checkAdditionalChildrenOverlapping(), getAdditionalChildren(), removeAdditionalChild(), and sortAdditionalChildren().
|
protected |
variable ChildConnections
Definition at line 238 of file GNEHierarchicalElementChildren.h.
Referenced by addLaneChild(), addShapeChild(), changeEdgeChildren(), changeLaneChildren(), drawChildConnections(), GNEDetectorE3::drawGL(), GNEVariableSpeedSign::drawGL(), GNERerouter::drawGL(), getChildPosition(), getChildRotation(), removeEdgeChild(), removeLaneChild(), removeShapeChild(), GNEDetectorE3::updateAdditionalParent(), updateChildConnections(), GNEDetectorE3::updateGeometry(), GNEVariableSpeedSign::updateGeometry(), and GNERerouter::updateGeometry().
|
private |
vector with the demand elements children
Definition at line 254 of file GNEHierarchicalElementChildren.h.
Referenced by addDemandElementChild(), getDemandElementChildren(), getNextDemandElement(), getPreviousemandElement(), GNEChange_Children::redo(), removeDemandElementChild(), and GNEChange_Children::undo().
|
private |
vector with the edge children of this element
Definition at line 242 of file GNEHierarchicalElementChildren.h.
Referenced by addEdgeChild(), changeEdgeChildren(), getEdgeChildren(), and removeEdgeChild().
|
private |
vector with the lane children of this element
Definition at line 245 of file GNEHierarchicalElementChildren.h.
Referenced by addLaneChild(), changeLaneChildren(), getLaneChildren(), and removeLaneChild().
|
private |
vector with the lane children of this element
Definition at line 248 of file GNEHierarchicalElementChildren.h.
Referenced by addShapeChild(), getShapeChildren(), and removeShapeChild().
|
private |
vector with the demand elements children sorted by type and filtered (to avoid duplicated
Definition at line 257 of file GNEHierarchicalElementChildren.h.
Referenced by addDemandElementChild(), getSortedDemandElementChildrenByType(), GNEHierarchicalElementChildren(), and removeDemandElementChild().