Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
GNEHierarchicalElement Class Reference

#include <GNEHierarchicalElement.h>

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

Public Member Functions

void clearParents ()
 clear hierarchical structure parents (used in GNE_Change)
 GNEHierarchicalElement ()
 default Constructor
 ~GNEHierarchicalElement ()
 Destructor.
get parent functions
const GNEHierarchicalStructureParentsgetParents () const
 get parents container
const GNEHierarchicalContainerParents< GNEJunction * > & getParentJunctions () const
 get parent junctions
const GNEHierarchicalContainerParents< GNEEdge * > & getParentEdges () const
 get parent edges
const GNEHierarchicalContainerParents< GNELane * > & getParentLanes () const
 get parent lanes
const GNEHierarchicalContainerParents< GNEAdditional * > & getParentAdditionals () const
 get parent additionals
const GNEHierarchicalContainerParents< GNEAdditional * > getParentStoppingPlaces () const
 get parent stoppingPlaces (used by plans)
const GNEHierarchicalContainerParents< GNEAdditional * > getParentTAZs () const
 get parent TAZs (used by plans)
const GNEHierarchicalContainerParents< GNEDemandElement * > & getParentDemandElements () const
 get parent demand elements
const GNEHierarchicalContainerParents< GNEGenericData * > & getParentGenericDatas () const
 get parent demand elements
get children functions
const GNEHierarchicalStructureChildrengetChildren () const
 get child container
const GNEHierarchicalContainerChildren< GNEJunction * > & getChildJunctions () const
 get child junctions
const GNEHierarchicalContainerChildren< GNEEdge * > & getChildEdges () const
 get child edges
const GNEHierarchicalContainerChildren< GNELane * > & getChildLanes () const
 get child lanes
const GNEHierarchicalContainerChildren< GNEAdditional * > & getChildAdditionals () const
 return child additionals
const GNEHierarchicalContainerChildren< GNEDemandElement * > & getChildDemandElements () const
 return child demand elements
const GNEHierarchicalContainerChildren< GNEGenericData * > & getChildGenericDatas () const
 return child generic data elements
const GNEHierarchicalContainerChildrenSet< GNETAZSourceSink * > & getChildTAZSourceSinks () const
 return child TAZSourceSinks (Set)
template<typename ParentType>
void setParent (ParentType parent)
 edit parent and childrens without maintain integrity (use carefully)
template<typename ParentType>
void setParents (const GNEHierarchicalContainerParents< ParentType > &parents)
 set multiple parent element (ONLY use in constructors)
template<typename ChildType>
void addChildElement (ChildType *element)
 add child without updating parent (ONLY used if we're creating elements without undo-redo)
specific get functions
std::string getNewListOfParents (const GNENetworkElement *currentElement, const GNENetworkElement *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

Static Public Member Functions

edit function maintain integrity
template<typename ElementType, typename ParentType>
static void insertParent (ElementType *element, ParentType *parent, const int index=-1)
 insert parent element
template<typename ElementType, typename ParentType>
static void removeParent (ElementType *element, ParentType *parent)
 remove parent element
template<typename ElementType, typename ParentType>
static void updateParent (ElementType element, const int index, ParentType newParent)
 update single parent element
template<typename ElementType, typename ParentType>
static void updateParents (ElementType element, GNEHierarchicalContainerParents< ParentType > newParents)
 update all parent elements
template<typename ElementType, typename ChildType>
static void insertChild (ElementType element, ChildType child)
 insert child element
template<typename ElementType, typename ChildType>
static void removeChild (ElementType element, ChildType child)
 remove child element
template<typename ElementType, typename ChildType>
static void updateChildren (ElementType element, GNEHierarchicalContainerChildren< ChildType > newChildren)
 update all children elements

Private Member Functions

 GNEHierarchicalElement (const GNEHierarchicalElement &)=delete
 Invalidated copy constructor.

Private Attributes

GNEHierarchicalStructureChildren myHierarchicalStructureChildren
 hierarchical structure with children
GNEHierarchicalStructureParents myHierarchicalStructureParents
 hierarchical structure with parents

Friends

class GNEChange_Children
 declare GNEChange_Children as friend class
class GNEDemandElement

Detailed Description

Definition at line 30 of file GNEHierarchicalElement.h.

Constructor & Destructor Documentation

◆ GNEHierarchicalElement() [1/2]

GNEHierarchicalElement::GNEHierarchicalElement ( )

default Constructor

Definition at line 34 of file GNEHierarchicalElement.cpp.

Referenced by GNEAdditional::GNEAdditionalSquared, and GNEHierarchicalElement().

Here is the caller graph for this function:

◆ ~GNEHierarchicalElement()

GNEHierarchicalElement::~GNEHierarchicalElement ( )

Destructor.

Definition at line 37 of file GNEHierarchicalElement.cpp.

◆ GNEHierarchicalElement() [2/2]

GNEHierarchicalElement::GNEHierarchicalElement ( const GNEHierarchicalElement & )
privatedelete

Invalidated copy constructor.

References GNEHierarchicalElement().

Member Function Documentation

◆ addChildElement()

template<typename ChildType>
void GNEHierarchicalElement::addChildElement ( ChildType * element)
inline

add child without updating parent (ONLY used if we're creating elements without undo-redo)

Definition at line 126 of file GNEHierarchicalElement.h.

References myHierarchicalStructureChildren.

Referenced by GNEEdge::addLane(), GNEAdditionalHandler::buildAccess(), GNEAdditionalHandler::buildBusStop(), GNEAdditionalHandler::buildCalibratorFlow(), GNEAdditionalHandler::buildChargingStation(), GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNERouteHandler::buildContainer(), GNERouteHandler::buildContainerFlow(), GNEAdditionalHandler::buildContainerStop(), GNERouteHandler::buildContainerStop(), GNEAdditionalHandler::buildDestProbReroute(), GNEAdditionalHandler::buildDetectorE1Instant(), GNEAdditionalHandler::buildDetectorEntry(), GNEAdditionalHandler::buildDetectorExit(), GNEAdditionalHandler::buildE1Detector(), GNEAdditionalHandler::buildEdgeCalibrator(), GNEDataHandler::buildEdgeData(), GNEDataHandler::buildEdgeRelationData(), GNERouteHandler::buildFlow(), GNERouteHandler::buildFlowEmbeddedRoute(), GNERouteHandler::buildFlowJunctions(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowTAZs(), GNEAdditionalHandler::buildLaneCalibrator(), GNEAdditionalHandler::buildParkingArea(), GNEAdditionalHandler::buildParkingAreaReroute(), GNEAdditionalHandler::buildParkingSpace(), GNERouteHandler::buildPerson(), GNERouteHandler::buildPersonFlow(), GNERouteHandler::buildPersonStop(), GNERouteHandler::buildPersonTrip(), GNEAdditionalHandler::buildPOILane(), GNEAdditionalHandler::buildRerouter(), GNEAdditionalHandler::buildRerouterInterval(), GNERouteHandler::buildRide(), GNERouteHandler::buildRoute(), GNEAdditionalHandler::buildRouteProbe(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditionalHandler::buildSingleLaneDetectorE2(), GNERouteHandler::buildStop(), GNEDataHandler::buildTAZRelationData(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEAdditionalHandler::buildTrainStop(), GNERouteHandler::buildTranship(), GNERouteHandler::buildTransport(), GNERouteHandler::buildTrip(), GNERouteHandler::buildTripJunctions(), GNERouteHandler::buildTripTAZs(), GNEAdditionalHandler::buildVaporizer(), GNEAdditionalHandler::buildVariableSpeedSign(), GNERouteHandler::buildVehicleEmbeddedRoute(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVType(), GNERouteHandler::buildWalk(), GNEEdge::GNEEdge(), GNENet::initJunctionsAndEdges(), and GNEDistributionRefDialog::onCmdAccept().

◆ clearParents()

void GNEHierarchicalElement::clearParents ( )

clear hierarchical structure parents (used in GNE_Change)

Definition at line 47 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNEChange::GNEChange().

Here is the caller graph for this function:

◆ getChildAdditionals()

const GNEHierarchicalContainerChildren< GNEAdditional * > & GNEHierarchicalElement::getChildAdditionals ( ) const

return child additionals

Definition at line 137 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureChildren.

Referenced by GNEAdditionalHandler::accessExists(), GNEPathManager::PathCalculator::busStopConnected(), GNEMultiEntryExitDetector::checkChildAdditionalRestriction(), GNEAdditionalHandler::checkOverlappingRerouterIntervals(), GNENet::deleteAdditional(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteLane(), GNELane::drawChildren(), GNEEdge::drawChildrens(), GNECalibrator::drawGL(), GNERerouter::drawGL(), GNERerouterInterval::drawGL(), GNEVariableSpeedSign::drawGL(), GNEAdditional::drawParentChildLines(), GNERerouter::getAttribute(), GNETractionSubstation::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEEdge::getRouteProbeRelativePosition(), GNEVariableSpeedSignStep::isValid(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNEElementList::removeElementRecursively(), GNEElementList::removeElementRecursively(), GNENet::replaceIncomingEdge(), GNENetHelper::AttributeCarriers::retrieveRerouterInterval(), GNEAdditional::setAdditionalID(), GNEParkingArea::setAttribute(), GNENetworkElement::setNetworkElementID(), GNEElementTree::showHierarchicalElementChildren(), GNENet::splitEdge(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNEEdge::updateCenteringBoundary(), GNECalibrator::updateGeometry(), GNEEdge::updateGeometry(), GNELane::updateGeometry(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNEContainerStop::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEParkingArea::writeAdditional(), GNERerouter::writeAdditional(), GNERerouterInterval::writeAdditional(), and GNEVariableSpeedSign::writeAdditional().

Here is the caller graph for this function:

◆ getChildDemandElements()

const GNEHierarchicalContainerChildren< GNEDemandElement * > & GNEHierarchicalElement::getChildDemandElements ( ) const

return child demand elements

Definition at line 143 of file GNEHierarchicalElement.cpp.

References GNEDemandElement, and myHierarchicalStructureChildren.

Referenced by GNENet::adjustPersonPlans(), GNEDemandElement::buildMenuCommandRouteLength(), GNEStop::canDrawVehicleStop(), GNERouteHandler::canReverse(), GNEDemandElement::checkDrawMoveContour(), GNEContainer::computePathElement(), GNEPerson::computePathElement(), GNEVehicle::computePathElement(), GNEVehicle::copyVehicle(), GNENet::deleteAdditional(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNEDemandElement::deleteGLObject(), GNENet::deleteJunction(), GNENet::deleteLane(), GNELane::drawChildren(), GNEEdge::drawChildrens(), GNEAdditional::drawDemandElementChildren(), GNEContainer::drawGL(), GNEPerson::drawGL(), GNERouteDistribution::drawGL(), GNEJunction::drawJunctionChildren(), GNEStop::getAttribute(), GNEVTypeDistribution::getAttribute(), GNEStop::getAttributeDouble(), GNEVTypeDistribution::getAttributeDouble(), GNEContainer::getAttributePosition(), GNEPerson::getAttributePosition(), GNEVTypeDistribution::getAttributePosition(), GNEContainer::getCenteringBoundary(), GNEPerson::getCenteringBoundary(), GNERouteDistribution::getCenteringBoundary(), GNERoute::getColor(), GNERouteDistribution::getColor(), GNEVTypeDistribution::getColor(), GNEEdge::getContainersOverEdgeMap(), GNEContainer::getDemandElementProblem(), GNEPerson::getDemandElementProblem(), GNERoute::getDemandElementProblem(), GNEVehicle::getDemandElementProblem(), GNEContainer::getFirstPathLane(), GNEPerson::getFirstPathLane(), GNERouteDistribution::getFirstPathLane(), GNEVehicle::getFirstPathLane(), GNEContainer::getLastPathLane(), GNEPerson::getLastPathLane(), GNERouteDistribution::getLastPathLane(), GNEVehicle::getLastPathLane(), GNEDemandElement::getNextChildDemandElement(), GNEEdge::getPersonsOverEdgeMap(), GNERouteDistribution::getPositionInView(), GNEVTypeDistribution::getPositionInView(), GNEDemandElement::getPreviousChildDemandElement(), GNEStopFrame::getStopParameter(), GNERouteDistribution::getVClass(), GNEVTypeDistribution::getVClass(), GNEEdge::getVehiclesOverEdgeMap(), GNEContainer::isDemandElementValid(), GNEPerson::isDemandElementValid(), GNERoute::isDemandElementValid(), GNEVehicle::isDemandElementValid(), GNEVehicle::isValid(), GNEElementList::removeElementRecursively(), GNEElementList::removeElementRecursively(), GNENet::replaceIncomingEdge(), GNERouteHandler::reverse(), GNEAdditional::setAdditionalID(), GNEEdge::setAttribute(), GNERoute::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEDemandElement::setDemandElementID(), GNENetworkElement::setNetworkElementID(), GNEElementTree::showHierarchicalElementChildren(), GNEViewNetHelper::DemandViewOptions::showNonInspectedDemandElements(), GNENet::splitEdge(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNERouteHandler::transformToContainer(), GNERouteHandler::transformToContainerFlow(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToPerson(), GNERouteHandler::transformToPersonFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToVehicle(), GNEBusStop::updateGeometry(), GNEContainer::updateGeometry(), GNEEdge::updateGeometry(), GNELane::updateGeometry(), GNEPerson::updateGeometry(), GNERoute::updateGeometry(), GNERouteDistribution::updateGeometry(), GNETAZ::updateGeometry(), GNEVehicle::updateGeometry(), GNEVType::updateGeometry(), GNEContainer::writeDemandElement(), GNEPerson::writeDemandElement(), GNERoute::writeDemandElement(), GNERouteDistribution::writeDemandElement(), GNEVehicle::writeDemandElement(), and GNEVTypeDistribution::writeDemandElement().

◆ getChildEdges()

◆ getChildGenericDatas()

◆ getChildJunctions()

const GNEHierarchicalContainerChildren< GNEJunction * > & GNEHierarchicalElement::getChildJunctions ( ) const

get child junctions

Definition at line 119 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureChildren.

Referenced by GNEElementTree::showHierarchicalElementChildren().

Here is the caller graph for this function:

◆ getChildLanes()

const GNEHierarchicalContainerChildren< GNELane * > & GNEHierarchicalElement::getChildLanes ( ) const

get child lanes

Definition at line 131 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureChildren.

Referenced by GNEAdditionalHandler::accessExists(), GNECreateEdgeFrame::addBikelane(), GNENet::addGreenVergeLane(), GNEEdge::addLane(), GNENet::addRestrictedLane(), GNEViewNet::addRestrictedLane(), GNECreateEdgeFrame::addSidewalk(), GNEContour::buildContourEdge(), GNEAdditionalHandler::buildEdgeCalibrator(), GNEPathManager::PathCalculator::busStopConnected(), GNEMoveElement::calculateNewLaneChange(), GNEAdditional::calculatePerpendicularLine(), GNEPathManager::PathCalculator::calculateReachability(), GNEEdge::checkDrawDeleteContour(), GNEEdge::checkDrawMoveContour(), GNEEdge::checkDrawSelectContour(), GNEPathManager::PathCalculator::consecutiveEdgesConnected(), GNEEdge::copyEdgeType(), GNEEdge::copyTemplate(), GNENet::deleteEdge(), GNENetHelper::AttributeCarriers::deleteSingleEdge(), GNECreateEdgeFrame::disablePedestrians(), GNEEdge::drawEdgeName(), GNEEdge::drawEdgeShape(), GNEEdge::drawGL(), GNEEdgeData::drawLanePartialGL(), GNEEdgeRelData::drawLanePartialGL(), GNEEdge::drawLaneStopOffset(), GNEEdge::drawTAZElements(), GNEEdge::getBackDownShapePosition(), GNEEdge::getBackUpShapePosition(), GNEVehicle::getFirstPathLane(), GNEEdge::getFrontDownShapePosition(), GNEEdge::getFrontUpShapePosition(), GNEEdge::getLaneByAllowedVClass(), GNEEdge::getLaneByDisallowedVClass(), GNEEdge::getLaneGlIDs(), GNEVehicle::getLastPathLane(), GNEAdditional::getPopUpMenu(), GNEEdge::getPopUpMenu(), GNEEdge::getPositionInView(), GNEEdge::GNEEdge(), GNETLSEditorFrame::handleMultiChange(), GNEEdge::hasRestrictedLane(), GNEAdditionalFrame::initBaseAdditionalObject(), GNEConnectorFrame::initTargets(), GNEVehicle::isValid(), GNEConnectorFrame::ConnectionOperations::onCmdSelectConflicts(), GNEConnectorFrame::ConnectionOperations::onCmdSelectDeadStarts(), GNENetHelper::AttributeCarriers::registerEdge(), GNEEdge::removeLane(), GNENet::removeRestrictedLane(), GNEJunction::replaceIncomingConnections(), GNENet::replaceIncomingEdge(), GNENet::restrictLane(), GNEEdge::retrieveGNEConnection(), GNENetHelper::AttributeCarriers::retrieveLane(), GNEEdge::setAttribute(), GNEEdge::setAttribute(), GNEEdge::setEdgeID(), GNEEdge::setNumLanes(), GNEElementTree::showHierarchicalElementChildren(), GNENet::splitEdge(), GNENet::splitEdgesBidi(), GNENet::splitJunction(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNEEdge::updateCenteringBoundary(), GNENetHelper::AttributeCarriers::updateEdgeID(), GNECalibrator::updateGeometry(), GNEEdge::updateGeometry(), GNERerouterSymbol::updateGeometry(), GNEStopPlan::updateGeometry(), and GNEEdge::~GNEEdge().

◆ getChildren()

const GNEHierarchicalStructureChildren & GNEHierarchicalElement::getChildren ( ) const

get child container

Definition at line 113 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureChildren.

◆ getChildTAZSourceSinks()

const GNEHierarchicalContainerChildrenSet< GNETAZSourceSink * > & GNEHierarchicalElement::getChildTAZSourceSinks ( ) const

◆ getNewListOfParents()

std::string GNEHierarchicalElement::getNewListOfParents ( const GNENetworkElement * currentElement,
const GNENetworkElement * 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 161 of file GNEHierarchicalElement.cpp.

References GNEAttributeCarrier::getID(), getParentEdges(), getParentLanes(), GNETagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), SUMO_TAG_EDGE, SUMO_TAG_LANE, and toString().

Referenced by GNEDetector::splitEdgeGeometry(), GNEOverheadWire::splitEdgeGeometry(), GNERoute::splitEdgeGeometry(), GNETranship::splitEdgeGeometry(), and GNEWalk::splitEdgeGeometry().

Here is the caller graph for this function:

◆ getParentAdditionals()

const GNEHierarchicalContainerParents< GNEAdditional * > & GNEHierarchicalElement::getParentAdditionals ( ) const

get parent additionals

Definition at line 71 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNEAdditionalHandler::buildDestProbReroute(), GNEAdditionalHandler::buildParkingAreaReroute(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditional::checkDrawDeleteContourSmall(), GNEVehicle::computePathElement(), GNEVehicle::copyVehicle(), GNEAccess::drawGL(), GNERerouterSymbol::drawGL(), GNEStop::drawGL(), GNEStopPlan::drawGL(), GNEVariableSpeedSignSymbol::drawGL(), GNEAdditional::drawParentChildLines(), GNERerouterSymbol::drawRerouterSymbol(), GNETAZRelData::drawTAZRel(), GNEVariableSpeedSignSymbol::drawVSSSymbol(), GNEAccess::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEClosingLaneReroute::getAttribute(), GNEClosingReroute::getAttribute(), GNEDestProbReroute::getAttribute(), GNEEntryExitDetector::getAttribute(), GNEOverheadWire::getAttribute(), GNEParkingAreaReroute::getAttribute(), GNEParkingSpace::getAttribute(), GNERerouterInterval::getAttribute(), GNERouteProbReroute::getAttribute(), GNEStop::getAttribute(), GNETAZRelData::getAttribute(), GNETAZSourceSink::getAttribute(), GNEVariableSpeedSignStep::getAttribute(), GNEVehicle::getAttribute(), GNEParkingSpace::getAttributeDouble(), GNEContainer::getAttributePosition(), GNEPerson::getAttributePosition(), GNEStop::getAttributePosition(), GNEAdditional::getCenteringBoundary(), GNEStop::getCenteringBoundary(), GNEDemandElement::getEdgeStopIndex(), GNEStop::getFirstPathLane(), GNEParkingAreaReroute::getHierarchyName(), GNEStop::getHierarchyName(), GNETAZRelData::getHierarchyName(), GNEAccess::getParentName(), GNECalibratorFlow::getParentName(), GNEClosingLaneReroute::getParentName(), GNEClosingReroute::getParentName(), GNEDestProbReroute::getParentName(), GNEParkingAreaReroute::getParentName(), GNEParkingSpace::getParentName(), GNERerouterInterval::getParentName(), GNERerouterSymbol::getParentName(), GNERouteProbReroute::getParentName(), GNEStop::getParentName(), GNEVariableSpeedSignStep::getParentName(), GNEVariableSpeedSignSymbol::getParentName(), GNEVehicle::getParentName(), getParentStoppingPlaces(), getParentTAZs(), GNEStop::getPositionInView(), GNETAZRelData::getPositionInView(), GNEClosingLaneReroute::GNEClosingLaneReroute(), GNEClosingReroute::GNEClosingReroute(), GNEDestProbReroute::GNEDestProbReroute(), GNEParkingAreaReroute::GNEParkingAreaReroute(), GNERouteProbReroute::GNERouteProbReroute(), GNEAccess::isValid(), GNEVariableSpeedSignStep::isValid(), GNEVehicle::isValid(), GNEAdditional::replaceAdditionalParent(), GNENet::replaceIncomingEdge(), GNEDemandElement::replaceLastParentAdditional(), GNEGenericData::replaceParentTAZElement(), GNERerouterIntervalDialog::RouteProbReroutesList::RouteProbReroutesList(), GNECalibratorFlow::setAttribute(), GNEParkingSpace::setAttribute(), GNETAZRelData::setFunctionalColor(), GNEStop::setStopMicrosimID(), GNEElementTree::showAttributeCarrierParents(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNERouteHandler::transformToFlowTAZs(), GNERouteHandler::transformToTripTAZs(), GNELane::updateGeometry(), GNEStop::updateGeometry(), GNEStopPlan::updateGeometry(), GNETAZRelData::updateGeometry(), GNEVehicle::updateGeometry(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEStop::writeDemandElement(), and GNETAZRelData::writeGenericData().

◆ getParentDemandElements()

const GNEHierarchicalContainerParents< GNEDemandElement * > & GNEHierarchicalElement::getParentDemandElements ( ) const

get parent demand elements

Definition at line 101 of file GNEHierarchicalElement.cpp.

References GNEDemandElement, and myHierarchicalStructureParents.

Referenced by GNEDemandElement::buildMenuCommandRouteLength(), GNEStop::canDrawVehicleStop(), GNERouteHandler::canReverse(), GNEDemandElement::checkDrawDeleteContourSmall(), GNEVehicle::checkDrawRelatedContour(), GNERoute::computePathElement(), GNEVehicle::copyVehicle(), GNEDemandElement::deleteGLObject(), GNEStopPlan::drawGL(), GNEStop::drawIndex(), GNERoute::drawLanePartialGL(), GNECalibratorFlow::getAttribute(), GNERouteProbReroute::getAttribute(), GNERouteRef::getAttribute(), GNEStop::getAttribute(), GNEVehicle::getAttribute(), GNEVTypeRef::getAttribute(), GNECalibratorFlow::getAttributeDouble(), GNERouteRef::getAttributeDouble(), GNEStop::getAttributeDouble(), GNEVTypeRef::getAttributeDouble(), GNERouteRef::getCenteringBoundary(), GNEVTypeRef::getCenteringBoundary(), GNERoute::getColor(), GNEStop::getColor(), GNEDemandElement::getEdgeStopIndex(), GNERoute::getFirstPathLane(), GNERouteRef::getFirstPathLane(), GNEVTypeRef::getFirstPathLane(), GNERouteProbReroute::getHierarchyName(), GNERouteRef::getHierarchyName(), GNEVTypeRef::getHierarchyName(), GNERoute::getLastPathLane(), GNERouteRef::getLastPathLane(), GNEVTypeRef::getLastPathLane(), GNEContainer::getParentName(), GNEPerson::getParentName(), GNEPersonTrip::getParentName(), GNERide::getParentName(), GNERouteRef::getParentName(), GNEStop::getParentName(), GNEStopPlan::getParentName(), GNETranship::getParentName(), GNETransport::getParentName(), GNEVTypeRef::getParentName(), GNEWalk::getParentName(), GNERouteRef::getPositionInView(), GNEVTypeRef::getPositionInView(), GNEDemandElement::getRouteParent(), GNEDemandElement::getTypeParent(), GNEContainer::getVClass(), GNEPerson::getVClass(), GNERoute::getVClass(), GNERouteRef::getVClass(), GNEStop::getVClass(), GNEVehicle::getVClass(), GNEVTypeRef::getVClass(), GNEVehicle::isValid(), GNEViewNet::onCmdToggleLockContainer(), GNEViewNet::onCmdToggleLockPerson(), GNERouteHandler::reverse(), GNERoute::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEElementTree::showAttributeCarrierParents(), GNEViewNetHelper::DemandViewOptions::showNonInspectedDemandElements(), GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToVehicle(), GNELane::updateGeometry(), GNEVehicle::updateGeometry(), GNECalibratorFlow::writeAdditional(), and GNEVehicle::writeDemandElement().

◆ getParentEdges()

const GNEHierarchicalContainerParents< GNEEdge * > & GNEHierarchicalElement::getParentEdges ( ) const

get parent edges

Definition at line 59 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNELane::allowPedestrians(), GNELane::buildEdgeOperations(), GNERouteHandler::buildFlowOverRoute(), GNELane::buildLaneOperations(), GNEDemandElement::buildMenuCommandRouteLength(), GNELane::buildTemplateOperations(), GNERouteHandler::buildVehicleOverRoute(), GNEVehicleFrame::buildVehicleOverRoute(), GNELane::calculateLaneContour(), GNEAdditional::calculatePerpendicularLine(), GNERouteHandler::canReverse(), GNEConnection::changeTLIndex(), GNEEdgeRelData::computePathElement(), GNERoute::computePathElement(), GNEVehicle::copyVehicle(), GNELane::drawArrows(), GNELane::drawAsWaterway(), GNECalibrator::drawCalibratorSymbol(), GNELane::drawGL(), GNERerouterSymbol::drawGL(), GNERouteProbe::drawGL(), GNEStopPlan::drawGL(), GNEVaporizer::drawGL(), GNELane::drawLane2LaneConnections(), GNEEdgeData::drawLanePartialGL(), GNEEdgeRelData::drawLanePartialGL(), GNELane::drawLaneStopOffset(), GNELane::drawLinkNo(), GNELane::drawMarkingsAndBoundings(), GNELane::drawStartEndGeometryPoints(), GNELane::drawTLSLinkNo(), GNEConnection::existNBEdgeConnection(), GNECalibrator::getAttribute(), GNEConnection::getAttribute(), GNEEdgeData::getAttribute(), GNEEdgeRelData::getAttribute(), GNELane::getAttribute(), GNERerouterSymbol::getAttribute(), GNERoute::getAttribute(), GNERouteProbe::getAttribute(), GNETAZSourceSink::getAttribute(), GNEVehicle::getAttribute(), GNERoute::getAttributeDouble(), GNERoute::getAttributePosition(), GNELane::getAttributePositionVector(), GNEEdgeData::getCenteringBoundary(), GNEEdgeRelData::getCenteringBoundary(), GNERoute::getCenteringBoundary(), GNEDemandElement::getColorByScheme(), GNELane::getColorValue(), GNERoute::getDemandElementProblem(), GNEVehicle::getDemandElementProblem(), GNEConnection::getEdgeFrom(), GNEConnection::getEdgeTo(), GNERoute::getFirstPathLane(), GNEVehicle::getFirstPathLane(), GNELane::getGNEIncomingConnections(), GNELane::getGNEOutcomingConnections(), GNEContainer::getHierarchyName(), GNEEdgeData::getHierarchyName(), GNEEdgeRelData::getHierarchyName(), GNERerouterSymbol::getHierarchyName(), GNEVehicle::getHierarchyName(), GNELane::getLaneParametricLength(), GNELane::getLaneShape(), GNERoute::getLastPathLane(), GNEVehicle::getLastPathLane(), GNELane::getLengthGeometryFactor(), GNEMoveElementPlanParent::getMoveOperation(), GNEConnection::getNBConnection(), GNEConnection::getNBEdgeConnection(), getNewListOfParents(), GNELane::getParameters(), GNELane::getParameters(), GNELane::getParentEdge(), GNECalibrator::getParentName(), GNELane::getParentName(), GNERoute::getParentName(), GNERouteProbe::getParentName(), GNEVaporizer::getParentName(), GNEVehicle::getParentName(), GNERerouterSymbol::getPopUpID(), GNELane::getPopUpMenu(), GNEEdgeData::getPositionInView(), GNEEdgeRelData::getPositionInView(), GNELane::getSpeed(), GNEStopFrame::getStopParameter(), GNERoute::GNERoute(), GNERoute::GNERoute(), GNERoute::GNERoute(), GNELane::isAttributeComputed(), GNEConnection::isAttributeEnabled(), GNELane::isAttributeEnabled(), GNERoute::isDemandElementValid(), GNEVehicle::isDemandElementValid(), GNELane::isRestricted(), GNECalibrator::isValid(), GNEConnection::isValid(), GNEEdgeRelData::isValid(), GNELane::isValid(), GNEVehicle::isValid(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEDemandElement::replaceLastParentEdge(), GNEGenericData::replaceLastParentEdge(), GNERouteHandler::reverse(), GNEConnection::setAttribute(), GNELane::setAttribute(), GNEVehicle::setAttribute(), GNELane::setIndex(), GNELane::setLaneColor(), GNEElementTree::showAttributeCarrierParents(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToVehicle(), GNECalibrator::updateGeometry(), GNEEdgeData::updateGeometry(), GNERerouterSymbol::updateGeometry(), GNEStopPlan::updateGeometry(), GNEConnection::updateLinkState(), GNECalibrator::writeAdditional(), GNERouteProbe::writeAdditional(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), and GNETAZSourceSink::writeTAZSourceSink().

◆ getParentGenericDatas()

const GNEHierarchicalContainerParents< GNEGenericData * > & GNEHierarchicalElement::getParentGenericDatas ( ) const

get parent demand elements

Definition at line 107 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNEDeleteFrame::SubordinatedElements::SubordinatedElements(), and GNELane::updateGeometry().

Here is the caller graph for this function:

◆ getParentJunctions()

const GNEHierarchicalContainerParents< GNEJunction * > & GNEHierarchicalElement::getParentJunctions ( ) const

get parent junctions

Definition at line 53 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNECrossing::calculateCrossingContour(), GNEEdge::calculateEdgeContour(), GNERouteHandler::canReverse(), GNEVehicle::computePathElement(), GNEVehicle::copyVehicle(), GNENet::deleteCrossing(), GNEEdge::drawEndGeometryPoint(), GNEVehicle::drawGL(), GNEWalkingArea::drawGL(), GNEDemandElement::drawJunctionLine(), GNEVehicle::drawJunctionPartialGL(), GNEVehicle::drawLanePartialGL(), GNEEdge::drawStartGeometryPoint(), GNECrossing::drawTLSLinkNo(), GNEEdge::getAttribute(), GNEVehicle::getAttribute(), GNEContainer::getAttributePosition(), GNEPerson::getAttributePosition(), GNEVehicle::getAttributePosition(), GNEVehicle::getDemandElementProblem(), GNEEdge::getFromJunction(), GNECrossing::getNBCrossing(), GNEWalkingArea::getNBWalkingArea(), GNEVehicle::getParentName(), GNEWalkingArea::getPositionInView(), GNEEdge::getReverseEdge(), GNEEdge::getToJunction(), GNEVehicle::isDemandElementValid(), GNECrossing::isValid(), GNEVehicle::isValid(), GNEViewNet::onCmdEditCrossingShape(), GNEViewNet::onCmdEditWalkingAreaShape(), GNEDemandElement::replaceLastParentJunction(), GNECrossing::setAttribute(), GNEElementTree::showAttributeCarrierParents(), GNERouteHandler::transformToFlowJunctions(), GNERouteHandler::transformToTripJunctions(), GNEVehicle::updateGeometry(), and GNEVehicle::writeDemandElement().

Here is the caller graph for this function:

◆ getParentLanes()

const GNEHierarchicalContainerParents< GNELane * > & GNEHierarchicalElement::getParentLanes ( ) const

get parent lanes

Definition at line 65 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

Referenced by GNEPathManager::PathCalculator::busStopConnected(), GNEConnection::calculateConnectionContour(), GNEPOI::calculatePOIContour(), GNEStoppingPlace::calculateStoppingPlaceContour(), GNEDetector::checkDrawMoveContour(), GNEInductionLoopDetector::checkDrawRelatedContour(), GNELaneAreaDetector::computePathElement(), GNEOverheadWire::computePathElement(), GNEVehicle::computePathElement(), GNECalibrator::drawCalibratorSymbol(), GNELaneAreaDetector::drawE2(), GNEAccess::drawGL(), GNEConnection::drawGL(), GNEEntryExitDetector::drawGL(), GNEInductionLoopDetector::drawGL(), GNEInstantInductionLoopDetector::drawGL(), GNELaneAreaDetector::drawGL(), GNEStop::drawGL(), GNEStopPlan::drawGL(), GNEVariableSpeedSignSymbol::drawGL(), GNECalibrator::getAttribute(), GNEConnection::getAttribute(), GNEOverheadWire::getAttribute(), GNEVariableSpeedSignSymbol::getAttribute(), GNEOverheadWire::getAttributeDouble(), GNEParkingArea::getAttributeDouble(), GNEStop::getDemandElementProblem(), GNEAccess::getEdge(), GNEDemandElement::getEdgeStopIndex(), GNEStop::getEndGeometryPositionOverLane(), GNEAdditional::getFirstPathLane(), GNEStop::getFirstPathLane(), GNEVehicle::getFirstPathLane(), GNEConnection::getFromLaneIndex(), GNEAccess::getHierarchyName(), GNEStop::getHierarchyName(), GNEVariableSpeedSignSymbol::getHierarchyName(), GNEConnection::getLaneFrom(), GNEConnection::getLaneTo(), GNEAdditional::getLastPathLane(), GNEVehicle::getLastPathLane(), getNewListOfParents(), GNECalibrator::getParentName(), GNEDetector::getParentName(), GNEPOI::getParentName(), GNEStop::getParentName(), GNEStoppingPlace::getParentName(), GNEVariableSpeedSignSymbol::getPopUpID(), GNEStop::getPositionInView(), GNEStop::getStartGeometryPositionOverLane(), GNEStopFrame::getStopParameter(), GNEConnection::getToLaneIndex(), GNEAccess::isAccessPositionFixed(), GNEStop::isDemandElementValid(), GNECalibrator::isValid(), GNEParkingArea::isValid(), GNEPlanCreator::recalculatePath(), GNEConnection::setAttribute(), GNELaneAreaDetector::setAttribute(), GNEOverheadWire::setAttribute(), GNEParkingArea::setAttribute(), GNEStop::setStopMicrosimID(), GNEStoppingPlace::setStoppingPlaceGeometry(), GNEAdditional::shiftLaneIndex(), GNEElementTree::showAttributeCarrierParents(), GNEStoppingPlace::splitEdgeGeometry(), GNEConnection::updateConnectionID(), GNEAccess::updateGeometry(), GNEBusStop::updateGeometry(), GNECalibrator::updateGeometry(), GNEConnection::updateGeometry(), GNEContainerStop::updateGeometry(), GNEEntryExitDetector::updateGeometry(), GNEInductionLoopDetector::updateGeometry(), GNEInstantInductionLoopDetector::updateGeometry(), GNELaneAreaDetector::updateGeometry(), GNEParkingArea::updateGeometry(), GNEPOI::updateGeometry(), GNEStop::updateGeometry(), GNEVariableSpeedSignSymbol::updateGeometry(), GNECalibrator::writeAdditional(), and GNEStop::writeDemandElement().

◆ getParents()

const GNEHierarchicalStructureParents & GNEHierarchicalElement::getParents ( ) const

get parents container

Definition at line 41 of file GNEHierarchicalElement.cpp.

References myHierarchicalStructureParents.

◆ getParentStoppingPlaces()

const GNEHierarchicalContainerParents< GNEAdditional * > GNEHierarchicalElement::getParentStoppingPlaces ( ) const

get parent stoppingPlaces (used by plans)

Definition at line 77 of file GNEHierarchicalElement.cpp.

References getParentAdditionals().

◆ getParentTAZs()

const GNEHierarchicalContainerParents< GNEAdditional * > GNEHierarchicalElement::getParentTAZs ( ) const

get parent TAZs (used by plans)

Definition at line 89 of file GNEHierarchicalElement.cpp.

References getParentAdditionals().

◆ insertChild()

template<typename ElementType, typename ChildType>
void GNEHierarchicalElement::insertChild ( ElementType element,
ChildType child )
inlinestatic

insert child element

Definition at line 178 of file GNEHierarchicalElement.h.

Referenced by GNEChange::addElementInParentsAndChildren(), and GNEEdge::addLane().

Here is the caller graph for this function:

◆ insertParent()

template<typename ElementType, typename ParentType>
void GNEHierarchicalElement::insertParent ( ElementType * element,
ParentType * parent,
const int index = -1 )
inlinestatic

insert parent element

Definition at line 137 of file GNEHierarchicalElement.h.

◆ removeChild()

template<typename ElementType, typename ChildType>
void GNEHierarchicalElement::removeChild ( ElementType element,
ChildType child )
inlinestatic

remove child element

Definition at line 185 of file GNEHierarchicalElement.h.

Referenced by GNEEdge::addLane(), GNEChange::removeElementFromParentsAndChildren(), and GNEEdge::removeLane().

Here is the caller graph for this function:

◆ removeParent()

template<typename ElementType, typename ParentType>
void GNEHierarchicalElement::removeParent ( ElementType * element,
ParentType * parent )
inlinestatic

remove parent element

Definition at line 144 of file GNEHierarchicalElement.h.

◆ setParent()

template<typename ParentType>
void GNEHierarchicalElement::setParent ( ParentType parent)
inline

edit parent and childrens without maintain integrity (use carefully)

set single parent element (ONLY use in constructors)

Definition at line 112 of file GNEHierarchicalElement.h.

References myHierarchicalStructureParents.

Referenced by GNEAccess::GNEAccess(), GNECalibrator::GNECalibrator(), GNECalibrator::GNECalibrator(), GNECalibrator::GNECalibrator(), GNECalibrator::GNECalibrator(), GNECalibratorFlow::GNECalibratorFlow(), GNECalibratorFlow::GNECalibratorFlow(), GNEClosingLaneReroute::GNEClosingLaneReroute(), GNEClosingReroute::GNEClosingReroute(), GNEContainer::GNEContainer(), GNECrossing::GNECrossing(), GNEDestProbReroute::GNEDestProbReroute(), GNEDetector::GNEDetector(), GNEEdgeData::GNEEdgeData(), GNEEntryExitDetector::GNEEntryExitDetector(), GNEInductionLoopDetector::GNEInductionLoopDetector(), GNEInstantInductionLoopDetector::GNEInstantInductionLoopDetector(), GNELane::GNELane(), GNELaneAreaDetector::GNELaneAreaDetector(), GNEOverheadWire::GNEOverheadWire(), GNEParkingSpace::GNEParkingSpace(), GNEPerson::GNEPerson(), GNEPOI::GNEPOI(), GNERerouterInterval::GNERerouterInterval(), GNERerouterSymbol::GNERerouterSymbol(), GNERoute::GNERoute(), GNERoute::GNERoute(), GNERouteProbe::GNERouteProbe(), GNERouteProbReroute::GNERouteProbReroute(), GNEStop::GNEStop(), GNEStop::GNEStop(), GNEStoppingPlace::GNEStoppingPlace(), GNETAZRelData::GNETAZRelData(), GNETAZSourceSink::GNETAZSourceSink(), GNEVaporizer::GNEVaporizer(), GNEVariableSpeedSignStep::GNEVariableSpeedSignStep(), GNEVariableSpeedSignSymbol::GNEVariableSpeedSignSymbol(), GNEVehicle::GNEVehicle(), GNEVehicle::GNEVehicle(), GNEVehicle::GNEVehicle(), GNEVehicle::GNEVehicle(), GNEVehicle::GNEVehicle(), GNEVehicle::GNEVehicle(), and GNEWalkingArea::GNEWalkingArea().

Here is the caller graph for this function:

◆ setParents()

◆ updateChildren()

template<typename ElementType, typename ChildType>
void GNEHierarchicalElement::updateChildren ( ElementType element,
GNEHierarchicalContainerChildren< ChildType > newChildren )
inlinestatic

update all children elements

Definition at line 192 of file GNEHierarchicalElement.h.

Referenced by GNEAdditional::replaceAdditionalChildEdges(), and GNEAdditional::replaceAdditionalChildLanes().

Here is the caller graph for this function:

◆ updateParent()

template<typename ElementType, typename ParentType>
void GNEHierarchicalElement::updateParent ( ElementType element,
const int index,
ParentType newParent )
inlinestatic

◆ updateParents()

template<typename ElementType, typename ParentType>
void GNEHierarchicalElement::updateParents ( ElementType element,
GNEHierarchicalContainerParents< ParentType > newParents )
inlinestatic

update all parent elements

Definition at line 163 of file GNEHierarchicalElement.h.

Referenced by GNEAdditional::replaceAdditionalParent(), GNEAdditional::replaceAdditionalParentEdges(), GNEAdditional::replaceAdditionalParentLanes(), GNEDemandElement::replaceParentEdges(), GNEGenericData::replaceParentTAZElement(), and GNEAdditional::shiftLaneIndex().

Here is the caller graph for this function:

◆ GNEChange_Children

friend class GNEChange_Children
friend

declare GNEChange_Children as friend class

Definition at line 34 of file GNEHierarchicalElement.h.

References GNEChange_Children.

Referenced by GNEChange_Children.

◆ GNEDemandElement

Field Documentation

◆ myHierarchicalStructureChildren

GNEHierarchicalStructureChildren GNEHierarchicalElement::myHierarchicalStructureChildren
private

◆ myHierarchicalStructureParents

GNEHierarchicalStructureParents GNEHierarchicalElement::myHierarchicalStructureParents
private

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