![]() |
SUMO - Simulation of Urban MObility
|
A lane area vehicles can halt at. More...
#include <MSStoppingPlace.h>
Public Member Functions | |
virtual bool | addAccess (MSLane *lane, const double pos, const double length) |
adds an access point to this stop More... | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. More... | |
void | addTransportable (MSTransportable *p) |
adds a transportable to this stop More... | |
void | enter (SUMOVehicle *what, double beg, double end) |
Called if a vehicle enters this stop. More... | |
bool | fits (double pos, const SUMOVehicle &veh) const |
return whether the given vehicle fits at the given position More... | |
double | getAccessDistance (const MSEdge *edge) const |
the distance from the access on the given edge to the stop, -1 on failure More... | |
double | getAccessPos (const MSEdge *edge) const |
the position on the given edge which is connected to this stop, -1 on failure More... | |
const std::vector< std::tuple< MSLane *, double, double > > & | getAllAccessPos () const |
lanes and positions connected to this stop More... | |
double | getBeginLanePosition () const |
Returns the begin position of this stop. More... | |
double | getEndLanePosition () const |
Returns the end position of this stop. More... | |
const std::string & | getID () const |
Returns the id. More... | |
const MSLane & | getLane () const |
Returns the lane this stop is located at. More... | |
double | getLastFreePos (const SUMOVehicle &forVehicle) const |
Returns the last free position on this stop. More... | |
double | getLastFreePos () const |
const std::string & | getMyName () const |
int | getStoppedVehicleNumber () const |
Returns the number of stopped vehicles waiting on this stop. More... | |
double | getStoppingPosition (const SUMOVehicle *veh) const |
For vehicles at the stop this gives the the actual stopping position of the vehicle. For all others the last free stopping position. More... | |
int | getTransportableNumber () const |
Returns the number of transportables waiting on this stop. More... | |
double | getWaitingPositionOnLane () const |
Returns the lane position corresponding to getWaitPosition() More... | |
Position | getWaitPosition () const |
Returns the next free waiting place for pedestrians / containers. More... | |
void | leaveFrom (SUMOVehicle *what) |
Called if a vehicle leaves this stop. More... | |
MSStoppingPlace (const std::string &id, const std::vector< std::string > &lines, MSLane &lane, double begPos, double endPos, const std::string name="") | |
Constructor. More... | |
void | removeTransportable (MSTransportable *p) |
Removes a transportable from this stop. More... | |
void | setID (const std::string &newID) |
resets the id More... | |
virtual | ~MSStoppingPlace () |
Destructor. More... | |
Static Public Member Functions | |
template<class T > | |
static std::string | getIDSecure (const T *obj, const std::string &fallBack="NULL") |
get an identifier for Named-like object which may be Null More... | |
Protected Member Functions | |
void | computeLastFreePos () |
Computes the last free position on this stop. More... | |
Protected Attributes | |
std::vector< std::tuple< MSLane *, double, double > > | myAccessPos |
lanes and positions connected to this stop More... | |
const double | myBegPos |
The begin position this bus stop is located at. More... | |
const double | myEndPos |
The end position this bus stop is located at. More... | |
std::map< const SUMOVehicle *, std::pair< double, double > > | myEndPositions |
A map from objects (vehicles) to the areas they acquire after entering the stop. More... | |
std::string | myID |
The name of the object. More... | |
const MSLane & | myLane |
The lane this bus stop is located at. More... | |
double | myLastFreePos |
The last free position at this stop (variable) More... | |
std::vector< std::string > | myLines |
The list of lines that are assigned to this stop. More... | |
const std::string | myName |
The name of the stopping place. More... | |
double | myWaitingPos |
The next free position for persons / containers. More... | |
std::vector< MSTransportable * > | myWaitingTransportables |
Persons waiting at this stop. More... | |
Private Member Functions | |
MSStoppingPlace (const MSStoppingPlace &) | |
Invalidated copy constructor. More... | |
MSStoppingPlace & | operator= (const MSStoppingPlace &) |
Invalidated assignment operator. More... | |
A lane area vehicles can halt at.
The stop tracks the last free space a vehicle may halt at by being informed about a vehicle's entering and depart. It keeps the information about entered vehicles' begin and end position within an internal container ("myEndPositions") and is so able to compute the last free space.
Please note that using the last free space disallows vehicles to enter a free space in between other vehicles.
Definition at line 59 of file MSStoppingPlace.h.
MSStoppingPlace::MSStoppingPlace | ( | const std::string & | id, |
const std::vector< std::string > & | lines, | ||
MSLane & | lane, | ||
double | begPos, | ||
double | endPos, | ||
const std::string | name = "" |
||
) |
Constructor.
[in] | id | The id of the stop |
[in] | net | The net the stop belongs to |
[in] | lines | Names of the lines that halt on this stop |
[in] | lane | The lane the stop is placed on |
[in] | begPos | Begin position of the stop on the lane |
[in] | endPos | End position of the stop on the lane |
Definition at line 39 of file MSStoppingPlace.cpp.
References computeLastFreePos().
|
virtual |
Destructor.
Definition at line 49 of file MSStoppingPlace.cpp.
|
private |
Invalidated copy constructor.
|
virtual |
adds an access point to this stop
Reimplemented in GUIBusStop.
Definition at line 218 of file MSStoppingPlace.cpp.
References myAccessPos.
Referenced by GUIBusStop::addAccess(), NLTriggerBuilder::addAccess(), and getLastFreePos().
|
inlineinherited |
Adds this object to the given container.
Definition at line 123 of file Named.h.
References Named::StoringVisitor::add().
void MSStoppingPlace::addTransportable | ( | MSTransportable * | p | ) |
adds a transportable to this stop
Definition at line 134 of file MSStoppingPlace.cpp.
References MSVehicleType::getLength(), MSTransportable::getVehicleType(), MAX2(), myBegPos, myWaitingPos, and myWaitingTransportables.
Referenced by getLastFreePos(), MSPerson::MSPersonStage_Walking::moveToNextEdge(), and MSContainer::MSContainerStage_Tranship::moveToNextEdge().
|
protected |
Computes the last free position on this stop.
The last free position is the one, the last vehicle ends at. It is stored in myLastFreePos. If no vehicle halts, the last free position gets the value of myEndPos.
Definition at line 165 of file MSStoppingPlace.cpp.
References myEndPos, myEndPositions, and myLastFreePos.
Referenced by enter(), getAllAccessPos(), leaveFrom(), and MSStoppingPlace().
void MSStoppingPlace::enter | ( | SUMOVehicle * | what, |
double | beg, | ||
double | end | ||
) |
Called if a vehicle enters this stop.
Stores the position of the entering vehicle in myEndPositions.
Recomputes the free space using "computeLastFreePos" then.
[in] | what | The vehicle that enters the bus stop |
[in] | beg | The begin halting position of the vehicle |
[in] | what | The end halting position of the vehicle |
Definition at line 71 of file MSStoppingPlace.cpp.
References computeLastFreePos(), and myEndPositions.
Referenced by MSVehicle::processNextStop().
bool MSStoppingPlace::fits | ( | double | pos, |
const SUMOVehicle & | veh | ||
) | const |
return whether the given vehicle fits at the given position
Definition at line 111 of file MSStoppingPlace.cpp.
References MSVehicleType::getLength(), SUMOVehicle::getVehicleType(), myBegPos, myEndPos, and POSITION_EPS.
Referenced by getLastFreePos(), and MSVehicle::processNextStop().
double MSStoppingPlace::getAccessDistance | ( | const MSEdge * | edge | ) | const |
the distance from the access on the given edge to the stop, -1 on failure
Definition at line 191 of file MSStoppingPlace.cpp.
References Position::distanceTo(), MSLane::geometryPositionAtOffset(), MSLane::getEdge(), myAccessPos, myBegPos, myEndPos, and myLane.
Referenced by getAllAccessPos(), and MSPerson::proceed().
double MSStoppingPlace::getAccessPos | ( | const MSEdge * | edge | ) | const |
the position on the given edge which is connected to this stop, -1 on failure
Definition at line 177 of file MSStoppingPlace.cpp.
References MSLane::getEdge(), myAccessPos, myBegPos, myEndPos, and myLane.
Referenced by getAllAccessPos(), MSPerson::MSPersonStage_Access::MSPersonStage_Access(), MSRouteHandler::parseWalkPositions(), MSPerson::proceed(), and MSTransportable::Stage_Trip::setArrived().
|
inline |
lanes and positions connected to this stop
Definition at line 182 of file MSStoppingPlace.h.
References computeLastFreePos(), getAccessDistance(), getAccessPos(), and myAccessPos.
double MSStoppingPlace::getBeginLanePosition | ( | ) | const |
Returns the begin position of this stop.
Definition at line 59 of file MSStoppingPlace.cpp.
References myBegPos.
Referenced by MSRouteHandler::addStop(), MSVehicle::addTraciStopAtStoppingPlace(), MSNet::getStoppingPlaceID(), MSChargingStation::MSChargingStation(), MSPerson::MSPersonStage_Access::MSPersonStage_Access(), MSRouteHandler::parseWalkPositions(), MSVehicle::processNextStop(), MSVehicle::replaceParkingArea(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSTransportable::Stage_Driving::setDestination(), and MSChargingStation::vehicleIsInside().
double MSStoppingPlace::getEndLanePosition | ( | ) | const |
Returns the end position of this stop.
Definition at line 65 of file MSStoppingPlace.cpp.
References myEndPos.
Referenced by MSRouteHandler::addStop(), MSVehicle::addTraciStopAtStoppingPlace(), MSNet::getStoppingPlaceID(), MSChargingStation::MSChargingStation(), MSPerson::MSPersonStage_Access::MSPersonStage_Access(), MSTriggeredRerouter::notifyEnter(), MSRouteHandler::parseWalkPositions(), removeTransportable(), MSVehicle::replaceParkingArea(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSTransportable::Stage_Driving::setDestination(), and MSChargingStation::vehicleIsInside().
|
inlineinherited |
Returns the id.
Definition at line 78 of file Named.h.
Referenced by NIImporter_SUMO::_loadNetwork(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), MSPModel_Remote::add(), LaneStoringVisitor::add(), MSPModel_Striping::add(), MSVehicleTransfer::add(), PCPolyContainer::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NBRailwayTopologyAnalyzer::addBidiEdge(), NBRailwayTopologyAnalyzer::addBidiEdgesForStops(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), NBParkingCont::addEdges2Keep(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSLane::addNeigh(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), ROVehicle::addStop(), MSRouteHandler::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), NBRailwayTopologyAnalyzer::allBroken(), NBEdge::append(), NBEdgeCont::appendRailwayTurnarounds(), libsumo::Helper::applySubscriptionFilters(), NBPTStopCont::assignAndCreatNewPTStopAsNeeded(), NBPTStopCont::assignPTStopToEdgeOfClosestPlatform(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NLDetectorBuilder::buildE2Detector(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSEdge::checkAndRegisterBiDirEdge(), MSLane::checkForPedestrians(), NBEdge::checkGeometry(), NBEdgeCont::checkGrade(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), NBEdgeCont::checkOverlap(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBEdge::computeAngle(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), NBEdge::debugPrintConnections(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBRailwayTopologyAnalyzer::extendBidiEdges(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), NBNodeCont::feasibleCluster(), libsumo::Helper::findCloserLane(), MSDevice_SSM::findFoeConflictLane(), libsumo::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), NBTrafficLightDefinition::forbids(), NBRampsComputer::fulfillsRampConstraints(), NBPTStopCont::generateBidiStops(), NBNodeCont::generateNodeClusters(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), GUILane::getColorValue(), NBEdge::getConnection(), NBEdge::getConnectionRef(), libsumo::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), NBEdge::getCrossingAngle(), NBNodeShapeComputer::getDefaultRadius(), NBTrafficLightDefinition::getDescription(), RODFNet::getDetectorEdge(), libsumo::Lane::getEdgeID(), MSMeanData::getEdgeID(), NBEdge::getFirstNonPedestrianLane(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), libsumo::LaneArea::getLaneID(), libsumo::InductionLoop::getLaneID(), libsumo::Vehicle::getLaneID(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSLane::getLinkTo(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUIE2Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), GUILane::getParameterWindow(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), NBPTStopCont::getReverseStop(), libsumo::Person::getRoadID(), libsumo::Vehicle::getRoadID(), libsumo::Vehicle::getRouteID(), MSContainer::MSContainerStage_Driving::getStageSummary(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSContainer::MSContainerStage_Tranship::getStageSummary(), MSTransportable::Stage_Trip::getStageSummary(), MSPerson::MSPersonStage_Driving::getStageSummary(), MSPerson::MSPersonStage_Access::getStageSummary(), MSTransportable::Stage_Waiting::getStageSummary(), MSNet::getStoppingPlaceID(), MSLane::getSurroundingVehicles(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSTransportable::Stage_Driving::getWaitingDescription(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSVehicle::ignoreRed(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NBEdge::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBTrafficLightLogicCont::insert(), NBNodeCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicle(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MESegment::isOpen(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), MESegment::jamThresholdForSpeed(), NBNodeShapeComputer::joinSameDirectionEdges(), NBEdgeCont::joinSameNodeConnectingEdges(), MSAbstractLaneChangeModel::laneChangeOutput(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), NIImporter_ArcView::load(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSE2Collector::MSE2Collector(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), NIXMLEdgesHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSPModel_Striping::nextBlocking(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_Example::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_Example::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Bluelight::notifyMove(), MSDevice_Example::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSDevice_BTsender::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), MSE2Collector::notifyMove(), MSDevice_SSM::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GNETLSEditorFrame::TLSFile::onCmdLoadTLSProgram(), GNETLSEditorFrame::TLSFile::onCmdSaveTLSProgram(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), MSLink::opened(), RORouteHandler::openRoute(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NBRequest::oppositeLeftTurnConflict(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NLTriggerBuilder::parseAndBuildCalibrator(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), AGStreet::print(), MSDevice_SSM::processEncounters(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkAproaches(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NBEdgeCont::processSplits(), MEVehicle::processStop(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), MSPModel_Striping::PState::PState(), MSOffTrafficLightLogic::rebuildPhase(), NBEdgeCont::recheckLanes(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::remapIDs(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), MSLink::removeApproaching(), GNEJunction::removeConnectionsFrom(), NBNodeCont::removeIsolatedRoads(), MSVehicle::removePassedDriveItems(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), GNEJunction::removeTLSConnections(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), GNEJunction::replaceIncomingConnections(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIImporter_DlrNavteq::ConnectedLanesHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveGNEConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), NBPTLineCont::reviseStops(), MSPerson::MSPersonStage_Walking::routeOutput(), MSPerson::MSPersonStage_Driving::routeOutput(), RONet::saveAndRemoveRoutesUntil(), MSPersonDevice_Routing::saveState(), MSDevice_Routing::saveState(), MSDevice_Vehroutes::saveState(), MSDevice::saveState(), MSDevice_Tripinfo::saveState(), MSBaseVehicle::saveState(), MSLane::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSLink::setApproaching(), MSTransportable::Stage_Trip::setArrived(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), NBRequest::setBlocking(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NBEdge::setControllingTLInformation(), NLEdgeControlBuilder::setDefaultStopOffsets(), MSChargingStation::setEfficency(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), NBEdge::setStopOffsets(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBNode::sortEdges(), MSLane::sortManeuverReservations(), NBEdgeCont::splitAt(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSStopOut::stopStarted(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), NGNet::toNB(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffsets(), MSVehicle::updateDriveItems(), GNETLSEditorFrame::TLSJunction::updateJunctionDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), NBNodeTypeComputer::validateRailCrossings(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), NBParking::write(), MSEmissionExport::write(), MSBatteryExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_OpenDrive::writeNormalEdge(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), PointOfInterest::writeXML(), SUMOPolygon::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 71 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSVehicle::checkRewindLinkLanes(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLatOffset(), MSLane::getLeaderOnConsecutive(), GUIVehicle::getParameterWindow(), MSLaneChanger::getRealLeader(), NBEdge::init(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), operator<<(), NBEdge::recheckLanes(), MSTriggeredRerouter::rerouteParkingArea(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), toString(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().
const MSLane & MSStoppingPlace::getLane | ( | ) | const |
Returns the lane this stop is located at.
Definition at line 53 of file MSStoppingPlace.cpp.
References myLane.
Referenced by MSRouteHandler::addPersonTrip(), MSRouteHandler::addStop(), MSVehicle::addTraciStopAtStoppingPlace(), MSNet::getStoppingPlaceID(), MSPerson::MSPersonStage_Access::MSPersonStage_Access(), MSTriggeredRerouter::notifyEnter(), MSRouteHandler::parseWalkPositions(), MSContainer::MSContainerStage_Driving::proceed(), MSPerson::MSPersonStage_Driving::proceed(), MSPerson::MSPersonStage_Access::proceed(), MSVehicle::replaceParkingArea(), MSTriggeredRerouter::rerouteParkingArea(), MSTransportable::rerouteParkingArea(), and MSVehicle::rerouteParkingArea().
double MSStoppingPlace::getLastFreePos | ( | const SUMOVehicle & | forVehicle | ) | const |
Returns the last free position on this stop.
Definition at line 78 of file MSStoppingPlace.cpp.
References fits(), MSVehicleType::getLength(), MSVehicleType::getMinGap(), SUMOVehicle::getVehicleType(), myEndPos, myEndPositions, myLastFreePos, NUMERICAL_EPS, and TIME2STEPS.
|
inline |
Definition at line 168 of file MSStoppingPlace.h.
References addAccess(), addTransportable(), myLastFreePos, and removeTransportable().
Referenced by MSParkingArea::getLastFreePosWithReservation(), GUIContainerStop::getParameterWindow(), GUIChargingStation::getParameterWindow(), GUIBusStop::getParameterWindow(), getStoppingPosition(), and MSParkingArea::parkOnRoad().
const std::string & MSStoppingPlace::getMyName | ( | ) | const |
Definition at line 212 of file MSStoppingPlace.cpp.
References myName.
Referenced by GUIChargingStation::drawGL(), GUIBusStop::drawGL(), GUIParkingArea::drawGL(), libsumo::Simulation::getParameter(), GUIContainerStop::getParameterWindow(), GUIChargingStation::getParameterWindow(), GUIBusStop::getParameterWindow(), GUIParkingArea::getParameterWindow(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSPerson::MSPersonStage_Driving::getStageSummary(), MSPerson::MSPersonStage_Walking::routeOutput(), and MSPerson::MSPersonStage_Driving::routeOutput().
|
inline |
Returns the number of stopped vehicles waiting on this stop.
Definition at line 164 of file MSStoppingPlace.h.
References myEndPositions.
Referenced by GUIContainerStop::getParameterWindow(), GUIChargingStation::getParameterWindow(), and GUIBusStop::getParameterWindow().
double MSStoppingPlace::getStoppingPosition | ( | const SUMOVehicle * | veh | ) | const |
For vehicles at the stop this gives the the actual stopping position of the vehicle. For all others the last free stopping position.
Definition at line 124 of file MSStoppingPlace.cpp.
References getLastFreePos(), and myEndPositions.
Referenced by getWaitingPositionOnLane().
|
inline |
Returns the number of transportables waiting on this stop.
Definition at line 158 of file MSStoppingPlace.h.
References myWaitingTransportables.
Referenced by libsumo::Simulation::getBusStopWaiting(), GUIContainerStop::getParameterWindow(), and GUIBusStop::getParameterWindow().
|
inline |
Returns the lane position corresponding to getWaitPosition()
Definition at line 145 of file MSStoppingPlace.h.
References getStoppingPosition(), and myWaitingPos.
Referenced by MSPerson::MSPersonStage_Driving::proceed().
Position MSStoppingPlace::getWaitPosition | ( | ) | const |
Returns the next free waiting place for pedestrians / containers.
Definition at line 118 of file MSStoppingPlace.cpp.
References MSLane::getShape(), MSLane::interpolateLanePosToGeometryPos(), myLane, myWaitingPos, and PositionVector::positionAtOffset().
Referenced by MSPerson::MSPersonStage_Driving::proceed().
void MSStoppingPlace::leaveFrom | ( | SUMOVehicle * | what | ) |
Called if a vehicle leaves this stop.
Removes the position of the vehicle from myEndPositions.
Recomputes the free space using "computeLastFreePos" then.
[in] | what | The vehicle that leaves the bus stop |
Definition at line 157 of file MSStoppingPlace.cpp.
References computeLastFreePos(), and myEndPositions.
|
private |
Invalidated assignment operator.
void MSStoppingPlace::removeTransportable | ( | MSTransportable * | p | ) |
Removes a transportable from this stop.
Definition at line 142 of file MSStoppingPlace.cpp.
References getEndLanePosition(), MSVehicleType::getLength(), MSTransportable::getVehicleType(), myWaitingPos, and myWaitingTransportables.
Referenced by getLastFreePos(), and MSVehicle::processNextStop().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 86 of file Named.h.
Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::remapIDs(), NBNodeCont::rename(), NBEdgeCont::rename(), GNEJunction::setAttribute(), and IntermodalNetwork< E, L, N, V >::splitEdge().
|
protected |
lanes and positions connected to this stop
Definition at line 234 of file MSStoppingPlace.h.
Referenced by addAccess(), getAccessDistance(), getAccessPos(), and getAllAccessPos().
|
protected |
The begin position this bus stop is located at.
Definition at line 213 of file MSStoppingPlace.h.
Referenced by addTransportable(), MSParkingArea::computeLastFreePos(), fits(), getAccessDistance(), getAccessPos(), getBeginLanePosition(), GUIContainerStop::getParameterWindow(), GUIChargingStation::getParameterWindow(), GUIBusStop::getParameterWindow(), GUIParkingArea::getParameterWindow(), and MSParkingArea::MSParkingArea().
|
protected |
The end position this bus stop is located at.
Definition at line 216 of file MSStoppingPlace.h.
Referenced by MSParkingArea::addLotEntry(), computeLastFreePos(), fits(), getAccessDistance(), getAccessPos(), getEndLanePosition(), getLastFreePos(), MSParkingArea::getLastFreePosWithReservation(), GUIContainerStop::getParameterWindow(), GUIChargingStation::getParameterWindow(), GUIBusStop::getParameterWindow(), GUIParkingArea::getParameterWindow(), and MSParkingArea::MSParkingArea().
|
protected |
A map from objects (vehicles) to the areas they acquire after entering the stop.
Definition at line 207 of file MSStoppingPlace.h.
Referenced by computeLastFreePos(), enter(), MSParkingArea::enter(), getLastFreePos(), MSParkingArea::getOccupancy(), getStoppedVehicleNumber(), getStoppingPosition(), leaveFrom(), and MSParkingArea::leaveFrom().
|
protectedinherited |
The name of the object.
Definition at line 130 of file Named.h.
Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), MSE2Collector::detectorUpdate(), METriggeredCalibrator::execute(), MSCalibrator::execute(), GNEPoly::getAttribute(), GNEPOI::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), MSLane::getSurroundingVehicles(), ROEdge::getTravelTime(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSCalibrator::init(), NBEdge::init(), MSLane::isInsertionSuccess(), MSCalibrator::myStartElement(), NBNode::NBNode(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), MSSOTLTrafficLightLogic::setToATargetPhase(), NBEdge::splitGeometry(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
protected |
The lane this bus stop is located at.
Definition at line 210 of file MSStoppingPlace.h.
Referenced by GUIParkingArea::drawGL(), getAccessDistance(), getAccessPos(), getLane(), MSParkingArea::getLastFreePosWithReservation(), getWaitPosition(), and MSParkingArea::MSParkingArea().
|
protected |
The last free position at this stop (variable)
Definition at line 219 of file MSStoppingPlace.h.
Referenced by computeLastFreePos(), MSParkingArea::computeLastFreePos(), getLastFreePos(), and MSParkingArea::getLastFreePos().
|
protected |
The list of lines that are assigned to this stop.
Definition at line 204 of file MSStoppingPlace.h.
Referenced by GUIContainerStop::drawGL(), GUIBusStop::drawGL(), and GUIParkingArea::drawGL().
|
protected |
The name of the stopping place.
Definition at line 225 of file MSStoppingPlace.h.
Referenced by getMyName().
|
protected |
The next free position for persons / containers.
Definition at line 222 of file MSStoppingPlace.h.
Referenced by addTransportable(), getWaitingPositionOnLane(), getWaitPosition(), and removeTransportable().
|
protected |
Persons waiting at this stop.
Definition at line 231 of file MSStoppingPlace.h.
Referenced by addTransportable(), GUIContainerStop::drawGL(), GUIParkingArea::drawGL(), getTransportableNumber(), and removeTransportable().