Eclipse SUMO - Simulation of Urban MObility
MSStop Class Reference

#include <MSStop.h>

Collaboration diagram for MSStop:
[legend]

Public Member Functions

std::string getDescription () const
 get a short description for showing in the gui More...
 
const MSEdgegetEdge () const
 
double getEndPos (const SUMOVehicle &veh) const
 return halting position for upcoming stop; More...
 
SUMOTime getMinDuration (SUMOTime time) const
 return minimum stop duration when starting stop at time More...
 
double getReachedThreshold () const
 return startPos taking into account opposite stopping More...
 
double getSpeed () const
 return speed for passing waypoint / skipping on-demand stop More...
 
int getStateFlagsOld () const
 return flags as used by Vehicle::getStopState More...
 
SUMOTime getUntil () const
 return until / ended time More...
 
void initPars (const SUMOVehicleParameter::Stop &stopPar)
 initialize attributes from the given stop parameters More...
 
bool isInRange (const double pos, const double tolerance) const
 whether the stop is in range of the given position More...
 
 MSStop (const SUMOVehicleParameter::Stop &par)
 
void write (OutputDevice &dev) const
 Write the current stop configuration (used for state saving) More...
 

Data Fields

MSStoppingPlacebusstop = nullptr
 (Optional) bus stop if one is assigned to the stop More...
 
MSStoppingPlacechargingStation = nullptr
 (Optional) charging station if one is assigned to the stop More...
 
MSStoppingPlacecontainerstop = nullptr
 (Optional) container stop if one is assigned to the stop More...
 
bool containerTriggered = false
 whether an arriving container lets the vehicle continue More...
 
SUMOTime duration = -1
 The stopping duration. More...
 
MSRouteIterator edge
 The edge in the route to stop at. More...
 
SUMOTime endBoarding = SUMOTime_MAX
 the maximum time at which persons may board this vehicle More...
 
bool isOpposite = false
 whether this an opposite-direction stop More...
 
bool joinTriggered = false
 whether coupling another vehicle (train) the vehicle continue More...
 
const MSLanelane = nullptr
 The lane to stop at (microsim only) More...
 
int numExpectedContainer = 0
 The number of still expected containers. More...
 
int numExpectedPerson = 0
 The number of still expected persons. More...
 
MSStoppingPlaceoverheadWireSegment = nullptr
 (Optional) overhead wire segment if one is assigned to the stop More...
 
MSParkingAreaparkingarea = nullptr
 (Optional) parkingArea if one is assigned to the stop More...
 
const SUMOVehicleParameter::Stop pars
 The stop parameter. More...
 
bool reached = false
 Information whether the stop has been reached. More...
 
const MESegmentsegment = nullptr
 The segment to stop at (mesosim only) More...
 
bool skipOnDemand = false
 whether the decision to skip this stop has been made More...
 
bool startedFromState = false
 whether the 'started' value was loaded from simulaton state More...
 
SUMOTime timeToBoardNextPerson = 0
 The time at which the vehicle is able to board another person. More...
 
SUMOTime timeToLoadNextContainer = 0
 The time at which the vehicle is able to load another container. More...
 
bool triggered = false
 whether an arriving person lets the vehicle continue More...
 

Detailed Description

Definition at line 44 of file MSStop.h.

Constructor & Destructor Documentation

◆ MSStop()

MSStop::MSStop ( const SUMOVehicleParameter::Stop par)
inline

Definition at line 46 of file MSStop.h.

Member Function Documentation

◆ getDescription()

std::string MSStop::getDescription ( ) const

get a short description for showing in the gui

Definition at line 69 of file MSStop.cpp.

References SUMOVehicleParameter::Stop::actType, busstop, chargingStation, containerstop, SUMOVehicleParameter::Stop::endPos, Named::getID(), lane, overheadWireSegment, parkingarea, pars, and toString().

Referenced by MSBaseVehicle::addStop().

Here is the caller graph for this function:

◆ getEdge()

const MSEdge * MSStop::getEdge ( ) const

Definition at line 54 of file MSStop.cpp.

References MESegment::getEdge(), MSLane::getEdge(), lane, and segment.

Referenced by MSStageDriving::canLeaveVehicle(), getEndPos(), and MSVehicle::processNextStop().

Here is the caller graph for this function:

◆ getEndPos()

double MSStop::getEndPos ( const SUMOVehicle veh) const

◆ getMinDuration()

SUMOTime MSStop::getMinDuration ( SUMOTime  time) const

return minimum stop duration when starting stop at time

Definition at line 134 of file MSStop.cpp.

References duration, SUMOVehicleParameter::Stop::ended, MSGlobals::gUseStopEnded, MAX2(), pars, and SUMOVehicleParameter::Stop::until.

Referenced by MSVehicle::processNextStop().

Here is the caller graph for this function:

◆ getReachedThreshold()

double MSStop::getReachedThreshold ( ) const

return startPos taking into account opposite stopping

Definition at line 64 of file MSStop.cpp.

References SUMOVehicleParameter::Stop::endPos, MSLane::getOppositePos(), isOpposite, lane, pars, and SUMOVehicleParameter::Stop::startPos.

Referenced by MSVehicle::processNextStop().

Here is the caller graph for this function:

◆ getSpeed()

double MSStop::getSpeed ( ) const

return speed for passing waypoint / skipping on-demand stop

Definition at line 157 of file MSStop.cpp.

References pars, skipOnDemand, and SUMOVehicleParameter::Stop::speed.

Referenced by MSVehicle::estimateTimeToNextStop(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MSVehicle::resumeFromStopping(), and MSVehicle::updateBestLanes().

Here is the caller graph for this function:

◆ getStateFlagsOld()

int MSStop::getStateFlagsOld ( ) const

return flags as used by Vehicle::getStopState

Definition at line 128 of file MSStop.cpp.

References SUMOVehicleParameter::Stop::getFlags(), pars, and reached.

Referenced by LIBSUMO_NAMESPACE::Vehicle::getStopState().

Here is the caller graph for this function:

◆ getUntil()

SUMOTime MSStop::getUntil ( ) const

return until / ended time

Definition at line 151 of file MSStop.cpp.

References SUMOVehicleParameter::Stop::ended, MSGlobals::gUseStopEnded, pars, and SUMOVehicleParameter::Stop::until.

Referenced by MSBaseVehicle::addStop(), MSVehicle::planMoveInternal(), and MSVehicle::processNextStop().

Here is the caller graph for this function:

◆ initPars()

◆ isInRange()

bool MSStop::isInRange ( const double  pos,
const double  tolerance 
) const

whether the stop is in range of the given position

Definition at line 163 of file MSStop.cpp.

References SUMOVehicleParameter::Stop::endPos, pars, and SUMOVehicleParameter::Stop::startPos.

Referenced by MSStageDriving::canLeaveVehicle().

Here is the caller graph for this function:

◆ write()

Field Documentation

◆ busstop

MSStoppingPlace* MSStop::busstop = nullptr

(Optional) bus stop if one is assigned to the stop

Definition at line 54 of file MSStop.h.

Referenced by MSBaseVehicle::addStop(), getDescription(), getEndPos(), initPars(), MSVehicle::leaveLane(), MSVehicle::processNextStop(), MSVehicle::resumeFromStopping(), and write().

◆ chargingStation

MSStoppingPlace* MSStop::chargingStation = nullptr

(Optional) charging station if one is assigned to the stop

Definition at line 60 of file MSStop.h.

Referenced by MSBaseVehicle::addStop(), getDescription(), getEndPos(), initPars(), MSVehicle::leaveLane(), MSVehicle::processNextStop(), MSVehicle::resumeFromStopping(), and write().

◆ containerstop

MSStoppingPlace* MSStop::containerstop = nullptr

(Optional) container stop if one is assigned to the stop

Definition at line 56 of file MSStop.h.

Referenced by MSBaseVehicle::addStop(), getDescription(), getEndPos(), initPars(), MSVehicle::leaveLane(), MSVehicle::processNextStop(), MSVehicle::resumeFromStopping(), and write().

◆ containerTriggered

bool MSStop::containerTriggered = false

whether an arriving container lets the vehicle continue

Definition at line 71 of file MSStop.h.

Referenced by MSVehicleControl::abortWaiting(), MSVehicle::boardTransportables(), MSIdling_Stop::idle(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().

◆ duration

◆ edge

◆ endBoarding

SUMOTime MSStop::endBoarding = SUMOTime_MAX

the maximum time at which persons may board this vehicle

Definition at line 85 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), MSVehicle::processNextStop(), and MSDevice_Taxi::updateMove().

◆ isOpposite

bool MSStop::isOpposite = false

◆ joinTriggered

bool MSStop::joinTriggered = false

whether coupling another vehicle (train) the vehicle continue

Definition at line 73 of file MSStop.h.

Referenced by MSVehicleControl::abortWaiting(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().

◆ lane

◆ numExpectedContainer

int MSStop::numExpectedContainer = 0

The number of still expected containers.

Definition at line 79 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), and initPars().

◆ numExpectedPerson

int MSStop::numExpectedPerson = 0

The number of still expected persons.

Definition at line 77 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), and initPars().

◆ overheadWireSegment

MSStoppingPlace* MSStop::overheadWireSegment = nullptr

(Optional) overhead wire segment if one is assigned to the stop

Todo:
Check that this should really be a stopping place instance

Definition at line 63 of file MSStop.h.

Referenced by MSBaseVehicle::addStop(), getDescription(), getEndPos(), and initPars().

◆ parkingarea

◆ pars

◆ reached

◆ segment

const MESegment* MSStop::segment = nullptr

The segment to stop at (mesosim only)

Definition at line 52 of file MSStop.h.

Referenced by MSBaseVehicle::addStop(), getEdge(), MSBaseVehicle::insertStop(), MEVehicle::processStop(), and MSBaseVehicle::replaceStop().

◆ skipOnDemand

bool MSStop::skipOnDemand = false

whether the decision to skip this stop has been made

Definition at line 89 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), getSpeed(), and MSVehicle::processNextStop().

◆ startedFromState

bool MSStop::startedFromState = false

whether the 'started' value was loaded from simulaton state

Definition at line 91 of file MSStop.h.

Referenced by MSVehicle::processNextStop().

◆ timeToBoardNextPerson

SUMOTime MSStop::timeToBoardNextPerson = 0

The time at which the vehicle is able to board another person.

Definition at line 81 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), and MSDevice_Transportable::notifyMove().

◆ timeToLoadNextContainer

SUMOTime MSStop::timeToLoadNextContainer = 0

The time at which the vehicle is able to load another container.

Definition at line 83 of file MSStop.h.

Referenced by MSVehicle::boardTransportables(), and MSDevice_Transportable::notifyMove().

◆ triggered

bool MSStop::triggered = false

whether an arriving person lets the vehicle continue

Definition at line 69 of file MSStop.h.

Referenced by MSVehicleControl::abortWaiting(), MSVehicle::boardTransportables(), MSIdling_Stop::idle(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().


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