![]() |
Eclipse SUMO - Simulation of Urban MObility
|
An special type of Attribute carrier that owns hierarchical elements. More...
#include <GNEHierarchicalParentElements.h>
Public Member Functions | |
std::string | getNewListOfParents (const GNENetElement *currentElement, const GNENetElement *newNextElement) const |
if use edge/parent lanes as a list of consecutive elements, obtain a list of IDs of elements after insert a new element More... | |
GNEHierarchicalParentElements (GNEAttributeCarrier *AC, const std::vector< GNEEdge * > &parentEdges, const std::vector< GNELane * > &parentLanes, const std::vector< GNEShape * > &parentShapes, const std::vector< GNEAdditional * > &parentAdditionals, const std::vector< GNEDemandElement * > &parentDemandElements) | |
Constructor used by elements that have another additionals as parent. More... | |
~GNEHierarchicalParentElements () | |
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 parent edges | |
add parent edge | |
void | addParentEdge (GNEEdge *edge) |
void | removeParentEdge (GNEEdge *edge) |
remove parent edge More... | |
const std::vector< GNEEdge * > & | getParentEdges () const |
get parent edges More... | |
std::vector< GNEEdge * > | getMiddleParentEdges () const |
get middle (via) parent edges More... | |
const std::vector< GNEEdge * > & | getPathEdges () const |
get path edges More... | |
members and functions related to parent lanes | |
add parent lane | |
void | addParentLane (GNELane *lane) |
void | removeParentLane (GNELane *lane) |
remove parent lane More... | |
const std::vector< GNELane * > & | getParentLanes () const |
get parent lanes More... | |
members and functions related to parent shapes | |
add parent shape | |
void | addParentShape (GNEShape *shape) |
void | removeParentShape (GNEShape *shape) |
remove parent shape More... | |
const std::vector< GNEShape * > & | getParentShapes () const |
get parent shapes More... | |
members and functions related to parent additionals | |
add parent additional | |
void | addParentAdditional (GNEAdditional *additional) |
void | removeParentAdditional (GNEAdditional *additional) |
remove parent additional More... | |
const std::vector< GNEAdditional * > & | getParentAdditionals () const |
get parent additionals More... | |
members and functions related to parent demand elements | |
add parent demand element | |
void | addParentDemandElement (GNEDemandElement *demandElement) |
void | removeParentDemandElement (GNEDemandElement *demandElement) |
remove parent demand element More... | |
const std::vector< GNEDemandElement * > & | getParentDemandElements () const |
get parent demand elements More... | |
Protected Member Functions | |
members and functions relative to changing parents | |
void | replaceParentEdges (GNEShape *elementChild, const std::string &newEdgeIDs) |
replace the parent edges of a shape More... | |
void | replaceParentEdges (GNEAdditional *elementChild, const std::string &newEdgeIDs) |
replace the parent edges of an additional More... | |
void | replaceParentEdges (GNEDemandElement *elementChild, const std::string &newEdgeIDs) |
replace the parent edges of a demandElement More... | |
void | replaceParentEdges (GNEDemandElement *elementChild, const std::vector< GNEEdge * > &newEdges) |
replace the parent edges of a demandElement (GNEEdge version) More... | |
void | replaceFirstParentEdge (GNEDemandElement *elementChild, GNEEdge *newFirstEdge) |
replace the first parent edge (used by demand elements) More... | |
void | replaceMiddleParentEdges (GNEDemandElement *elementChild, const std::vector< GNEEdge * > &newMiddleEdges, const bool updateChildReferences) |
replace middle (via) parent edges More... | |
void | replaceLastParentEdge (GNEDemandElement *elementChild, GNEEdge *newLastEdge) |
replace the last parent edge (used by demand elements) More... | |
void | replacePathEdges (GNEDemandElement *elementChild, const std::vector< GNEEdge * > &routeEdges) |
replace edge route Parents More... | |
void | replaceParentLanes (GNEShape *elementChild, const std::string &newLaneIDs) |
replace the parent edges of a shape More... | |
void | replaceParentLanes (GNEAdditional *elementChild, const std::string &newLaneIDs) |
replace the parent edges of an additional More... | |
void | replaceParentLanes (GNEDemandElement *elementChild, const std::string &newLaneIDs) |
replace the parent edges of a demandElement More... | |
void | replaceParentAdditional (GNEShape *shapeTobeChanged, const std::string &newParentAdditionalID, int additionalParentIndex) |
replace the parent additional of a shape More... | |
void | replaceParentAdditional (GNEAdditional *additionalTobeChanged, const std::string &newParentAdditionalID, int additionalParentIndex) |
replace the parent additional of an additional More... | |
void | replaceParentAdditional (GNEDemandElement *demandElementTobeChanged, const std::string &newParentAdditionalID, int additionalParentIndex) |
replace the parent additional of a demand element More... | |
void | replaceParentDemandElement (GNEShape *shapeTobeChanged, const std::string &newParentDemandElementID, int demandElementParentIndex) |
replace the parent demand element of a shape More... | |
void | replaceParentDemandElement (GNEAdditional *additionalTobeChanged, const std::string &newParentDemandElementID, int demandElementParentIndex) |
replace the parent demand element of an additional More... | |
void | replaceParentDemandElement (GNEDemandElement *demandElementTobeChanged, const std::string &newParentDemandElementID, int demandElementParentIndex) |
change first parent demand element of demandElement More... | |
Protected Attributes | |
GNEGeometry::ParentConnections | myParentConnections |
variable ParentConnections More... | |
Private Member Functions | |
GNEHierarchicalParentElements (const GNEHierarchicalParentElements &)=delete | |
Invalidated copy constructor. More... | |
GNEHierarchicalParentElements & | operator= (const GNEHierarchicalParentElements &)=delete |
Invalidated assignment operator. More... | |
Private Attributes | |
GNEAttributeCarrier * | myAC |
pointer to AC (needed to avoid diamond problem) More... | |
std::vector< GNEAdditional * > | myParentAdditionals |
list of parent additionals of this element More... | |
std::vector< GNEDemandElement * > | myParentDemandElements |
list of demand elements parents of this element More... | |
std::vector< GNEEdge * > | myParentEdges |
list of parent edges of this element More... | |
std::vector< GNELane * > | myParentLanes |
list of parent lanes of this element More... | |
std::vector< GNEShape * > | myParentShapes |
list of parent shapes of this element More... | |
std::vector< GNEEdge * > | myRouteEdges |
list of edges used in Flow/Trips/PersonTrips 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 49 of file GNEHierarchicalParentElements.h.
GNEHierarchicalParentElements::GNEHierarchicalParentElements | ( | GNEAttributeCarrier * | AC, |
const std::vector< GNEEdge * > & | parentEdges, | ||
const std::vector< GNELane * > & | parentLanes, | ||
const std::vector< GNEShape * > & | parentShapes, | ||
const std::vector< GNEAdditional * > & | parentAdditionals, | ||
const std::vector< GNEDemandElement * > & | parentDemandElements | ||
) |
Constructor used by elements that have another additionals as parent.
[in] | tag | Type of xml tag that define the element (SUMO_TAG_BUS_STOP, SUMO_TAG_JUNCTION, etc...) |
[in] | parentEdges | vector of parent edges |
[in] | parentLanes | vector of parent lanes |
[in] | parentShapes | vector of parent shapes |
[in] | parentAdditionals | vector of parent additionals |
[in] | parentDemandElements | vector of parent demand elements |
Definition at line 42 of file GNEHierarchicalParentElements.cpp.
GNEHierarchicalParentElements::~GNEHierarchicalParentElements | ( | ) |
Destructor.
Definition at line 58 of file GNEHierarchicalParentElements.cpp.
|
privatedelete |
Invalidated copy constructor.
void GNEHierarchicalParentElements::addParentAdditional | ( | GNEAdditional * | additional | ) |
Definition at line 62 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myParentAdditionals.
void GNEHierarchicalParentElements::addParentDemandElement | ( | GNEDemandElement * | demandElement | ) |
Definition at line 91 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myParentDemandElements.
void GNEHierarchicalParentElements::addParentEdge | ( | GNEEdge * | edge | ) |
Definition at line 152 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentEdges, SUMO_TAG_EDGE, and toString().
void GNEHierarchicalParentElements::addParentLane | ( | GNELane * | lane | ) |
Definition at line 209 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentLanes, SUMO_TAG_EDGE, and toString().
void GNEHierarchicalParentElements::addParentShape | ( | GNEShape * | shape | ) |
Definition at line 241 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentShapes, SUMO_TAG_EDGE, and toString().
std::vector< GNEEdge * > GNEHierarchicalParentElements::getMiddleParentEdges | ( | ) | const |
get middle (via) parent edges
Definition at line 187 of file GNEHierarchicalParentElements.cpp.
References myParentEdges.
Referenced by GNERide::getAttribute(), GNEPersonTrip::getAttribute(), GNEWalk::getAttribute(), GNERouteHandler::transformToFlow(), and GNERouteHandler::transformToTrip().
std::string GNEHierarchicalParentElements::getNewListOfParents | ( | const GNENetElement * | currentElement, |
const GNENetElement * | newNextElement | ||
) | const |
if use edge/parent lanes as a list of consecutive elements, obtain a list of IDs of elements after insert a new element
Definition at line 120 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), myParentEdges, myParentLanes, SUMO_TAG_EDGE, SUMO_TAG_LANE, and toString().
Referenced by GNEDetector::splitEdgeGeometry(), GNEWalk::splitEdgeGeometry(), and GNERoute::splitEdgeGeometry().
const std::vector< GNEAdditional * > & GNEHierarchicalParentElements::getParentAdditionals | ( | ) | const |
get parent additionals
Definition at line 85 of file GNEHierarchicalParentElements.cpp.
References myParentAdditionals.
Referenced by GNEDemandElement::calculatePersonPlanLaneStartEndPos(), GNEDemandElement::calculatePersonPlanPositionStartEndPos(), GNERide::computePath(), GNEPersonTrip::computePath(), GNEWalk::computePath(), GNELane::drawGL(), GNEEdge::drawGL(), GNEEdge::drawPartialPersonPlan(), GNELane::endGeometryMoving(), GNEEdge::endGeometryMoving(), GNEClosingReroute::getAttribute(), GNEDestProbReroute::getAttribute(), GNEDetectorEntryExit::getAttribute(), GNEClosingLaneReroute::getAttribute(), GNERouteProbReroute::getAttribute(), GNEParkingAreaReroute::getAttribute(), GNEParkingSpace::getAttribute(), GNEVariableSpeedSignStep::getAttribute(), GNECalibratorFlow::getAttribute(), GNETAZSourceSink::getAttribute(), GNERerouterInterval::getAttribute(), GNEAccess::getAttribute(), GNEStop::getAttribute(), GNERide::getAttribute(), GNEPersonTrip::getAttribute(), GNEWalk::getAttribute(), GNEDestProbReroute::getCenteringBoundary(), GNERouteProbReroute::getCenteringBoundary(), GNEParkingAreaReroute::getCenteringBoundary(), GNEVariableSpeedSignStep::getCenteringBoundary(), GNECalibratorFlow::getCenteringBoundary(), GNERerouterInterval::getCenteringBoundary(), GNEStop::getCenteringBoundary(), GNEStop::getFromEdge(), GNEParkingAreaReroute::getHierarchyName(), GNEStop::getHierarchyName(), GNERide::getHierarchyName(), GNEPersonTrip::getHierarchyName(), GNEWalk::getHierarchyName(), GNEDemandElement::getLastAllowedVehicleLane(), GNEClosingReroute::getParentName(), GNEClosingLaneReroute::getParentName(), GNEDestProbReroute::getParentName(), GNERouteProbReroute::getParentName(), GNEParkingSpace::getParentName(), GNEParkingAreaReroute::getParentName(), GNEVariableSpeedSignStep::getParentName(), GNECalibratorFlow::getParentName(), GNETAZSourceSink::getParentName(), GNERerouterInterval::getParentName(), GNEAccess::getParentName(), GNEStop::getParentName(), GNEClosingReroute::getPositionInView(), GNEClosingLaneReroute::getPositionInView(), GNEDestProbReroute::getPositionInView(), GNERouteProbReroute::getPositionInView(), GNEParkingAreaReroute::getPositionInView(), GNECalibratorFlow::getPositionInView(), GNEVariableSpeedSignStep::getPositionInView(), GNERerouterInterval::getPositionInView(), GNETAZSourceSink::getPositionInView(), GNEStop::getToEdge(), GNERide::invalidatePath(), GNEPersonTrip::invalidatePath(), GNEWalk::invalidatePath(), GNEVariableSpeedSignStep::isValid(), GNEAccess::isValid(), GNECalibratorFlowDialog::onCmdAccept(), GNERerouterIntervalDialog::onCmdAccept(), GNEAdditionalHandler::parseAndBuildRerouterInterval(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNENet::replaceIncomingEdge(), GNETAZSourceSink::setAttribute(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierParents(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNEDetectorEntryExit::updateGeometry(), GNEStop::updateGeometry(), GNEStop::updatePartialGeometry(), GNERide::writeDemandElement(), GNEPersonTrip::writeDemandElement(), and GNEWalk::writeDemandElement().
const std::vector< GNEDemandElement * > & GNEHierarchicalParentElements::getParentDemandElements | ( | ) | const |
get parent demand elements
Definition at line 114 of file GNEHierarchicalParentElements.cpp.
References myParentDemandElements.
Referenced by GNEDemandElement::calculatePersonPlanLaneStartEndPos(), GNEDemandElement::calculatePersonPlanPositionStartEndPos(), GNERide::computePath(), GNEPersonTrip::computePath(), GNEWalk::computePath(), GNEVehicle::computePath(), GNENet::deleteDemandElement(), GNEStop::drawGL(), GNEPerson::drawGL(), GNEVehicle::drawGL(), GNEEdge::drawPartialPersonPlan(), GNEEdge::drawPartialRoute(), GNERouteHandler::embebbeRoute(), GNELane::endGeometryMoving(), GNEEdge::endGeometryMoving(), GNEStop::getAttribute(), GNERide::getAttribute(), GNEPersonTrip::getAttribute(), GNEWalk::getAttribute(), GNEPerson::getAttribute(), GNEVehicle::getAttribute(), GNERide::getColor(), GNEPersonTrip::getColor(), GNEWalk::getColor(), GNERide::getDemandElementProblem(), GNEPersonTrip::getDemandElementProblem(), GNEWalk::getDemandElementProblem(), GNEVehicle::getDemandElementProblem(), GNEDemandElement::getFirstAllowedVehicleLane(), GNERide::getFromEdge(), GNEPersonTrip::getFromEdge(), GNEWalk::getFromEdge(), GNEVehicle::getFromEdge(), GNEStop::getHierarchyName(), GNEWalk::getHierarchyName(), GNEDemandElement::getLastAllowedVehicleLane(), GNEStop::getParentName(), GNEVehicle::getParentName(), GNEStop::getPositionInView(), GNERide::getToEdge(), GNEPersonTrip::getToEdge(), GNEWalk::getToEdge(), GNEVehicle::getToEdge(), GNEStop::getVClass(), GNERide::getVClass(), GNEPersonTrip::getVClass(), GNEWalk::getVClass(), GNEPerson::getVClass(), GNEVehicle::getVClass(), GNERide::isDemandElementValid(), GNEPersonTrip::isDemandElementValid(), GNEWalk::isDemandElementValid(), GNEVehicle::isDemandElementValid(), GNEVehicle::isValid(), GNEViewNet::onCmdToogleLockPerson(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNERouteHandler::separateEmbeddedRoute(), GNEVehicle::setAttribute(), GNEVehicle::setColor(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierParents(), GNEViewNetHelper::DemandViewOptions::showNonInspectedDemandElements(), GNELane::startGeometryMoving(), GNEEdge::startGeometryMoving(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToVehicle(), GNEBusStop::updateGeometry(), GNELane::updateGeometry(), GNEEdge::updateGeometry(), GNEStop::updateGeometry(), GNEWalk::updateGeometry(), GNEStop::updatePartialGeometry(), GNERide::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNEWalk::writeDemandElement(), GNEPerson::writeDemandElement(), and GNEVehicle::writeDemandElement().
const std::vector< GNEEdge * > & GNEHierarchicalParentElements::getParentEdges | ( | ) | const |
get parent edges
Definition at line 181 of file GNEHierarchicalParentElements.cpp.
References myParentEdges.
Referenced by GNEVehicleFrame::addVehicle(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowWithEmbeddedRoute(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVehicleWithEmbeddedRoute(), GNERide::computePath(), GNEPersonTrip::computePath(), GNEWalk::computePath(), GNEVehicle::computePath(), GNECalibrator::drawCalibratorSymbol(), GNEVaporizer::drawGL(), GNERouteProbe::drawGL(), GNEVehicle::drawGL(), GNEEdge::drawPartialPersonPlan(), GNEEdge::drawPartialRoute(), GNERouteProbe::getAttribute(), GNETAZSourceSink::getAttribute(), GNECalibrator::getAttribute(), GNERide::getAttribute(), GNEPersonTrip::getAttribute(), GNEWalk::getAttribute(), GNERoute::getAttribute(), GNEVehicle::getAttribute(), GNETAZSourceSink::getCenteringBoundary(), GNERide::getCenteringBoundary(), GNEPersonTrip::getCenteringBoundary(), GNEWalk::getCenteringBoundary(), GNERoute::getCenteringBoundary(), GNERide::getDemandElementProblem(), GNEPersonTrip::getDemandElementProblem(), GNEWalk::getDemandElementProblem(), GNERoute::getDemandElementProblem(), GNEVehicle::getDemandElementProblem(), GNEDemandElement::getFirstAllowedVehicleLane(), GNERide::getFromEdge(), GNEPersonTrip::getFromEdge(), GNEWalk::getFromEdge(), GNERoute::getFromEdge(), GNEVehicle::getFromEdge(), GNERide::getHierarchyName(), GNEPersonTrip::getHierarchyName(), GNEWalk::getHierarchyName(), GNEPerson::getHierarchyName(), GNEVehicle::getHierarchyName(), GNEDemandElement::getLastAllowedVehicleLane(), GNERouteHandler::PersonPlansValues::getLastEdge(), GNEVaporizer::getParentName(), GNERouteProbe::getParentName(), GNECalibrator::getParentName(), GNEVehicle::getParentName(), GNEVaporizer::getPositionInView(), GNERouteProbe::getPositionInView(), GNECalibrator::getPositionInView(), GNERide::getToEdge(), GNEPersonTrip::getToEdge(), GNEWalk::getToEdge(), GNERoute::getToEdge(), GNEVehicle::getToEdge(), GNERide::invalidatePath(), GNEPersonTrip::invalidatePath(), GNEWalk::invalidatePath(), GNEVehicle::invalidatePath(), GNERide::isDemandElementValid(), GNEPersonTrip::isDemandElementValid(), GNEWalk::isDemandElementValid(), GNERoute::isDemandElementValid(), GNEVehicle::isDemandElementValid(), GNECalibrator::isValid(), GNERide::moveGeometry(), GNEPersonTrip::moveGeometry(), GNEWalk::moveGeometry(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierParents(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToTrip(), GNEVaporizer::updateGeometry(), GNERouteProbe::updateGeometry(), GNECalibrator::updateGeometry(), GNERide::updateGeometry(), GNEPersonTrip::updateGeometry(), GNEWalk::updateGeometry(), GNERoute::updateGeometry(), GNEVehicle::updateGeometry(), GNERide::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNEWalk::writeDemandElement(), GNERoute::writeDemandElement(), and GNEVehicle::writeDemandElement().
const std::vector< GNELane * > & GNEHierarchicalParentElements::getParentLanes | ( | ) | const |
get parent lanes
Definition at line 235 of file GNEHierarchicalParentElements.cpp.
References myParentLanes.
Referenced by GNEDetectorE2::checkE2MultilaneIntegrity(), GNEStop::commitGeometryMoving(), GNEDetectorE2::commitGeometryMoving(), GNEPOI::commitGeometryMoving(), GNERide::computePath(), GNEPersonTrip::computePath(), GNEWalk::computePath(), GNECalibrator::drawCalibratorSymbol(), GNEStop::drawGL(), GNEEdge::drawPartialPersonPlan(), GNEStop::enableAttribute(), GNEStop::endGeometryMoving(), GNEDetectorE1Instant::fixAdditionalProblem(), GNEDetectorE1::fixAdditionalProblem(), GNEDetectorEntryExit::fixAdditionalProblem(), GNEStoppingPlace::fixAdditionalProblem(), GNEDetectorE2::fixAdditionalProblem(), GNEDetectorE1Instant::getAdditionalProblem(), GNEDetectorE1::getAdditionalProblem(), GNEDetectorEntryExit::getAdditionalProblem(), GNEStoppingPlace::getAdditionalProblem(), GNEDetectorE2::getAdditionalProblem(), GNEBusStop::getAttribute(), GNEContainerStop::getAttribute(), GNEChargingStation::getAttribute(), GNEParkingArea::getAttribute(), GNEDetectorE1::getAttribute(), GNEDetectorEntryExit::getAttribute(), GNEDetectorE1Instant::getAttribute(), GNEAccess::getAttribute(), GNECalibrator::getAttribute(), GNEDetectorE2::getAttribute(), GNEStop::getAttribute(), GNEPOI::getAttribute(), GNEStop::getAttributeDouble(), GNEDetector::getCenteringBoundary(), GNEStop::getDemandElementProblem(), GNEAccess::getEdge(), GNEStoppingPlace::getEndGeometryPositionOverLane(), GNEStop::getEndGeometryPositionOverLane(), GNEStoppingPlace::getEndPosition(), GNEStop::getFromEdge(), GNEAccess::getHierarchyName(), GNEDetector::getLane(), GNEStoppingPlace::getParentName(), GNECalibrator::getParentName(), GNEStop::getParentName(), GNEPOI::getPopUpMenu(), GNEAccess::getPositionInView(), GNEStoppingPlace::getPositionInView(), GNECalibrator::getPositionInView(), GNEStop::getPositionInView(), GNEStoppingPlace::getStartGeometryPositionOverLane(), GNEStop::getStartGeometryPositionOverLane(), GNEStop::getToEdge(), GNERide::invalidatePath(), GNEPersonTrip::invalidatePath(), GNEWalk::invalidatePath(), GNEAccess::isAccessPositionFixed(), GNEDetectorE1Instant::isAdditionalValid(), GNEDetectorE1::isAdditionalValid(), GNEDetectorEntryExit::isAdditionalValid(), GNEStoppingPlace::isAdditionalValid(), GNEDetectorE2::isAdditionalValid(), GNEStop::isDemandElementValid(), GNEBusStop::isValid(), GNEContainerStop::isValid(), GNEChargingStation::isValid(), GNEParkingArea::isValid(), GNEDetectorE1::isValid(), GNEDetectorEntryExit::isValid(), GNEDetectorE1Instant::isValid(), GNEAccess::isValid(), GNECalibrator::isValid(), GNEStop::isValid(), GNEPOI::isValid(), GNEAccess::moveGeometry(), GNEDetectorE1::moveGeometry(), GNEDetectorEntryExit::moveGeometry(), GNEDetectorE1Instant::moveGeometry(), GNEStoppingPlace::moveGeometry(), GNEStop::moveGeometry(), GNEDetectorE2::moveGeometry(), GNEPOI::moveGeometry(), GNEPersonPlanFrame::personPlanCreated(), GNEPersonPlanFrame::PersonPlanCreator::refreshPersonPlanCreator(), GNEPOI::setAttribute(), GNEStoppingPlace::setStoppingPlaceGeometry(), GNEFrameModuls::AttributeCarrierHierarchy::showAttributeCarrierParents(), GNEStoppingPlace::splitEdgeGeometry(), GNEStop::startGeometryMoving(), GNEBusStop::updateGeometry(), GNEContainerStop::updateGeometry(), GNEChargingStation::updateGeometry(), GNEParkingArea::updateGeometry(), GNEAccess::updateGeometry(), GNEDetectorE1::updateGeometry(), GNEDetectorEntryExit::updateGeometry(), GNEDetectorE1Instant::updateGeometry(), GNECalibrator::updateGeometry(), GNEStop::updateGeometry(), GNEDetectorE2::updateGeometry(), GNEPOI::updateGeometry(), GNEStop::updatePartialGeometry(), and GNEPOI::writeShape().
const std::vector< GNEShape * > & GNEHierarchicalParentElements::getParentShapes | ( | ) | const |
get parent shapes
Definition at line 267 of file GNEHierarchicalParentElements.cpp.
References myParentShapes.
Referenced by GNELane::endGeometryMoving(), GNELane::startGeometryMoving(), and GNELane::updateGeometry().
const std::vector< GNEEdge * > & GNEHierarchicalParentElements::getPathEdges | ( | ) | const |
get path edges
Definition at line 203 of file GNEHierarchicalParentElements.cpp.
References myRouteEdges.
Referenced by GNERide::updateGeometry(), GNEPersonTrip::updateGeometry(), GNEWalk::updateGeometry(), and GNEVehicle::updateGeometry().
|
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.
|
privatedelete |
Invalidated assignment operator.
void GNEHierarchicalParentElements::removeParentAdditional | ( | GNEAdditional * | additional | ) |
remove parent additional
Definition at line 73 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myParentAdditionals.
void GNEHierarchicalParentElements::removeParentDemandElement | ( | GNEDemandElement * | demandElement | ) |
remove parent demand element
Definition at line 102 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, and myParentDemandElements.
void GNEHierarchicalParentElements::removeParentEdge | ( | GNEEdge * | edge | ) |
remove parent edge
Definition at line 165 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentEdges, SUMO_TAG_EDGE, and toString().
void GNEHierarchicalParentElements::removeParentLane | ( | GNELane * | lane | ) |
remove parent lane
Definition at line 222 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentLanes, SUMO_TAG_EDGE, and toString().
void GNEHierarchicalParentElements::removeParentShape | ( | GNEShape * | shape | ) |
remove parent shape
Definition at line 254 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagStr(), myAC, myParentShapes, SUMO_TAG_EDGE, and toString().
|
protected |
replace the first parent edge (used by demand elements)
Definition at line 356 of file GNEHierarchicalParentElements.cpp.
References myParentEdges.
Referenced by GNERide::setAttribute(), GNEPersonTrip::setAttribute(), GNEWalk::setAttribute(), and GNEVehicle::setAttribute().
|
protected |
replace the last parent edge (used by demand elements)
Definition at line 397 of file GNEHierarchicalParentElements.cpp.
References myParentEdges.
Referenced by GNERide::setAttribute(), GNEPersonTrip::setAttribute(), GNEWalk::setAttribute(), and GNEVehicle::setAttribute().
|
protected |
replace middle (via) parent edges
Definition at line 372 of file GNEHierarchicalParentElements.cpp.
References myParentEdges, and replaceParentEdges().
Referenced by GNERide::setAttribute(), GNEPersonTrip::setAttribute(), GNEWalk::setAttribute(), and GNEVehicle::setAttribute().
|
protected |
replace the parent additional of an additional
exception | if this additional doesn't have previously a defined Additional parent |
exception | if additional with ID newParentAdditionalID doesn't exist |
Definition at line 506 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEViewNet::getNet(), GNEAttributeCarrier::getTagStr(), GNEAdditional::getViewNet(), myAC, myParentAdditionals, GNENet::retrieveAdditional(), toString(), and GNEAdditional::updateGeometry().
|
protected |
replace the parent additional of a demand element
exception | if this additional doesn't have previously a defined Additional parent |
exception | if additional with ID newParentAdditionalID doesn't exist |
Definition at line 523 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEViewNet::getNet(), GNEAttributeCarrier::getTagStr(), GNEDemandElement::getViewNet(), myAC, myParentAdditionals, GNENet::retrieveAdditional(), toString(), and GNEDemandElement::updateGeometry().
|
protected |
replace the parent additional of a shape
exception | if this shape doesn't have previously a defined Additional parent |
exception | if shape with ID newParentAdditionalID doesn't exist |
Definition at line 489 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEShape::getNet(), GNEAttributeCarrier::getTagStr(), myAC, myParentAdditionals, GNENet::retrieveAdditional(), toString(), and GNEShape::updateGeometry().
Referenced by GNEDetectorEntryExit::setAttribute(), GNEParkingAreaReroute::setAttribute(), GNEParkingSpace::setAttribute(), GNEStop::setAttribute(), GNERide::setAttribute(), GNEPersonTrip::setAttribute(), and GNEWalk::setAttribute().
|
protected |
replace the parent demand element of an additional
exception | if this demand element doesn't have previously a defined DemandElement parent |
exception | if demand element with ID newParentDemandElementID doesn't exist |
Definition at line 557 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEViewNet::getNet(), GNEAttributeCarrier::getTagStr(), GNEAdditional::getViewNet(), myAC, myParentDemandElements, GNENet::retrieveDemandElement(), toString(), and GNEAdditional::updateGeometry().
|
protected |
change first parent demand element of demandElement
exception | if this demand element doesn't have previously a defined DemandElement parent |
exception | if demand element with ID newParentDemandElementID doesn't exist |
Definition at line 574 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEViewNet::getNet(), GNEAttributeCarrier::getTagStr(), GNEDemandElement::getViewNet(), myAC, myParentDemandElements, GNENet::retrieveDemandElement(), toString(), and GNEDemandElement::updateGeometry().
|
protected |
replace the parent demand element of a shape
exception | if this demand element doesn't have previously a defined DemandElement parent |
exception | if demand element with ID newParentDemandElementID doesn't exist |
Definition at line 540 of file GNEHierarchicalParentElements.cpp.
References GNEAttributeCarrier::getID(), GNEShape::getNet(), GNEAttributeCarrier::getTagStr(), myAC, myParentDemandElements, GNENet::retrieveDemandElement(), toString(), and GNEShape::updateGeometry().
Referenced by GNEWalk::setAttribute(), GNEPerson::setAttribute(), and GNEVehicle::setAttribute().
|
protected |
replace the parent edges of an additional
Definition at line 296 of file GNEHierarchicalParentElements.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), and myParentEdges.
|
protected |
replace the parent edges of a demandElement
Definition at line 316 of file GNEHierarchicalParentElements.cpp.
References GNEViewNet::getNet(), GNEDemandElement::getViewNet(), and myParentEdges.
|
protected |
replace the parent edges of a demandElement (GNEEdge version)
Definition at line 336 of file GNEHierarchicalParentElements.cpp.
References myParentEdges.
|
protected |
replace the parent edges of a shape
Definition at line 276 of file GNEHierarchicalParentElements.cpp.
References GNEShape::getNet(), and myParentEdges.
Referenced by replaceMiddleParentEdges(), GNEVaporizer::setAttribute(), GNERouteProbe::setAttribute(), GNECalibrator::setAttribute(), GNEWalk::setAttribute(), and GNERoute::setAttribute().
|
protected |
replace the parent edges of an additional
Definition at line 429 of file GNEHierarchicalParentElements.cpp.
References GNEViewNet::getNet(), GNEAdditional::getViewNet(), and myParentLanes.
|
protected |
replace the parent edges of a demandElement
Definition at line 449 of file GNEHierarchicalParentElements.cpp.
References GNEViewNet::getNet(), GNEDemandElement::getViewNet(), and myParentLanes.
|
protected |
replace the parent edges of a shape
Definition at line 469 of file GNEHierarchicalParentElements.cpp.
References GNEShape::getNet(), and myParentLanes.
Referenced by GNEContainerStop::setAttribute(), GNEBusStop::setAttribute(), GNEChargingStation::setAttribute(), GNEParkingArea::setAttribute(), GNEDetectorE1::setAttribute(), GNEDetectorEntryExit::setAttribute(), GNEDetectorE1Instant::setAttribute(), GNEAccess::setAttribute(), GNEDetectorE2::setAttribute(), GNECalibrator::setAttribute(), GNEPOI::setAttribute(), and GNEStop::setAttribute().
|
protected |
replace edge route Parents
Definition at line 414 of file GNEHierarchicalParentElements.cpp.
References myRouteEdges.
Referenced by GNERide::computePath(), GNEPersonTrip::computePath(), GNEWalk::computePath(), GNEVehicle::computePath(), GNERide::invalidatePath(), GNEPersonTrip::invalidatePath(), GNEWalk::invalidatePath(), and GNEVehicle::invalidatePath().
|
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.
|
friend |
declare GNEChange_Children as friend class
Definition at line 54 of file GNEHierarchicalParentElements.h.
|
private |
pointer to AC (needed to avoid diamond problem)
Definition at line 255 of file GNEHierarchicalParentElements.h.
Referenced by addParentAdditional(), addParentDemandElement(), addParentEdge(), addParentLane(), addParentShape(), removeParentAdditional(), removeParentDemandElement(), removeParentEdge(), removeParentLane(), removeParentShape(), replaceParentAdditional(), and replaceParentDemandElement().
|
private |
list of parent additionals of this element
Definition at line 249 of file GNEHierarchicalParentElements.h.
Referenced by addParentAdditional(), getParentAdditionals(), removeParentAdditional(), and replaceParentAdditional().
|
protected |
variable ParentConnections
Definition at line 233 of file GNEHierarchicalParentElements.h.
|
private |
list of demand elements parents of this element
Definition at line 252 of file GNEHierarchicalParentElements.h.
Referenced by addParentDemandElement(), getParentDemandElements(), removeParentDemandElement(), and replaceParentDemandElement().
|
private |
list of parent edges of this element
Definition at line 237 of file GNEHierarchicalParentElements.h.
Referenced by addParentEdge(), getMiddleParentEdges(), getNewListOfParents(), getParentEdges(), removeParentEdge(), replaceFirstParentEdge(), replaceLastParentEdge(), replaceMiddleParentEdges(), and replaceParentEdges().
|
private |
list of parent lanes of this element
Definition at line 243 of file GNEHierarchicalParentElements.h.
Referenced by addParentLane(), getNewListOfParents(), getParentLanes(), removeParentLane(), and replaceParentLanes().
|
private |
list of parent shapes of this element
Definition at line 246 of file GNEHierarchicalParentElements.h.
Referenced by addParentShape(), getParentShapes(), and removeParentShape().
|
private |
list of edges used in Flow/Trips/PersonTrips
Definition at line 240 of file GNEHierarchicalParentElements.h.
Referenced by getPathEdges(), and replacePathEdges().