Eclipse SUMO - Simulation of Urban MObility
|
#include <MSStop.h>
Public Member Functions | |
std::string | getDescription () const |
get a short description for showing in the gui More... | |
const MSEdge * | getEdge () 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 | |
MSStoppingPlace * | busstop = nullptr |
(Optional) bus stop if one is assigned to the stop More... | |
MSStoppingPlace * | chargingStation = nullptr |
(Optional) charging station if one is assigned to the stop More... | |
MSStoppingPlace * | containerstop = 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 MSLane * | lane = 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... | |
MSStoppingPlace * | overheadWireSegment = nullptr |
(Optional) overhead wire segment if one is assigned to the stop More... | |
MSParkingArea * | parkingarea = 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 MESegment * | segment = 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... | |
|
inline |
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().
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().
double MSStop::getEndPos | ( | const SUMOVehicle & | veh | ) | const |
return halting position for upcoming stop;
Definition at line 35 of file MSStop.cpp.
References busstop, chargingStation, containerstop, SUMOVehicleParameter::Stop::endPos, SUMOVehicle::getBrakeGap(), getEdge(), SUMOTrafficObject::getEdge(), MSParkingArea::getLastFreePos(), MSStoppingPlace::getLastFreePos(), SUMOTrafficObject::getPositionOnLane(), overheadWireSegment, SUMOVehicleParameter::Stop::parametersSet, parkingarea, pars, and STOP_END_SET.
Referenced by MSBaseVehicle::addStop(), MSBaseVehicle::getStopEdges(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSVehicle::planMoveInternal(), and MSBaseVehicle::replaceStop().
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().
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().
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().
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().
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().
void MSStop::initPars | ( | const SUMOVehicleParameter::Stop & | stopPar | ) |
initialize attributes from the given stop parameters
Definition at line 112 of file MSStop.cpp.
References SUMOVehicleParameter::Stop::awaitedContainers, SUMOVehicleParameter::Stop::awaitedPersons, busstop, SUMOVehicleParameter::Stop::busstop, chargingStation, SUMOVehicleParameter::Stop::chargingStation, containerstop, SUMOVehicleParameter::Stop::containerstop, containerTriggered, SUMOVehicleParameter::Stop::containerTriggered, duration, SUMOVehicleParameter::Stop::duration, MSNet::getInstance(), MSNet::getStoppingPlace(), SUMOVehicleParameter::Stop::join, joinTriggered, SUMOVehicleParameter::Stop::joinTriggered, numExpectedContainer, numExpectedPerson, overheadWireSegment, SUMOVehicleParameter::Stop::overheadWireSegment, parkingarea, SUMOVehicleParameter::Stop::parkingarea, SUMO_TAG_BUS_STOP, SUMO_TAG_CHARGING_STATION, SUMO_TAG_CONTAINER_STOP, SUMO_TAG_OVERHEAD_WIRE_SEGMENT, SUMO_TAG_PARKING_AREA, triggered, and SUMOVehicleParameter::Stop::triggered.
Referenced by MSBaseVehicle::addStop(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSBaseVehicle::replaceStop(), and LIBSUMO_NAMESPACE::Vehicle::setStopParameter().
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().
void MSStop::write | ( | OutputDevice & | dev | ) | const |
Write the current stop configuration (used for state saving)
Definition at line 92 of file MSStop.cpp.
References busstop, chargingStation, OutputDevice::closeTag(), containerstop, duration, SUMOVehicleParameter::Stop::duration, SUMOVehicleParameter::Stop::parametersSet, parkingarea, pars, SUMOVehicleParameter::Stop::started, STOP_END_SET, STOP_START_SET, STOP_STARTED_SET, SUMO_ATTR_STARTED, time2string(), SUMOVehicleParameter::Stop::write(), OutputDevice::writeAttr(), and Parameterised::writeParams().
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().
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(), MSDevice_StationFinder::notifyMove(), MSVehicle::processNextStop(), MSVehicle::resumeFromStopping(), and write().
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().
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(), MSDevice_Taxi::dispatchShared(), MSIdling_Stop::idle(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().
SUMOTime MSStop::duration = -1 |
The stopping duration.
Definition at line 67 of file MSStop.h.
Referenced by MSVehicle::boardTransportables(), MSDevice_Taxi::dispatchShared(), getMinDuration(), MSVehicle::getStopDelay(), MSIdling_Stop::idle(), initPars(), MSDevice_Transportable::notifyMove(), MSVehicle::processNextStop(), LIBSUMO_NAMESPACE::Vehicle::resume(), MSDevice_StationFinder::teleportToChargingStation(), and write().
MSRouteIterator MSStop::edge |
The edge in the route to stop at.
Definition at line 48 of file MSStop.h.
Referenced by MSBaseVehicle::addStop(), MSVehicle::estimateTimeToNextStop(), MSBaseVehicle::getStopEdges(), MSVehicle::handleCollisionStop(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSVehicle::processNextStop(), MEVehicle::processStop(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceStop(), LIBSUMO_NAMESPACE::Vehicle::resume(), MEVehicle::resumeFromStopping(), MSVehicle::resumeFromStopping(), MSBaseVehicle::setSkips(), and MSVehicle::updateBestLanes().
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().
bool MSStop::isOpposite = false |
whether this an opposite-direction stop
Definition at line 87 of file MSStop.h.
Referenced by MSBaseVehicle::addStop(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), getReachedThreshold(), MSLaneChanger::hasOppositeStop(), and MSVehicle::updateBestLanes().
bool MSStop::joinTriggered = false |
whether coupling another vehicle (train) the vehicle continue
Definition at line 73 of file MSStop.h.
Referenced by MSVehicleControl::abortWaiting(), MSDevice_Taxi::dispatchShared(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().
const MSLane* MSStop::lane = nullptr |
The lane to stop at (microsim only)
Definition at line 50 of file MSStop.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSBaseVehicle::addStop(), MSDevice_ToC::checkDynamicToC(), MSLaneChanger::checkOppositeStop(), MSVehicle::estimateTimeToNextStop(), getDescription(), getEdge(), getReachedThreshold(), MSBaseVehicle::getStopEdges(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceStop(), MSVehicle::resumeFromStopping(), LIBSUMO_NAMESPACE::Vehicle::setStopParameter(), and MSVehicle::updateBestLanes().
int MSStop::numExpectedContainer = 0 |
The number of still expected containers.
Definition at line 79 of file MSStop.h.
Referenced by MSVehicle::boardTransportables(), and initPars().
int MSStop::numExpectedPerson = 0 |
The number of still expected persons.
Definition at line 77 of file MSStop.h.
Referenced by MSVehicle::boardTransportables(), and initPars().
MSStoppingPlace* MSStop::overheadWireSegment = nullptr |
(Optional) overhead wire segment if one is assigned to the stop
Definition at line 63 of file MSStop.h.
Referenced by MSBaseVehicle::addStop(), getDescription(), getEndPos(), and initPars().
MSParkingArea* MSStop::parkingarea = nullptr |
(Optional) parkingArea if one is assigned to the stop
Definition at line 58 of file MSStop.h.
Referenced by MSBaseVehicle::addStop(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), GUIBaseVehicle::drawAction_drawVehicleAsPolyWithCarriagges(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), getDescription(), getEndPos(), MSBaseVehicle::getNextParkingArea(), MSIdling_TaxiStand::idle(), initPars(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MSBaseVehicle::replaceParkingArea(), MSVehicle::resumeFromStopping(), and write().
const SUMOVehicleParameter::Stop MSStop::pars |
The stop parameter.
Definition at line 65 of file MSStop.h.
Referenced by MSVehicleControl::abortWaiting(), MSBaseVehicle::addStop(), MSDevice_Taxi::dispatchShared(), MSVehicle::estimateTimeToNextStop(), getDescription(), getEndPos(), getMinDuration(), getReachedThreshold(), getSpeed(), getStateFlagsOld(), MSVehicle::getStopArrivalDelay(), MSVehicle::getStopDelay(), LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), getUntil(), MSVehicle::handleCollisionStop(), MSBaseVehicle::insertJump(), isInRange(), MSLane::isInsertionSuccess(), MSBaseVehicle::isStoppedInRange(), MSVehicle::leaveLane(), MSDevice_Transportable::notifyMove(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MEVehicle::processStop(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), LIBSUMO_NAMESPACE::Vehicle::resume(), MEVehicle::resumeFromStopping(), MSVehicle::resumeFromStopping(), MSBaseVehicle::setSkips(), LIBSUMO_NAMESPACE::Vehicle::setStopParameter(), MSVehicle::slowDownForSchedule(), MSDevice_StationFinder::teleportToChargingStation(), MSVehicle::updateBestLanes(), and write().
bool MSStop::reached = false |
Information whether the stop has been reached.
Definition at line 75 of file MSStop.h.
Referenced by MSBaseVehicle::getNextParkingArea(), getStateFlagsOld(), MSVehicle::getStopArrivalDelay(), MSVehicle::getStopDelay(), MSVehicle::leaveLane(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MEVehicle::processStop(), and LIBSUMO_NAMESPACE::Vehicle::resume().
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().
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().
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().
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().
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().
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(), MSDevice_Taxi::dispatchShared(), MSIdling_Stop::idle(), initPars(), MSVehicle::processNextStop(), and MEVehicle::resumeFromStopping().