Eclipse SUMO - Simulation of Urban MObility
|
Representation of a vehicle in the micro simulation. More...
#include <MSVehicle.h>
Data Structures | |
struct | DriveProcessItem |
Drive process items represent bounds on the safe velocity corresponding to the upcoming links. More... | |
class | Influencer |
Changes the wished vehicle speed / lanes. More... | |
struct | LaneQ |
A structure representing the best lanes for continuing the current route starting at 'lane'. More... | |
class | Manoeuvre |
Container for manouevering time associated with stopping. More... | |
class | State |
Container that holds the vehicles driving state (position+speed). More... | |
class | WaitingTimeCollector |
Stores the waiting intervals over the previous seconds (memory is to be specified in ms.). More... | |
Public Types | |
enum | ChangeRequest { REQUEST_NONE , REQUEST_LEFT , REQUEST_RIGHT , REQUEST_HOLD } |
Requests set via TraCI. More... | |
enum | ManoeuvreType { MANOEUVRE_ENTRY , MANOEUVRE_EXIT , MANOEUVRE_NONE } |
flag identifying which, if any, manoeuvre is in progress More... | |
typedef long long int | NumericalID |
enum | RouteValidity { ROUTE_VALID = 0 , ROUTE_UNCHECKED = 1 << 0 , ROUTE_INVALID = 1 << 1 , ROUTE_START_INVALID_PERMISSIONS = 1 << 2 , ROUTE_START_INVALID_LANE = 1 << 3 } |
Public Member Functions | |
double | accelThresholdForWaiting () const |
maximum acceleration to consider a vehicle as 'waiting' at low speed | |
virtual void | activateReminders (const MSMoveReminder::Notification reason, const MSLane *enteredLane=0) |
"Activates" all current move reminder | |
void | adaptToJunctionLeader (const std::pair< const MSVehicle *, double > leaderInfo, const double seen, DriveProcessItem *const lastLink, const MSLane *const lane, double &v, double &vLinkPass, double distToCrossing=-1) const |
void | adaptToOncomingLeader (const std::pair< const MSVehicle *, double > leaderInfo, DriveProcessItem *const lastLink, double &v, double &vLinkPass) const |
void | addReminder (MSMoveReminder *rem) |
Adds a MoveReminder dynamically. | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. | |
void | addToOdometer (double value) |
Manipulate the odometer. | |
bool | addTraciStop (SUMOVehicleParameter::Stop stop, std::string &errorMsg) |
void | addTransportable (MSTransportable *transportable) |
Adds a person or container to this vehicle. | |
bool | allowsBoarding (const MSTransportable *t) const |
whether the given transportable is allowed to board this vehicle | |
void | checkLinkLeader (const MSLink *link, const MSLane *lane, double seen, DriveProcessItem *const lastLink, double &v, double &vLinkPass, double &vLinkWait, bool &setRequest, bool isShadowLink=false) const |
checks for link leaders on the given link | |
void | createDevice (const std::string &deviceName) |
create device of the given type | |
void | fixPosition () |
repair errors in vehicle position after changing between internal edges | |
virtual int | getArrivalLane () const |
virtual double | getArrivalPos () const |
Returns this vehicle's desired arrivalPos for its current route (may change on reroute) | |
const Position | getBackPosition () const |
BaseInfluencer & | getBaseInfluencer () |
Returns the velocity/lane influencer. | |
const BaseInfluencer * | getBaseInfluencer () const |
PositionVector | getBoundingBox (double offset=0) const |
get bounding rectangle | |
PositionVector | getBoundingPoly (double offset=0) const |
get bounding polygon | |
double | getBrakeGap (bool delayed=false) const |
get distance for coming to a stop (used for rerouting checks) | |
const MSCFModel & | getCarFollowModel () const |
Returns the vehicle's car following model definition. | |
MSCFModel::VehicleVariables * | getCarFollowVariables () const |
Returns the vehicle's car following model variables. | |
double | getChosenSpeedFactor () const |
Returns the precomputed factor by which the driver wants to be faster than the speed limit. | |
int | getContainerNumber () const |
Returns the number of containers. | |
const std::vector< MSTransportable * > & | getContainers () const |
retrieve riding containers | |
const MSRouteIterator & | getCurrentRouteEdge () const |
Returns an iterator pointing to the current edge in this vehicles route. | |
SUMOTime | getDepartDelay () const |
Returns the depart delay. | |
double | getDepartPos () const |
Returns this vehicle's real departure position. | |
SUMOTime | getDeparture () const |
Returns this vehicle's real departure time. | |
MSDevice * | getDevice (const std::type_info &type) const |
Returns a device of the given type if it exists, nullptr otherwise. | |
std::string | getDeviceParameter (const std::string &deviceName, const std::string &key) const |
try to retrieve the given parameter from any of the vehicles devices, raise InvalidArgument if no device parameter by that name exists | |
const std::vector< MSVehicleDevice * > & | getDevices () const |
Returns this vehicle's devices. | |
double | getDistanceToPosition (double destPos, const MSLane *destLane) const |
std::shared_ptr< MSSimpleDriverState > | getDriverState () const |
Returns the vehicle driver's state. | |
const MSEdge * | getEdge () const |
Returns the edge the vehicle is currently at. | |
std::pair< const MSVehicle *const, double > | getFollower (double dist=0) const |
Returns the follower of the vehicle looking for a fixed distance. | |
double | getFriction () const |
Returns the current friction on the road as perceived by the friction device. | |
const std::string & | getID () const |
Returns the id. | |
double | getImpatience () const |
Returns this vehicles impatience. | |
Influencer & | getInfluencer () |
const Influencer * | getInfluencer () const |
int | getLaneIndex () const |
std::pair< const MSLane *, double > | getLanePosAfterDist (double distance) const |
return lane and position along bestlanes at the given distance | |
std::pair< const MSVehicle *const, double > | getLeader (double dist=0) const |
Returns the leader of the vehicle looking for a fixed distance. | |
int | getLeavingPersonNumber () const |
Returns the number of leaving persons. | |
double | getLength () const |
Returns the vehicle's length. | |
MSVehicle::ManoeuvreType | getManoeuvreType () const |
accessor function to myManoeuvre equivalent | |
double | getMaxSpeed () const |
Returns the maximum speed (the minimum of desired and technical maximum speed) | |
int | getNumberReroutes () const |
Returns the number of new routes this vehicle got. | |
double | getOdometer () const |
Returns the distance that was already driven by this vehicle. | |
const SUMOVehicleParameter & | getParameter () const |
Returns the vehicle's parameter (including departure definition) | |
std::vector< std::string > | getPersonIDList () const |
Returns the list of persons. | |
int | getPersonNumber () const |
Returns the number of persons. | |
const std::vector< MSTransportable * > & | getPersons () const |
retrieve riding persons | |
std::string | getPrefixedParameter (const std::string &key, std::string &error) const |
retrieve parameters of devices, models and the vehicle itself | |
const MSLane * | getPreviousLane (const MSLane *current, int &furtherIndex) const |
virtual const MSEdge * | getRerouteDestination () const |
Returns the end point for reroutes (usually the last edge of the route) | |
const MSRoute & | getRoute () const |
Returns the current route. | |
int | getRoutePosition () const |
return index of edge within route | |
ConstMSRoutePtr | getRoutePtr () const |
Returns the current route. | |
int | getRouteValidity (bool update=true, bool silent=false, std::string *msgReturn=nullptr) |
check for route validity at first insertion attempt | |
MSVehicleType & | getSingularType () |
Replaces the current vehicle type with a new one used by this vehicle only. | |
double | getSpeedWithoutTraciInfluence () const |
Returns the uninfluenced velocity. | |
double | getTimeGapOnLane () const |
Returns the time gap in seconds to the leader of the vehicle on the same lane. | |
const std::set< SUMOTrafficObject::NumericalID > | getUpcomingEdgeIDs () const |
returns the numerical ids of edges to travel | |
SUMOVehicleClass | getVClass () const |
Returns the vehicle's access class. | |
const MSVehicleType & | getVehicleType () const |
Returns the vehicle's type definition. | |
const SUMOVTypeParameter & | getVTypeParameter () const |
Returns the vehicle's type parameter. | |
double | getWaitingSeconds () const |
Returns the number of seconds waited (speed was lesser than 0.1m/s) | |
double | getWidth () const |
Returns the vehicle's width. | |
bool | handleCollisionStop (MSStop &stop, const double distToStop) |
bool | hasDeparted () const |
Returns whether this vehicle has already departed. | |
bool | hasDevice (const std::string &deviceName) const |
check whether the vehicle is equiped with a device of the given name | |
bool | hasDriverState () const |
Whether this vehicle is equipped with a MSDriverState. | |
bool | hasInfluencer () const |
whether the vehicle is individually influenced (via TraCI or special parameters) | |
bool | hasJump (const MSRouteIterator &it) const |
check wether the vehicle has jump at the given part of its route | |
bool | hasValidRoute (std::string &msg, ConstMSRoutePtr route=0) const |
Validates the current or given route. | |
bool | hasValidRouteStart (std::string &msg) |
checks wether the vehicle can depart on the first edge | |
bool | ignoreCollision () const |
whether this vehicle is except from collision checks | |
bool | ignoreFoe (const SUMOTrafficObject *foe) const |
decide whether a given foe object may be ignored | |
bool | ignoreRed (const MSLink *link, bool canBrake) const |
decide whether a red (or yellow light) may be ignored | |
bool | ignoreTransientPermissions () const |
Returns whether this object is ignoring transient permission changes (during routing) | |
int | influenceChangeDecision (int state) |
allow TraCI to influence a lane change decision | |
void | initDevices () |
virtual bool | isContainer () const |
Whether it is a container. | |
bool | isLeader (const MSLink *link, const MSVehicle *veh, const double gap) const |
whether the given vehicle must be followed at the given junction | |
bool | isLineStop (double position) const |
returns whether the vehicle serves a public transport line that serves the given stop | |
virtual bool | isPerson () const |
Whether it is a person. | |
bool | isVehicle () const |
Whether it is a vehicle. | |
bool | manoeuvreIsComplete () const |
accessor function to myManoeuvre equivalent | |
MSVehicle (SUMOVehicleParameter *pars, ConstMSRoutePtr route, MSVehicleType *type, const double speedFactor) | |
Constructor. | |
void | onDepart () |
Called when the vehicle is inserted into the network. | |
bool | passingMinor () const |
decide whether the vehicle is passing a minor link or has comitted to do so | |
double | processNextStop (double currentVelocity) |
Processes stops, returns the velocity needed to reach the stop. | |
void | removeReminder (MSMoveReminder *rem) |
Removes a MoveReminder dynamically. | |
void | removeTransportable (MSTransportable *t) |
removes a person or container | |
void | replaceParameter (const SUMOVehicleParameter *newParameter) |
replace the vehicle parameter (deleting the old one) | |
bool | replaceRouteEdges (ConstMSEdgeVector &edges, double cost, double savings, const std::string &info, bool onInit=false, bool check=false, bool removeStops=true, std::string *msgReturn=nullptr) |
Replaces the current route by the given edges. | |
void | replaceVehicleType (MSVehicleType *type) |
Replaces the current vehicle type by the one given. | |
bool | reroute (SUMOTime t, const std::string &info, SUMOAbstractRouter< MSEdge, SUMOVehicle > &router, const bool onInit=false, const bool withTaz=false, const bool silent=false, const MSEdge *sink=nullptr) |
Performs a rerouting using the given router. | |
bool | rerouteParkingArea (const std::string &parkingAreaID, std::string &errorMsg) |
void | resetRoutePosition (int index, DepartLaneDefinition departLaneProcedure) |
reset index of edge within route | |
bool | resumeFromStopping () |
virtual void | setArrivalPos (double arrivalPos) |
Sets this vehicle's desired arrivalPos for its current route. | |
void | setCarFollowModelParameter (const std::string &key, const std::string &value) |
set individual carFollow model parameters (not type related) | |
void | setChosenSpeedFactor (const double factor) |
Returns the precomputed factor by which the driver wants to be faster than the speed limit. | |
void | setDeviceParameter (const std::string &deviceName, const std::string &key, const std::string &value) |
try to set the given parameter from any of the vehicles devices, raise InvalidArgument if no device parameter by that name exists | |
bool | setExitManoeuvre () |
accessor function to myManoeuvre equivalent | |
void | setID (const std::string &newID) |
set the id (inherited from Named but forbidden for vehicles) | |
void | setJunctionModelParameter (const std::string &key, const std::string &value) |
set individual junction model paramete (not type related) | |
void | setManoeuvreType (const MSVehicle::ManoeuvreType mType) |
accessor function to myManoeuvre equivalent | |
void | setRemoteState (Position xyPos) |
sets position outside the road network | |
bool | stopsAt (MSStoppingPlace *stop) const |
Returns whether the vehicle stops at the given stopping place. | |
bool | stopsAtEdge (const MSEdge *edge) const |
Returns whether the vehicle stops at the given edge. | |
const MSEdge * | succEdge (int nSuccs) const |
Returns the nSuccs'th successor of edge the vehicle is currently at. | |
bool | unsafeLinkAhead (const MSLane *lane) const |
whether the vehicle may safely move to the given lane with regard to upcoming links | |
double | updateFurtherLanes (std::vector< MSLane * > &furtherLanes, std::vector< double > &furtherLanesPosLat, const std::vector< MSLane * > &passedLanes) |
update a vector of further lanes and return the new backPos | |
void | updateParkingState () |
update state while parking | |
virtual | ~MSVehicle () |
Destructor. | |
insertion/removal | |
void | onRemovalFromNet (const MSMoveReminder::Notification reason) |
Called when the vehicle is removed from the network. | |
interaction with the route | |
bool | hasArrived () const |
Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge) | |
bool | replaceRoute (ConstMSRoutePtr route, const std::string &info, bool onInit=false, int offset=0, bool addStops=true, bool removeStops=true, std::string *msgReturn=nullptr) |
Replaces the current route by the given one. | |
state setter/getter | |
double | getPositionOnLane () const |
Get the vehicle's position along the lane. | |
double | getLastStepDist () const |
Get the distance the vehicle covered in the previous timestep. | |
double | getPositionOnLane (const MSLane *lane) const |
Get the vehicle's front position relative to the given lane. | |
double | getBackPositionOnLane (const MSLane *lane) const |
Get the vehicle's position relative to the given lane. | |
double | getBackPositionOnLane () const |
Get the vehicle's position relative to its current lane. | |
double | getLateralPositionOnLane () const |
Get the vehicle's lateral position on the lane. | |
void | setLateralPositionOnLane (double posLat) |
void | invalidateCachedPosition () |
double | getRightSideOnLane () const |
Get the lateral position of the vehicles right side on the lane: | |
double | getLeftSideOnLane () const |
Get the lateral position of the vehicles left side on the lane: | |
double | getRightSideOnLane (const MSLane *lane) const |
Get the lateral position of the vehicles right side on the lane: | |
double | getLeftSideOnLane (const MSLane *lane) const |
Get the lateral position of the vehicles left side on the lane: | |
double | lateralDistanceToLane (const int offset) const |
Get the minimal lateral distance required to move fully onto the lane at given offset. | |
double | getLateralOverlap () const |
return the amount by which the vehicle extends laterally outside it's primary lane | |
double | getLateralOverlap (const MSLane *lane) const |
double | getLateralOverlap (double posLat, const MSLane *lane) const |
double | getLeftSideOnEdge (const MSLane *lane=0) const |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0) | |
double | getRightSideOnEdge (const MSLane *lane=0) const |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0) | |
double | getCenterOnEdge (const MSLane *lane=0) const |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0) | |
double | getLatOffset (const MSLane *lane) const |
Get the offset that that must be added to interpret myState.myPosLat for the given lane. | |
double | getSpeed () const |
Returns the vehicle's current speed. | |
double | getPreviousSpeed () const |
Returns the vehicle's speed before the previous time step. | |
void | setPreviousSpeed (double prevSpeed, double prevAcceleration) |
Sets the influenced previous speed. | |
double | getAcceleration () const |
Returns the vehicle's acceleration in m/s (this is computed as the last step's mean acceleration in case that a stop occurs within the middle of the time-step) | |
double | getCurrentApparentDecel () const |
get apparent deceleration based on vType parameters and current acceleration | |
SUMOTime | getActionStepLength () const |
Returns the vehicle's action step length in millisecs, i.e. the interval between two action points. | |
double | getActionStepLengthSecs () const |
Returns the vehicle's action step length in secs, i.e. the interval between two action points. | |
SUMOTime | getLastActionTime () const |
Returns the time of the vehicle's last action point. | |
strategical/tactical lane choosing methods | |
const std::vector< LaneQ > & | getBestLanes () const |
Returns the description of best lanes to use in order to continue the route. | |
void | updateBestLanes (bool forceRebuild=false, const MSLane *startLane=0) |
computes the best lanes to use in order to continue the route | |
void | updateLaneBruttoSum () |
Update the lane brutto occupancy after a change in minGap. | |
const std::vector< MSLane * > & | getBestLanesContinuation () const |
Returns the best sequence of lanes to continue the route starting at myLane. | |
const std::vector< MSLane * > & | getBestLanesContinuation (const MSLane *const l) const |
Returns the best sequence of lanes to continue the route starting at the given lane. | |
const std::vector< const MSLane * > | getUpcomingLanesUntil (double distance) const |
Returns the upcoming (best followed by default 0) sequence of lanes to continue the route starting at the current lane. | |
const std::vector< const MSLane * > | getPastLanesUntil (double distance) const |
Returns the sequence of past lanes (right-most on edge) based on the route starting at the current lane. | |
const std::vector< MSLane * > | getUpstreamOppositeLanes () const |
Returns the sequence of opposite lanes corresponding to past lanes. | |
int | getBestLaneOffset () const |
double | getBestLaneDist () const |
returns the distance that can be driven without lane change | |
void | adaptBestLanesOccupation (int laneIndex, double density) |
update occupation from MSLaneChanger | |
vehicle stops definitions and i/o | |
SUMOTime | remainingStopDuration () const |
Returns the remaining stop duration for a stopped vehicle or 0. | |
bool | willStop () const |
Returns whether the vehicle will stop on the current edge. | |
bool | isStoppedOnLane () const |
bool | keepStopping (bool afterProcessing=false) const |
Returns whether the vehicle is stopped and must continue to do so. | |
SUMOTime | collisionStopTime () const |
Returns the remaining time a vehicle needs to stop due to a collision. A negative value indicates that the vehicle is not stopping due to a collision (or at all) | |
bool | brokeDown () const |
Returns how long the vehicle has been stopped already due to lack of energy. | |
bool | isRemoteControlled () const |
Returns the information whether the vehicle is fully controlled via TraCI. | |
bool | wasRemoteControlled (SUMOTime lookBack=DELTA_T) const |
Returns the information whether the vehicle is fully controlled via TraCI within the lookBack time. | |
double | nextStopDist () const |
return the distance to the next stop or doubleMax if there is none. | |
state io | |
void | saveState (OutputDevice &out) |
Saves the states of a vehicle. | |
void | loadState (const SUMOSAXAttributes &attrs, const SUMOTime offset) |
Loads the state of this vehicle from the given description. | |
void | loadPreviousApproaching (MSLink *link, bool setRequest, SUMOTime arrivalTime, double arrivalSpeed, double arrivalSpeedBraking, double dist, double leaveSpeed) |
Helper methods for parsing parameters from the object itself, it's type or the global OptionsCont | |
std::string | getStringParam (const std::string ¶mName, const bool required=false, const std::string &deflt="") const |
Retrieve a string parameter for the traffic object. | |
double | getFloatParam (const std::string ¶mName, const bool required=false, const double deflt=INVALID_DOUBLE) const |
Retrieve a floating point parameter for the traffic object. | |
bool | getBoolParam (const std::string ¶mName, const bool required=false, const bool deflt=false) const |
Retrieve a boolean parameter for the traffic object. | |
SUMOTime | getTimeParam (const std::string ¶mName, const bool required=false, const SUMOTime deflt=SUMOTime_MIN) const |
Retrieve a time parameter for the traffic object. | |
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 | |
static int | nextLinkPriority (const std::vector< MSLane * > &conts) |
get a numerical value for the priority of the upcoming link | |
Data Fields | |
Manoeuvre | myManoeuvre |
Protected Types | |
typedef std::vector< DriveProcessItem > | DriveItemVector |
Container for used Links/visited Lanes during planMove() and executeMove. | |
Protected Member Functions | |
void | adaptToLeader (const std::pair< const MSVehicle *, double > leaderInfo, double seen, DriveProcessItem *const lastLink, double &v, double &vLinkPass) const |
void | adaptToLeaderDistance (const MSLeaderDistanceInfo &ahead, double latOffset, double seen, DriveProcessItem *const lastLink, double &v, double &vLinkPass) const |
void | adaptToLeaders (const MSLeaderInfo &ahead, double latOffset, const double seen, DriveProcessItem *const lastLink, const MSLane *const lane, double &v, double &vLinkPass) const |
bool | betterContinuation (const LaneQ *bestConnectedNext, const LaneQ &m) const |
comparison between different continuations from the same lane | |
void | boardTransportables (MSStop &stop) |
board persons and load transportables at the given stop | |
bool | brakeForOverlap (const MSLink *link, const MSLane *lane) const |
handle with transitions | |
void | checkLinkLeaderCurrentAndParallel (const MSLink *link, const MSLane *lane, double seen, DriveProcessItem *const lastLink, double &v, double &vLinkPass, double &vLinkWait, bool &setRequest) const |
checks for link leaders of the current link as well as the parallel link (if there is one) | |
double | checkReversal (bool &canReverse, double speedThreshold=SUMO_const_haltingSpeed, double seen=0) const |
void | checkRewindLinkLanes (const double lengthsInFront, DriveItemVector &lfLinks) const |
runs heuristic for keeping the intersection clear in case of downstream jamming | |
void | cleanupFurtherLanes () |
remove vehicle from further lanes (on leaving the network) | |
void | computeFurtherLanes (MSLane *enteredLane, double pos, bool collision=false) |
updates myFurtherLanes on lane insertion or after collision | |
virtual void | drawOutsideNetwork (bool) |
register vehicle for drawing while outside the network | |
std::pair< double, double > | estimateTimeToNextStop () const |
return time (s) and distance to the next stop | |
SUMOTime | getArrivalTime (SUMOTime t, double seen, double v, double arrivalSpeed) const |
double | getBackPositionOnLane (const MSLane *lane, bool calledByGetPosition) const |
double | getDistanceToLeaveJunction () const |
get the distance from the start of this lane to the start of the next normal lane (or 0 if this lane is a normal lane) | |
bool | hasArrivedInternal (bool oppositeTransformed=true) const |
Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge) method is called in the context of excecuteMove where opposite-direction vehicles are transformed temporarily to their forward lane and additional opposite-direction driving checks do not apply. | |
void | interpolateLateralZ (Position &pos, double offset, double posLat) const |
perform lateral z interpolation in elevated networks | |
bool | isOppositeLane (const MSLane *lane) const |
whether the give lane is reverse direction of the current route or not | |
bool | joinTrainPart (MSVehicle *veh) |
try joining the given vehicle to the rear of this one (to resolve joinTriggered) | |
bool | joinTrainPartFront (MSVehicle *veh) |
try joining the given vehicle to the front of this one (to resolve joinTriggered) | |
bool | keepClear (const MSLink *link) const |
decide whether the given link must be kept clear | |
void | planMoveInternal (const SUMOTime t, MSLeaderInfo ahead, DriveItemVector &lfLinks, double &myStopDist, std::pair< double, const MSLink * > &myNextTurn) const |
void | processLaneAdvances (std::vector< MSLane * > &passedLanes, std::string &emergencyReason) |
This method checks if the vehicle has advanced over one or several lanes along its route and triggers the corresponding actions for the lanes and the vehicle. and adapts the given in/out parameters to the appropriate values. | |
void | processLinkApproaches (double &vSafe, double &vSafeMin, double &vSafeMinDist) |
This method iterates through the driveprocess items for the vehicle and adapts the given in/out parameters to the appropriate values. | |
double | processTraCISpeedControl (double vSafe, double vNext) |
Check for speed advices from the traci client and adjust the speed vNext in the current (euler) / after the current (ballistic) simstep accordingly. | |
void | removeApproachingInformation (const DriveItemVector &lfLinks) const |
unregister approach from all upcoming links | |
void | removePassedDriveItems () |
Erase passed drive items from myLFLinkLanes (and unregister approaching information for corresponding links). Further, myNextDriveItem is reset. | |
void | setBlinkerInformation () |
sets the blue flashing light for emergency vehicles | |
void | setBrakingSignals (double vNext) |
sets the braking lights on/off | |
void | setEmergencyBlueLight (SUMOTime currentTime) |
sets the blue flashing light for emergency vehicles | |
double | slowDownForSchedule (double vMinComfortable) const |
optionally return an upper bound on speed to stay within the schedule | |
void | updateOccupancyAndCurrentBestLane (const MSLane *startLane) |
updates LaneQ::nextOccupation and myCurrentLaneInBestLanes | |
void | updateState (double vNext) |
updates the vehicles state, given a next value for its speed. This value can be negative in case of the ballistic update to indicate a stop within the next timestep. (You can call this a 'hack' to emulate reasoning based on accelerations: The assumed constant acceleration a within the next time step is then a = (vNext - vCurrent)/TS ) | |
void | updateTimeLoss (double vNext) |
Updates the vehicle's time loss. | |
void | updateWaitingTime (double vNext) |
Updates the vehicle's waiting time counters (accumulated and consecutive) | |
Position | validatePosition (Position result, double offset=0) const |
ensure that a vehicle-relative position is not invalid | |
Protected Attributes | |
double | myAcceleration |
The current acceleration after dawdling in m/s. | |
bool | myActionStep |
The flag myActionStep indicates whether the current time step is an action point for the vehicle. | |
bool | myAmIdling |
Whether the vehicle is trying to enter the network (eg after parking so engine is running) | |
bool | myAmOnNet |
Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived) | |
bool | myAmRegisteredAsWaiting = false |
Whether this vehicle is registered as waiting for a person or container (for deadlock-recognition) | |
bool | myAmReversed = false |
double | myAngle |
the angle in radians ( | |
int | myArrivalLane |
The destination lane where the vehicle stops. | |
double | myArrivalPos |
The position on the destination lane where the vehicle stops. | |
std::vector< std::vector< LaneQ > > | myBestLanes |
Position | myCachedPosition |
StoppingPlaceMemory * | myChargingMemory = nullptr |
SUMOTime | myCollisionImmunity |
amount of time for which the vehicle is immune from collisions | |
MSDevice_Transportable * | myContainerDevice |
The containers this vehicle may have. | |
std::vector< LaneQ >::iterator | myCurrentLaneInBestLanes |
double | myDepartPos |
The real depart position. | |
SUMOTime | myDeparture |
The real departure time. | |
std::vector< MSVehicleDevice * > | myDevices |
The devices this vehicle has. | |
MSDevice_DriverState * | myDriverState |
This vehicle's driver state. | |
EnergyParams * | myEnergyParams |
The emission parameters this vehicle may have. | |
MSDevice_Friction * | myFrictionDevice |
This vehicle's friction perception. | |
std::vector< MSLane * > | myFurtherLanes |
The information into which lanes the vehicle laps into. | |
std::vector< double > | myFurtherLanesPosLat |
lateral positions on further lanes | |
bool | myHaveToWaitOnNextLink |
std::string | myID |
The name of the object. | |
SUMOTime | myJunctionConflictEntryTime |
SUMOTime | myJunctionEntryTime |
time at which the current junction was entered | |
SUMOTime | myJunctionEntryTimeNeverYield |
MSLane * | myLane |
The lane the vehicle is on. | |
MSAbstractLaneChangeModel * | myLaneChangeModel |
SUMOTime | myLastActionTime |
Action offset (actions are taken at time myActionOffset + N*getActionStepLength()) Initialized to 0, to be set at insertion. | |
const MSEdge * | myLastBestLanesEdge |
const MSLane * | myLastBestLanesInternalLane |
DriveItemVector | myLFLinkLanes |
container for the planned speeds in the current step | |
DriveItemVector | myLFLinkLanesPrev |
planned speeds from the previous step for un-registering from junctions after the new container is filled | |
DriveItemVector::iterator | myNextDriveItem |
iterator pointing to the next item in myLFLinkLanes | |
std::pair< double, const MSLink * > | myNextTurn |
the upcoming turn for the vehicle | |
int | myNumberParkingReroutes = 0 |
int | myNumberReroutes |
The number of reroutings. | |
double | myOdometer |
A simple odometer to keep track of the length of the route already driven. | |
StoppingPlaceMemory * | myParkingMemory = nullptr |
memory for parking search | |
MSDevice_Transportable * | myPersonDevice |
The passengers this vehicle may have. | |
int | myRouteValidity |
status of the current vehicle route | |
int | myRoutingMode |
routing mode (see TraCIConstants.h) | |
int | mySignals |
State of things of the vehicle that can be on or off. | |
State | myState |
This Vehicles driving state (pos and speed) | |
double | myStopDist |
distance to the next stop or doubleMax if there is none | |
SUMOTime | myStopUntilOffset |
The offset when adding route stops with 'until' on route replacement. | |
double | myTimeLoss |
the time loss in seconds due to driving with less than maximum speed | |
SUMOTime | myTimeSinceStartup |
duration of driving (speed > SUMO_const_haltingSpeed) after the last halting episode | |
SUMOTime | myWaitingTime |
The time the vehicle waits (is not faster than 0.1m/s) in seconds. | |
WaitingTimeCollector | myWaitingTimeCollector |
Static Protected Attributes | |
static std::vector< MSLane * > | myEmptyLaneVector |
static std::vector< MSTransportable * > | myEmptyTransportableVector |
static const SUMOTime | NOT_YET_DEPARTED = SUMOTime_MAX |
Private Member Functions | |
MSEdgeWeightsStorage & | _getWeightsStorage () const |
void | checkRouteRemoval () |
remove route at the end of the simulation | |
std::string | getFlowID () const |
reconstruct flow id from vehicle id | |
void | initTransientModelParams () |
init model parameters from generic params | |
bool | insertJump (int nextStopIndex, MSRouteIterator itStart, std::string &errorMsg) |
helper function | |
MSVehicle () | |
invalidated default constructor | |
MSVehicle (const MSVehicle &) | |
invalidated copy constructor | |
MSVehicle & | operator= (const MSVehicle &) |
invalidated assignment operator | |
void | setSkips (MSStop &stop, int prevActiveStops) |
patch stop.pars.index to record the number of skipped candidate edges before stop.edge (in a looped route) | |
Private Attributes | |
MSCFModel::VehicleVariables * | myCFVariables |
The per vehicle variables of the car following model. | |
MSEdgeWeightsStorage * | myEdgeWeights |
Influencer * | myInfluencer |
An instance of a velocity/lane influencing instance; built in "getInfluencer". | |
const NumericalID | myNumericalID |
Static Private Attributes | |
static NumericalID | myCurrentNumericalIndex = 0 |
Friends | |
class | MSLaneChanger |
the lane changer sets myLastLaneChangeOffset | |
class | MSLaneChangerSublane |
Access to bool signals | |
enum | Signalling { VEH_SIGNAL_NONE = 0 , VEH_SIGNAL_BLINKER_RIGHT = 1 , VEH_SIGNAL_BLINKER_LEFT = 2 , VEH_SIGNAL_BLINKER_EMERGENCY = 4 , VEH_SIGNAL_BRAKELIGHT = 8 , VEH_SIGNAL_FRONTLIGHT = 16 , VEH_SIGNAL_FOGLIGHT = 32 , VEH_SIGNAL_HIGHBEAM = 64 , VEH_SIGNAL_BACKDRIVE = 128 , VEH_SIGNAL_WIPER = 256 , VEH_SIGNAL_DOOR_OPEN_LEFT = 512 , VEH_SIGNAL_DOOR_OPEN_RIGHT = 1024 , VEH_SIGNAL_EMERGENCY_BLUE = 2048 , VEH_SIGNAL_EMERGENCY_RED = 4096 , VEH_SIGNAL_EMERGENCY_YELLOW = 8192 } |
Some boolean values which describe the state of some vehicle parts. More... | |
enum | LaneChangeMode { LC_NEVER = 0 , LC_NOCONFLICT = 1 , LC_ALWAYS = 2 } |
modes for resolving conflicts between external control (traci) and vehicle control over lane changing. Each level of the lane-changing hierarchy (strategic, cooperative, speedGain, keepRight) can be controlled separately More... | |
enum | TraciLaneChangePriority { LCP_ALWAYS = 0 , LCP_NOOVERLAP = 1 , LCP_URGENT = 2 , LCP_OPPORTUNISTIC = 3 } |
modes for prioritizing traci lane change requests More... | |
void | switchOnSignal (int signal) |
Switches the given signal on. | |
void | switchOffSignal (int signal) |
Switches the given signal off. | |
int | getSignals () const |
Returns the signals. | |
bool | signalSet (int which) const |
Returns whether the given signal is on. | |
Move reminder structures | |
typedef std::vector< std::pair< MSMoveReminder *, double > > | MoveReminderCont |
Definition of a move reminder container. | |
MoveReminderCont | myMoveReminders |
Currently relevant move reminders. | |
state io | |
const SUMOVehicleParameter * | myParameter |
This vehicle's parameter. | |
ConstMSRoutePtr | myRoute |
This vehicle's route. | |
MSVehicleType * | myType |
This vehicle's type. | |
MSRouteIterator | myCurrEdge |
Iterator to current route-edge. | |
double | myChosenSpeedFactor |
A precomputed factor by which the driver wants to be faster than the speed limit. | |
std::list< MSStop > | myStops |
The vehicle's list of stops. | |
std::vector< SUMOVehicleParameter::Stop > | myPastStops |
The list of stops that the vehicle has already reached. | |
bool | isStopped () const |
Returns whether the vehicle is at a stop. | |
bool | isParking () const |
Returns whether the vehicle is parking. | |
bool | isJumping () const |
Returns whether the vehicle is perform a jump. | |
bool | isReversed () const |
Returns whether the logical state of the vehicle is reversed - for drawing. | |
bool | isStoppedTriggered () const |
Returns whether the vehicle is on a triggered stop. | |
bool | isStoppedParking () const |
Returns whether the vehicle is on a parking stop. | |
bool | isStoppedInRange (const double pos, const double tolerance, bool checkFuture=false) const |
return whether the given position is within range of the current stop | |
bool | hasStops () const |
Returns whether the vehicle has to stop somewhere. | |
bool | replaceParkingArea (MSParkingArea *parkingArea, std::string &errorMsg) |
replace the current parking area stop with a new stop with merge duration | |
MSParkingArea * | getNextParkingArea () |
get the upcoming parking area stop or nullptr | |
MSParkingArea * | getCurrentParkingArea () |
get the current parking area stop or nullptr | |
const std::vector< std::string > & | getParkingBadges () const |
get the valid parking access rights (vehicle settings override vehicle type settings) | |
double | basePos (const MSEdge *edge) const |
departure position where the vehicle fits fully onto the edge (if possible) | |
bool | addStop (const SUMOVehicleParameter::Stop &stopPar, std::string &errorMsg, SUMOTime untilOffset=0, MSRouteIterator *searchStart=nullptr) |
Adds a stop. | |
void | addStops (const bool ignoreStopErrors, MSRouteIterator *searchStart=nullptr, bool addRouteStops=true) |
Adds stops to the built vehicle. | |
bool | haveValidStopEdges (bool silent=false) const |
check whether all stop.edge MSRouteIterators are valid and in order | |
const ConstMSEdgeVector | getStopEdges (double &firstPos, double &lastPos, std::set< int > &jumps) const |
Returns the list of still pending stop edges also returns the first and last stop position. | |
std::vector< std::pair< int, double > > | getStopIndices () const |
return list of route indices for the remaining stops | |
const std::list< MSStop > & | getStops () const |
const std::vector< SUMOVehicleParameter::Stop > & | getPastStops () const |
MSStop & | getNextStop () |
SUMOTime | getStopDuration () const |
get remaining stop duration or 0 if the vehicle isn't stopped | |
MSStop & | getStop (int nextStopIndex) |
const SUMOVehicleParameter::Stop * | getNextStopParameter () const |
return parameters for the next stop (SUMOVehicle Interface) | |
void | unregisterWaiting () |
mark vehicle as active | |
bool | abortNextStop (int nextStopIndex=0) |
deletes the next stop at the given index if it exists | |
bool | replaceStop (int nextStopIndex, SUMOVehicleParameter::Stop stop, const std::string &info, bool teleport, std::string &errorMsg) |
bool | rerouteBetweenStops (int nextStopIndex, const std::string &info, bool teleport, std::string &errorMsg) |
bool | insertStop (int nextStopIndex, SUMOVehicleParameter::Stop stop, const std::string &info, bool teleport, std::string &errorMsg) |
virtual bool | isSelected () const |
whether this vehicle is selected in the GUI | |
int | getRNGIndex () const |
SumoRNG * | getRNG () const |
NumericalID | getNumericalID () const |
return the numerical ID which is only for internal usage | |
const MSDevice_Transportable * | getPersonDevice () const |
const MSDevice_Transportable * | getContainerDevice () const |
EnergyParams * | getEmissionParameters () const |
retrieve parameters for the energy consumption model | |
void | rememberBlockedParkingArea (const MSStoppingPlace *pa, bool local) |
SUMOTime | sawBlockedParkingArea (const MSStoppingPlace *pa, bool local) const |
void | rememberBlockedChargingStation (const MSStoppingPlace *cs, bool local) |
SUMOTime | sawBlockedChargingStation (const MSStoppingPlace *cs, bool local) const |
void | rememberParkingAreaScore (const MSStoppingPlace *pa, const std::string &score) |
score only needed when running with gui | |
void | resetParkingAreaScores () |
void | rememberChargingStationScore (const MSStoppingPlace *cs, const std::string &score) |
void | resetChargingStationScores () |
int | getNumberParkingReroutes () const |
void | setNumberParkingReroutes (int value) |
const StoppingPlaceMemory * | getParkingMemory () const |
const StoppingPlaceMemory * | getChargingMemory () const |
Interaction with move reminders | |
void | workOnMoveReminders (double oldPos, double newPos, double newSpeed) |
Processes active move reminder. | |
void | workOnIdleReminders () |
cycle through vehicle devices invoking notifyIdle | |
bool | checkActionStep (const SUMOTime t) |
Returns whether the vehicle is supposed to take action in the current simulation step Updates myActionStep and myLastActionTime in case that the current simstep is an action step. | |
void | resetActionOffset (const SUMOTime timeUntilNextAction=0) |
Resets the action offset for the vehicle. | |
void | updateActionOffset (const SUMOTime oldActionStepLength, const SUMOTime newActionStepLength) |
Process an updated action step length value (only affects the vehicle's action offset, The actionStepLength is stored in the (singular) vtype) | |
void | planMove (const SUMOTime t, const MSLeaderInfo &ahead, const double lengthsInFront) |
Compute safe velocities for the upcoming lanes based on positions and speeds from the last time step. Also registers ApproachingVehicleInformation for all links. | |
void | setApproachingForAllLinks (const SUMOTime t) |
Register junction approaches for all link items in the current plan. | |
void | registerInsertionApproach (MSLink *link, double dist) |
register approach on insertion | |
bool | executeMove () |
Executes planned vehicle movements with regards to right-of-way. | |
void | executeFractionalMove (double dist) |
move vehicle forward by the given distance during insertion | |
double | getDeltaPos (const double accel) const |
calculates the distance covered in the next integration step given an acceleration and assuming the current velocity. (gives different results for different integration methods, e.g., euler vs. ballistic) | |
void | adaptLaneEntering2MoveReminder (const MSLane &enteredLane) |
Adapts the vehicle's entering of a new lane. | |
Other getter methods | |
double | getSlope () const |
Returns the slope of the road at vehicle's position in degrees. | |
Position | getPosition (const double offset=0) const |
Return current position (x/y, cartesian) | |
Position | getPositionAlongBestLanes (double offset) const |
Return the (x,y)-position, which the vehicle would reach if it continued along its best continuation lanes from the current for a distance of offset m. | |
const MSLane * | getLane () const |
Returns the lane the vehicle is on. | |
MSLane * | getMutableLane () const |
Returns the lane the vehicle is on Non const version indicates that something volatile is going on. | |
const MSLane * | getBackLane () const |
Returns the lane the where the rear of the object is currently at. | |
double | getMaxSpeedOnLane () const |
Returns the maximal speed for the vehicle on its current lane (including speed factor and deviation, i.e., not necessarily the allowed speed limit) | |
bool | isOnRoad () const |
Returns the information whether the vehicle is on a road (is simulated) | |
void | setIdling (bool amIdling) |
access function for Idling flag used to record whether vehicle is waiting to enter lane (after parking) | |
bool | isIdling () const |
Returns whether a sim vehicle is waiting to enter a lane (after parking has completed) | |
bool | isActive () const |
Returns whether the current simulation step is an action point for the vehicle. | |
bool | isActionStep (SUMOTime t) const |
Returns whether the next simulation step will be an action point for the vehicle. | |
bool | isFrontOnLane (const MSLane *lane) const |
Returns the information whether the front of the vehicle is on the given lane. | |
const MSEdge * | getCurrentEdge () const |
Returns the edge the vehicle is currently at (possibly an internal edge or nullptr) | |
const MSEdge * | getNextEdgePtr () const |
returns the next edge (possibly an internal edge) | |
ConstMSEdgeVector::const_iterator | getRerouteOrigin () const |
Returns the starting point for reroutes (usually the current edge) | |
SUMOTime | getWaitingTime (const bool accumulated=false) const |
Returns the SUMOTime waited (speed was lesser than 0.1m/s) | |
SUMOTime | getTimeSinceStartup () const |
Returns the SUMOTime spent driving since startup (speed was larger than 0.1m/s) | |
double | getTimeSinceStartupSeconds () const |
SUMOTime | getTimeLoss () const |
Returns the SUMOTime lost (speed was lesser maximum speed) | |
double | getAccumulatedWaitingSeconds () const |
Returns the number of seconds waited (speed was lesser than 0.1m/s) within the last millisecs. | |
double | getTimeLossSeconds () const |
Returns the time loss in seconds. | |
double | getStopDelay () const |
Returns the public transport stop delay in seconds. | |
double | getStopArrivalDelay () const |
Returns the estimated public transport stop arrival delay in seconds. | |
double | getAngle () const |
Returns the vehicle's direction in radians. | |
Position | getVelocityVector () const |
Returns the vehicle's direction in radians. | |
double | computeAngle () const |
compute the current vehicle angle | |
void | setAngle (double angle, bool straightenFurther=false) |
Set a custom vehicle angle in rad, optionally updates furtherLanePosLat. | |
void | setActionStepLength (double actionStepLength, bool resetActionOffset=true) |
Sets the action steplength of the vehicle. | |
bool | congested () const |
void | enterLaneAtMove (MSLane *enteredLane, bool onTeleporting=false) |
Update when the vehicle enters a new lane in the move step. | |
void | enterLaneAtInsertion (MSLane *enteredLane, double pos, double speed, double posLat, MSMoveReminder::Notification notification) |
Update when the vehicle enters a new lane in the emit step. | |
void | setTentativeLaneAndPosition (MSLane *lane, double pos, double posLat=0) |
set tentative lane and position during insertion to ensure that all cfmodels work (some of them require veh->getLane() to return a valid lane) Once the vehicle is successfully inserted the lane is set again (see enterLaneAtInsertion) | |
void | enterLaneAtLaneChange (MSLane *enteredLane) |
Update when the vehicle enters a new lane in the laneChange step. | |
void | leaveLane (const MSMoveReminder::Notification reason, const MSLane *approachedLane=0) |
Update of members if vehicle leaves a new lane in the lane change step or at arrival. | |
void | leaveLaneBack (const MSMoveReminder::Notification reason, const MSLane *leftLane) |
Update of reminders if vehicle back leaves a lane during (during forward movement. | |
void | updateDriveItems () |
Check whether the drive items (myLFLinkLanes) are up to date, and update them if required. | |
const std::pair< double, const MSLink * > & | getNextTurn () |
Get the distance and direction of the next upcoming turn for the vehicle (within its look-ahead range) | |
MSAbstractLaneChangeModel & | getLaneChangeModel () |
const MSAbstractLaneChangeModel & | getLaneChangeModel () const |
const std::vector< MSLane * > & | getFurtherLanes () const |
const std::vector< double > & | getFurtherLanesPosLat () const |
bool | onFurtherEdge (const MSEdge *edge) const |
whether this vehicle has its back (and no its front) on the given edge | |
bool | isBidiOn (const MSLane *lane) const |
whether this vehicle is driving against lane | |
static bool | overlap (const MSVehicle *veh1, const MSVehicle *veh2) |
Emission retrieval | |
template<PollutantsInterface::EmissionType ET> | |
double | getEmissions () const |
Returns emissions of the current state The value is always per 1s, so multiply by step length if necessary. | |
double | getStateOfCharge () const |
Returns actual state of charge of battery (Wh) RICE_CHECK: This may be a misnomer, SOC is typically percentage of the maximum battery capacity. | |
double | getRelativeStateOfCharge () const |
Returns actual relative state of charge of battery (-) | |
double | getChargedEnergy () const |
Returns the energy charged to the battery in the current time step (Wh) | |
double | getMaxChargeRate () const |
Returns the maximum charge rate allowed by the battery in the current time step (W) | |
double | getElecHybridCurrent () const |
Returns actual current (A) of ElecHybrid device RICE_CHECK: Is this the current consumed from the overhead wire or the current driving the powertrain of the vehicle? RICE_REV_JS: It is the current drawn from the overhead wire (value if the vehicle is not connected to overhead wire?) | |
double | getHarmonoise_NoiseEmissions () const |
Returns noise emissions of the current state. | |
int | getRoutingMode () const |
return routing mode (configures router choice but also handling of transient permission changes) | |
void | setRoutingMode (int value) |
Sets routing behavior. | |
SUMOAbstractRouter< MSEdge, SUMOVehicle > & | getRouterTT () const |
const MSEdgeWeightsStorage & | getWeightsStorage () const |
Returns the vehicle's internal edge travel times/efforts container. | |
MSEdgeWeightsStorage & | getWeightsStorage () |
void | calculateArrivalParams (bool onInit) |
(Re-)Calculates the arrival position and lane from the vehicle parameters | |
void | setDepartAndArrivalEdge () |
apply departEdge and arrivalEdge attributes | |
static MSLane * | interpretOppositeStop (SUMOVehicleParameter::Stop &stop) |
interpret stop lane on opposite side of the road | |
Representation of a vehicle in the micro simulation.
Definition at line 77 of file MSVehicle.h.
|
protected |
Container for used Links/visited Lanes during planMove() and executeMove.
Definition at line 2002 of file MSVehicle.h.
|
protectedinherited |
Definition of a move reminder container.
Definition at line 1045 of file MSBaseVehicle.h.
|
inherited |
Definition at line 56 of file SUMOTrafficObject.h.
Requests set via TraCI.
Definition at line 191 of file MSVehicle.h.
modes for resolving conflicts between external control (traci) and vehicle control over lane changing. Each level of the lane-changing hierarchy (strategic, cooperative, speedGain, keepRight) can be controlled separately
Enumerator | |
---|---|
LC_NEVER | |
LC_NOCONFLICT | |
LC_ALWAYS |
Definition at line 1138 of file MSVehicle.h.
flag identifying which, if any, manoeuvre is in progress
Enumerator | |
---|---|
MANOEUVRE_ENTRY | Manoeuvre into stopping place. |
MANOEUVRE_EXIT | Manoeuvre out of stopping place. |
MANOEUVRE_NONE | not manouevring |
Definition at line 1241 of file MSVehicle.h.
|
inherited |
Enumerator | |
---|---|
ROUTE_VALID | |
ROUTE_UNCHECKED | |
ROUTE_INVALID | route was checked and is valid |
ROUTE_START_INVALID_PERMISSIONS | |
ROUTE_START_INVALID_LANE |
Definition at line 72 of file MSBaseVehicle.h.
Some boolean values which describe the state of some vehicle parts.
Definition at line 1100 of file MSVehicle.h.
modes for prioritizing traci lane change requests
Enumerator | |
---|---|
LCP_ALWAYS | |
LCP_NOOVERLAP | |
LCP_URGENT | |
LCP_OPPORTUNISTIC |
Definition at line 1146 of file MSVehicle.h.
MSVehicle::MSVehicle | ( | SUMOVehicleParameter * | pars, |
ConstMSRoutePtr | route, | ||
MSVehicleType * | type, | ||
const double | speedFactor | ||
) |
Constructor.
[in] | pars | The vehicle description |
[in] | route | The vehicle's route |
[in] | type | The vehicle's type |
[in] | speedFactor | The factor for driven lane's speed limits |
ProcessError | If a value is wrong |
Definition at line 984 of file MSVehicle.cpp.
References MSCFModel::createVehicleVariables(), MSVehicleType::getCarFollowModel(), myCFVariables, myLFLinkLanes, and myNextDriveItem.
|
virtual |
Destructor.
Definition at line 1018 of file MSVehicle.cpp.
References cleanupFurtherLanes(), MSNet::getInstance(), MSNet::getVehicleControl(), MSVehicleType::isVehicleSpecific(), myCFVariables, myInfluencer, myLaneChangeModel, MSBaseVehicle::myType, and MSVehicleControl::removeVType().
|
private |
invalidated default constructor
|
private |
invalidated copy constructor
|
privateinherited |
Definition at line 2162 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myEdgeWeights.
Referenced by MSBaseVehicle::getWeightsStorage(), and MSBaseVehicle::getWeightsStorage().
|
virtualinherited |
deletes the next stop at the given index if it exists
Implements SUMOVehicle.
Definition at line 1711 of file MSBaseVehicle.cpp.
References MSBaseVehicle::hasDeparted(), MSBaseVehicle::hasStops(), MSBaseVehicle::isStopped(), MSBaseVehicle::myParameter, MSBaseVehicle::myStops, MSBaseVehicle::resumeFromStopping(), and SUMOVehicleParameter::stops.
Referenced by MSDevice_StationFinder::notifyMove(), and LIBSUMO_NAMESPACE::Vehicle::replaceStop().
|
inline |
maximum acceleration to consider a vehicle as 'waiting' at low speed
Definition at line 2059 of file MSVehicle.h.
References getCarFollowModel(), and MSCFModel::getMaxAccel().
Referenced by executeMove(), MSDevice_Tripinfo::lowAcceleration(), and updateWaitingTime().
|
virtualinherited |
"Activates" all current move reminder
For all move reminder stored in "myMoveReminders", their method "MSMoveReminder::notifyEnter" is called.
[in] | reason | The reason for changing the reminders' states |
[in] | enteredLane | The lane, which is entered (if applicable) |
Definition at line 846 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
Referenced by enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), MSIdling_TaxiStand::idle(), MESegment::receive(), and MELoop::teleportVehicle().
void MSVehicle::adaptBestLanesOccupation | ( | int | laneIndex, |
double | density | ||
) |
update occupation from MSLaneChanger
Definition at line 6515 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLaneChanger::change(), and MSLaneChangerSublane::change().
|
protected |
Adapts the vehicle's entering of a new lane.
All offsets already stored in "myOldLaneMoveReminderOffsets" are increased by the length that has been left. All still active move reminders from "myMoveReminders" are put into "myOldLaneMoveReminders" and the offset to the last lane is added to "myOldLaneMoveReminderOffsets" for each of these.
Move reminder from the given lane are set into "myMoveReminders".
"myLane" must still be the left lane!
[in] | enteredLane |
Definition at line 1201 of file MSVehicle.cpp.
References MSBaseVehicle::addReminder(), MSLane::getLength(), MSLane::getMoveReminders(), myLane, and MSBaseVehicle::myMoveReminders.
Referenced by enterLaneAtMove().
void MSVehicle::adaptToJunctionLeader | ( | const std::pair< const MSVehicle *, double > | leaderInfo, |
const double | seen, | ||
DriveProcessItem *const | lastLink, | ||
const MSLane *const | lane, | ||
double & | v, | ||
double & | vLinkPass, | ||
double | distToCrossing = -1 |
||
) | const |
Definition at line 3252 of file MSVehicle.cpp.
References ACCEL2SPEED, MSVehicle::DriveProcessItem::adaptLeaveSpeed(), MSVehicle::DriveProcessItem::adaptStopSpeed(), DEBUG_COND, MSCFModel::followSpeed(), getCarFollowModel(), Named::getID(), MSLane::getLength(), getSpeed(), MSBaseVehicle::getVehicleType(), MSGlobals::gSemiImplicitEulerUpdate, MSBaseVehicle::hasDeparted(), ignoreFoe(), MSCFModel::insertionFollowSpeed(), MAX2(), MIN2(), myLane, SIMTIME, MSCFModel::stopSpeed(), and SUMO_const_haltingSpeed.
Referenced by checkLinkLeader(), and MSLane::getCriticalLeader().
|
protected |
Definition at line 3166 of file MSVehicle.cpp.
References MSVehicle::DriveProcessItem::accelV, MSVehicle::DriveProcessItem::adaptLeaveSpeed(), DEBUG_COND, MSCFModel::followSpeed(), MSCFModel::FUTURE, getBestLanesContinuation(), getCarFollowModel(), Named::getID(), MSLink::getInternalLaneBefore(), MSLane::getLength(), getSpeed(), MSLink::getViaLaneOrLane(), MSGlobals::gSemiImplicitEulerUpdate, ignoreFoe(), MIN2(), myLane, MSVehicle::DriveProcessItem::myLink, MSVehicle::DriveProcessItem::myVLinkPass, SIMTIME, and MSCFModel::stopSpeed().
Referenced by adaptToLeaderDistance(), and adaptToLeaders().
|
protected |
Definition at line 3134 of file MSVehicle.cpp.
References adaptToLeader(), DEBUG_COND, Named::getID(), getLane(), getPositionOnLane(), MSLeaderInfo::getSubLanes(), SIMTIME, and MSLeaderDistanceInfo::toString().
Referenced by planMoveInternal().
|
protected |
Definition at line 3054 of file MSVehicle.cpp.
References adaptToLeader(), adaptToOncomingLeader(), DEBUG_COND, getBackPositionOnLane(), MSLane::getBidiLane(), getCarFollowModel(), MSLink::getDescription(), Named::getID(), getLane(), getLaneChangeModel(), MSLane::getLength(), MSVehicleType::getLength(), MSVehicleType::getLengthWithGap(), MSCFModel::getMaxAccel(), MSVehicleType::getMinGap(), getPositionOnLane(), MSAbstractLaneChangeModel::getShadowLane(), getSpeed(), MSLeaderInfo::getSublaneOffset(), MSLeaderInfo::getSubLanes(), MSBaseVehicle::getVehicleType(), MSAbstractLaneChangeModel::isOpposite(), MAX2(), myLane, myLaneChangeModel, MSVehicle::DriveProcessItem::myLink, MSVehicle::State::myPos, myState, SIMTIME, and MSLeaderInfo::toString().
Referenced by checkLinkLeader(), and planMoveInternal().
void MSVehicle::adaptToOncomingLeader | ( | const std::pair< const MSVehicle *, double > | leaderInfo, |
DriveProcessItem *const | lastLink, | ||
double & | v, | ||
double & | vLinkPass | ||
) | const |
Definition at line 3366 of file MSVehicle.cpp.
References MSVehicle::DriveProcessItem::accelV, MSVehicle::DriveProcessItem::adaptLeaveSpeed(), MSCFModel::brakeGap(), DEBUG_COND, MSCFModel::FUTURE, getCarFollowModel(), getDistanceToLeaveJunction(), Named::getID(), getLane(), MSCFModel::getMaxDecel(), getPositionOnLane(), getSpeed(), ignoreFoe(), MAX2(), MIN2(), myLane, MSVehicle::DriveProcessItem::myVLinkPass, SIMTIME, and MSCFModel::stopSpeed().
Referenced by adaptToLeaders().
|
inherited |
Adds a MoveReminder dynamically.
[in] | rem | the reminder to add |
Definition at line 819 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
Referenced by adaptLaneEntering2MoveReminder(), MESegment::Queue::addReminders(), enterLaneAtInsertion(), enterLaneAtLaneChange(), and MSDriveWay::loadState().
|
virtualinherited |
Adds a stop.
The stop is put into the sorted list.
[in] | stop | The stop to add |
Implements SUMOVehicle.
Definition at line 1192 of file MSBaseVehicle.cpp.
References MSParkingArea::accepts(), MSBaseVehicle::addStop(), MSLane::allowsVehicleClass(), SUMOVehicleParameter::Stop::arrival, BASE, MSBaseVehicle::basePos(), MSStop::busstop, MSStop::chargingStation, SUMOVehicleParameter::Stop::collision, MSStop::containerstop, DEBUG_COND, DEFAULT, SUMOVehicleParameter::departPos, SUMOVehicleParameter::departPosProcedure, MSEdge::dictionary(), MSLane::dictionary(), MSStop::edge, SUMOVehicleParameter::Stop::edge, SUMOVehicleParameter::Stop::ended, SUMOVehicleParameter::Stop::endPos, MSStop::getArrival(), SUMOVehicle::getBrakeGap(), MSStop::getDescription(), MSBaseVehicle::getEdge(), MSLane::getEdge(), MSStop::getEndPos(), MSEdge::getFirstAllowed(), Named::getID(), MSNet::getInstance(), SUMOTrafficObject::getLane(), MSBaseVehicle::getLength(), MSLane::getLength(), MSVehicleType::getLength(), MSLane::getNextNormal(), MSEdge::getNormalBefore(), MSEdge::getOppositeEdge(), MSBaseVehicle::getParameter(), SUMOTrafficObject::getPositionOnLane(), MELoop::getSegmentForEdge(), MSStop::getUntil(), MSBaseVehicle::getVClass(), MSVehicleType::getVehicleClass(), GIVEN, MSGlobals::gMesoNet, MSGlobals::gUseMesoSim, MSGlobals::gUseStopEnded, MSBaseVehicle::handleCollisionStop(), MSBaseVehicle::hasDeparted(), SUMOVehicleParameter::id, SUMOVehicleParameter::Stop::index, MSStop::initPars(), MSBaseVehicle::interpretOppositeStop(), MSEdge::isInternal(), MSLane::isInternal(), MSEdge::isNormal(), MSStop::isOpposite, MSStop::lane, SUMOVehicleParameter::Stop::lane, MIN2(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, MSBaseVehicle::myType, MSStop::overheadWireSegment, MSStop::parkingarea, MSStop::pars, MSStop::segment, MSBaseVehicle::setSkips(), SUMOVehicleParameter::Stop::startPos, STOP_INDEX_END, STOP_INDEX_FIT, STOP_INDEX_REPEAT, MSRailSignalConstraint::storeTripId(), time2string(), toString(), SUMOVehicleParameter::Stop::tripId, SUMOVehicleParameter::Stop::until, and MSNet::warnOnce().
Referenced by MSBaseVehicle::addStop(), MSBaseVehicle::addStops(), MSBaseVehicle::addTraciStop(), MSBaseVehicle::replaceRoute(), and GUIVehicle::rerouteDRTStop().
|
inherited |
Adds stops to the built vehicle.
This code needs to be separated from the MSBaseVehicle constructor since it is not allowed to call virtual functions from a constructor
[in] | ignoreStopErrors | whether invalid stops trigger a warning only |
Definition at line 1504 of file MSBaseVehicle.cpp.
References MSBaseVehicle::addStop(), SUMOVehicleParameter::depart, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, SUMOVehicleParameter::repetitionOffset, SUMOVehicleParameter::repetitionsDone, SUMOVehicleParameter::stops, and WRITE_WARNING.
Referenced by MSVehicleControl::initVehicle(), MEVehicle::loadState(), loadState(), and MSBaseVehicle::replaceRoute().
|
inlineinherited |
Adds this object to the given container.
[in,filled] | cont The container to add this item to |
Definition at line 118 of file Named.h.
References Named::StoringVisitor::add().
|
inlineinherited |
Manipulate the odometer.
Definition at line 443 of file MSBaseVehicle.h.
References MSBaseVehicle::myOdometer.
Referenced by LIBSUMO_NAMESPACE::Vehicle::moveTo().
|
virtual |
schedule a new stop for the vehicle; each time a stop is reached, the vehicle will wait for the given duration before continuing on its route
[in] | stop | Stop parameters |
[out] | errorMsg | returned error message |
Reimplemented from MSBaseVehicle.
Definition at line 7182 of file MSVehicle.cpp.
References MSBaseVehicle::addTraciStop(), myLane, MSBaseVehicle::myStops, and updateBestLanes().
Referenced by GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop().
|
virtual |
Adds a person or container to this vehicle.
[in] | transportable | The person/container to add |
Reimplemented from MSBaseVehicle.
Definition at line 6609 of file MSVehicle.cpp.
References MSBaseVehicle::addTransportable(), Named::getID(), MSTransportable::isPerson(), and MSBaseVehicle::myStops.
|
virtualinherited |
whether the given transportable is allowed to board this vehicle
Implements SUMOVehicle.
Definition at line 678 of file MSBaseVehicle.cpp.
References MSDevice_Taxi::allowsBoarding(), MSBaseVehicle::getContainerNumber(), MSBaseVehicle::getDevice(), Named::getID(), MSBaseVehicle::getPersonNumber(), MSBaseVehicle::getVehicleType(), MSTransportable::isPerson(), MSBaseVehicle::isStopped(), and MSBaseVehicle::myStops.
|
inherited |
departure position where the vehicle fits fully onto the edge (if possible)
Definition at line 1163 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getLength(), MSEdge::getLength(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::hasStops(), MAX2(), MIN2(), MSBaseVehicle::myRoute, and MSBaseVehicle::myStops.
Referenced by MSBaseVehicle::addStop(), and MSLane::insertVehicle().
|
protected |
comparison between different continuations from the same lane
Definition at line 6259 of file MSVehicle.cpp.
References MSVehicle::LaneQ::bestLaneOffset, MSLane::getBidiLane(), MSLane::getIndex(), SUMOVTypeParameter::getLCParam(), MSVehicleType::getParameter(), MSBaseVehicle::getRNG(), MSBaseVehicle::getVehicleType(), MSVehicle::LaneQ::lane, MSVehicle::LaneQ::length, RandHelper::rand(), and SUMO_ATTR_LCA_CONTRIGHT.
Referenced by updateBestLanes().
|
protected |
board persons and load transportables at the given stop
Definition at line 1920 of file MSVehicle.cpp.
References MSDevice_Taxi::cancelCurrentCustomers(), MSStop::containerTriggered, DEBUG_COND, MSStop::duration, MSStop::endBoarding, MSNet::getContainerControl(), MSNet::getCurrentTimeStep(), MSBaseVehicle::getDevice(), MSLane::getEdge(), Named::getID(), MSNet::getInstance(), MSNet::getPersonControl(), MSNet::getVehicleControl(), MSNet::hasContainers(), MSNet::hasPersons(), MSTransportableControl::loadAnyWaiting(), MSBaseVehicle::myAmRegisteredAsWaiting, myLane, MSStop::numExpectedContainer, MSStop::numExpectedPerson, SIMTIME, MSStop::skipOnDemand, MSStop::timeToBoardNextPerson, MSStop::timeToLoadNextContainer, MSStop::triggered, and MSVehicleControl::unregisterOneWaiting().
Referenced by processNextStop().
handle with transitions
Definition at line 2166 of file MSVehicle.cpp.
References DEBUG_COND, MSLink::getDescription(), MSLane::getEdge(), Named::getID(), MSLane::getIncomingLanes(), MSLink::getLane(), getLateralOverlap(), getLateralPositionOnLane(), MSLink::getLateralShift(), MSLane::getLinkCont(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getVehicleType(), MSLink::getViaLane(), MSEdge::getWidth(), MSVehicleType::getWidth(), MSEdge::isInternal(), MSLane::isInternal(), myLane, myLaneChangeModel, overlap(), and SIMTIME.
Referenced by planMoveInternal().
bool MSVehicle::brokeDown | ( | ) | const |
Returns how long the vehicle has been stopped already due to lack of energy.
Definition at line 1619 of file MSVehicle.cpp.
References MSBaseVehicle::isStopped(), and MSBaseVehicle::myStops.
Referenced by MSLane::executeMovements().
|
inherited |
(Re-)Calculates the arrival position and lane from the vehicle parameters
Definition at line 878 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::arrivalEdge, SUMOVehicleParameter::arrivalLane, SUMOVehicleParameter::arrivalLaneProcedure, SUMOVehicleParameter::arrivalPos, SUMOVehicleParameter::arrivalPosProcedure, SUMOVehicleParameter::arrivalSpeed, SUMOVehicleParameter::arrivalSpeedProcedure, CENTER, FIRST_ALLOWED, Named::getID(), MSEdge::getLanes(), MSVehicleType::getVehicleClass(), GIVEN, MAX2(), MIN2(), MSBaseVehicle::myArrivalLane, MSBaseVehicle::myArrivalPos, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myType, RandHelper::rand(), RANDOM, SIMSTEP, time2string(), TL, toString(), and WRITE_WARNINGF.
Referenced by MEVehicle::loadState(), loadState(), MSBaseVehicle::MSBaseVehicle(), MSBaseVehicle::replaceRoute(), and MSBaseVehicle::reroute().
bool MSVehicle::checkActionStep | ( | const SUMOTime | t | ) |
Returns whether the vehicle is supposed to take action in the current simulation step Updates myActionStep and myLastActionTime in case that the current simstep is an action step.
[in] | t |
Definition at line 2061 of file MSVehicle.cpp.
References isActionStep(), myActionStep, and myLastActionTime.
Referenced by planMove(), and setApproachingForAllLinks().
void MSVehicle::checkLinkLeader | ( | const MSLink * | link, |
const MSLane * | lane, | ||
double | seen, | ||
DriveProcessItem *const | lastLink, | ||
double & | v, | ||
double & | vLinkPass, | ||
double & | vLinkWait, | ||
bool & | setRequest, | ||
bool | isShadowLink = false |
||
) | const |
checks for link leaders on the given link
Definition at line 3450 of file MSVehicle.cpp.
References adaptToJunctionLeader(), adaptToLeaders(), MSLeaderInfo::addLeader(), DEBUG_COND, gDebugFlag1, MSLane::getEdge(), Named::getID(), MSLink::getInternalLaneBefore(), getLane(), getLatOffset(), MSLink::getLeaderInfo(), MSLane::getLogicalPredecessorLane(), MSBaseVehicle::getParameter(), MSLane::getRightSideOnEdge(), MSBaseVehicle::getRNG(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), getWaitingTime(), MSLane::getWidth(), MSGlobals::gLateralResolution, isLeader(), MSBaseVehicle::isStopped(), JUNCTION_BLOCKAGE_TIME, MAX2(), MIN2(), myJunctionConflictEntryTime, myJunctionEntryTime, myJunctionEntryTimeNeverYield, myLane, myLaneChangeModel, MSVehicle::DriveProcessItem::mySetRequest, MSVehicle::DriveProcessItem::myVLinkWait, RandHelper::rand(), SIMTIME, SUMO_ATTR_JM_IGNORE_JUNCTION_FOE_PROB, SUMO_const_haltingSpeed, TIME2STEPS, and MSLeaderInfo::toString().
Referenced by checkLinkLeaderCurrentAndParallel(), and MSLane::isInsertionSuccess().
|
protected |
checks for link leaders of the current link as well as the parallel link (if there is one)
Definition at line 3434 of file MSVehicle.cpp.
References checkLinkLeader(), MSLink::getParallelLink(), MSVehicle::Influencer::getRespectJunctionLeaderPriority(), MSAbstractLaneChangeModel::getShadowDirection(), MSAbstractLaneChangeModel::getShadowLane(), MSGlobals::gUsingInternalLanes, myInfluencer, and myLaneChangeModel.
Referenced by planMoveInternal().
|
protected |
Definition at line 4173 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), DEBUG_COND, getBackPositionOnLane(), MSEdge::getBidiEdge(), MSLane::getBidiLane(), getCarFollowModel(), MSLane::getEdge(), Named::getID(), Named::getIDSecure(), MSLane::getLength(), MSLane::getLinkTo(), MSBaseVehicle::getMaxSpeed(), getPreviousSpeed(), getSpeed(), MSEdge::getSuccessors(), MSBaseVehicle::getVClass(), gPrecision, MSGlobals::gUsingInternalLanes, MSLink::haveRed(), MSLane::isInternal(), MAX2(), MSCFModel::minNextSpeed(), MSBaseVehicle::myCurrEdge, myFurtherLanes, myLane, MSVehicle::State::myPos, MSBaseVehicle::myRoute, myState, MSBaseVehicle::myStops, SIMTIME, SVC_RAIL_CLASSES, and toString().
Referenced by planMoveInternal(), and processLaneAdvances().
|
protected |
runs heuristic for keeping the intersection clear in case of downstream jamming
Definition at line 5097 of file MSVehicle.cpp.
References ACCEL2SPEED, MSVehicle::DriveProcessItem::availableSpace, MSCFModel::brakeGap(), DEBUG_COND, getBackPositionOnLane(), MSLane::getBidiLane(), getBrakeGap(), MSLane::getBruttoVehLenSum(), getCarFollowModel(), MSLane::getEdge(), MSLane::getFirstFullVehicle(), MSCFModel::getHeadwayTime(), Named::getID(), Named::getIDSecure(), MSBaseVehicle::getImpatience(), MSLink::getLane(), MSLane::getLastAnyVehicle(), getLateralPositionOnLane(), MSVehicle::DriveProcessItem::getLeaveSpeed(), MSBaseVehicle::getLength(), MSLane::getLength(), MSVehicleType::getLength(), MSVehicleType::getLengthWithGap(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), getPositionOnLane(), MSVehicle::Influencer::getRespectJunctionPriority(), MSLane::getSpaceTillLastStanding(), getSpeed(), MSBaseVehicle::getVehicleType(), MSLink::getViaLane(), MSLink::getViaLaneOrLane(), getWaitingTime(), MSGlobals::gUsingInternalLanes, MSVehicle::DriveProcessItem::hadStoppedVehicle, MSLink::havePriority(), MSLink::haveRed(), MSLink::isCont(), MSLink::isExitLink(), MSEdge::isInternal(), MSLink::isInternalJunctionLink(), MSAbstractLaneChangeModel::isOpposite(), MSEdge::isRoundabout(), MSBaseVehicle::isStopped(), keepClear(), MIN2(), MSVehicle::DriveProcessItem::myArrivalSpeed, MSVehicle::DriveProcessItem::myArrivalTime, MSVehicle::DriveProcessItem::myDistance, myHaveToWaitOnNextLink, myInfluencer, myLane, myLaneChangeModel, MSVehicle::DriveProcessItem::myLink, MSVehicle::DriveProcessItem::mySetRequest, MSVehicle::State::mySpeed, myState, MSVehicle::DriveProcessItem::myVLinkPass, MSVehicle::DriveProcessItem::myVLinkWait, MSLink::opened(), signalSet(), SIMSTEP, SIMTIME, STEPS2TIME, and VEH_SIGNAL_BRAKELIGHT.
Referenced by planMove().
|
privateinherited |
remove route at the end of the simulation
Definition at line 154 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getFlowID(), MSNet::getInstance(), MSNet::hasInstance(), and MSBaseVehicle::myRoute.
Referenced by MSBaseVehicle::replaceRoute(), and MSBaseVehicle::~MSBaseVehicle().
|
protected |
remove vehicle from further lanes (on leaving the network)
Definition at line 1030 of file MSVehicle.cpp.
References MSAbstractLaneChangeModel::cleanupShadowLane(), MSAbstractLaneChangeModel::cleanupTargetLane(), MSBaseVehicle::getVClass(), isRailway(), myFurtherLanes, myFurtherLanesPosLat, myLaneChangeModel, myLFLinkLanes, and removeApproachingInformation().
Referenced by onRemovalFromNet(), and ~MSVehicle().
SUMOTime MSVehicle::collisionStopTime | ( | ) | const |
Returns the remaining time a vehicle needs to stop due to a collision. A negative value indicates that the vehicle is not stopping due to a collision (or at all)
Definition at line 1613 of file MSVehicle.cpp.
References MAX2(), myCollisionImmunity, and MSBaseVehicle::myStops.
Referenced by MSLane::executeMovements(), MSLane::handleCollisionBetween(), and MSLane::handleIntermodalCollisionBetween().
double MSVehicle::computeAngle | ( | ) | const |
compute the current vehicle angle
Definition at line 1478 of file MSVehicle.cpp.
References Position::angleTo2D(), MSAbstractLaneChangeModel::calcAngleOffset(), DEBUG_COND, MSLane::geometryPositionAtOffset(), getAngle(), getBackPosition(), MSLane::getCanonicalPredecessorLane(), MSVehicle::Manoeuvre::getGUIIncrement(), Named::getID(), MSBaseVehicle::getLength(), MSLane::getLength(), MSBaseVehicle::getParameter(), getPosition(), getPositionOnLane(), MSLane::getShape(), MSBaseVehicle::getVehicleType(), MSGlobals::gLefthand, MSGlobals::gModelParkingManoeuver, MSLane::interpolateLanePosToGeometryPos(), Position::INVALID, MSAbstractLaneChangeModel::isChangingLanes(), MSLane::isInternal(), MSBaseVehicle::isParking(), PositionVector::length2D(), manoeuvreIsComplete(), MIN2(), myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, myManoeuvre, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, MSBaseVehicle::myStops, GeomHelper::naviDegree(), RAD2DEG, PositionVector::rotationAtOffset(), and SIMTIME.
Referenced by MSLaneChangerSublane::abortLCManeuver(), MSVehicleTransfer::checkInsertions(), MSLaneChanger::continueChange(), enterLaneAtInsertion(), enterLaneAtLaneChange(), executeMove(), handleCollisionStop(), and MSLaneChangerSublane::startChangeSublane().
|
protected |
updates myFurtherLanes on lane insertion or after collision
Definition at line 5567 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::getBidiLane(), MSLane::getEdge(), Named::getID(), MSLane::getIncomingLanes(), MSLane::getLength(), MSVehicleType::getLength(), MSLane::getLinkCont(), MSLane::getLogicalPredecessorLane(), MSLane::getPermissions(), MSBaseVehicle::getRoutePosition(), MSBaseVehicle::getVClass(), MSLane::isInternal(), MSEdge::isNormal(), MSAbstractLaneChangeModel::isOpposite(), isRailway(), MSVehicle::State::myBackPos, myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPosLat, MSBaseVehicle::myRoute, myState, MSBaseVehicle::myType, MSLane::setPartialOccupation(), SIMTIME, toString(), TURN, and TURN_LEFTHAND.
Referenced by enterLaneAtInsertion(), and handleCollisionStop().
bool MSVehicle::congested | ( | ) | const |
Returns true if vehicle's speed is below 60km/h. This is only relevant on highways. Overtaking on the right is allowed then.
Definition at line 1472 of file MSVehicle.cpp.
References MSLane::getSpeedLimit(), myLane, MSVehicle::State::mySpeed, and myState.
Referenced by MSAbstractLaneChangeModel::avoidOvertakeRight(), MSAbstractLaneChangeModel::congested(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), and MSLCM_LC2013::informLeader().
|
inherited |
create device of the given type
Definition at line 2274 of file MSBaseVehicle.cpp.
References MSDevice_Routing::buildVehicleDevices(), MSBaseVehicle::getDevice(), MSBaseVehicle::hasDeparted(), MSBaseVehicle::hasDevice(), MSBaseVehicle::myDevices, MSBaseVehicle::myParameter, MSMoveReminder::NOTIFICATION_DEPARTED, MSDevice_Routing::notifyEnter(), and TLF.
|
inlineprotectedvirtual |
register vehicle for drawing while outside the network
Reimplemented in GUIVehicle.
Definition at line 1827 of file MSVehicle.h.
Referenced by MSVehicle::Influencer::postProcessRemoteControl().
void MSVehicle::enterLaneAtInsertion | ( | MSLane * | enteredLane, |
double | pos, | ||
double | speed, | ||
double | posLat, | ||
MSMoveReminder::Notification | notification | ||
) |
Update when the vehicle enters a new lane in the emit step.
[in] | enteredLane | The lane the vehicle enters |
[in] | pos | The position the vehicle was inserted into the lane |
[in] | speed | The speed with which the vehicle was inserted into the lane |
[in] | posLat | The lateral position the vehicle was inserted into the lane |
[in] | notification | The cause of insertion (i.e. departure, teleport, parking) |
Definition at line 5633 of file MSVehicle.cpp.
References MSBaseVehicle::activateReminders(), MSBaseVehicle::addReminder(), computeAngle(), computeFurtherLanes(), DELTA_T, MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSBaseVehicle::getLength(), MSLane::getMoveReminders(), MSBaseVehicle::getVehicleType(), MSGlobals::gLaneChangeDuration, MSGlobals::gLateralResolution, MSBaseVehicle::hasDeparted(), Position::INVALID, MSAbstractLaneChangeModel::isOpposite(), M_PI, myAmOnNet, myAngle, myCachedPosition, MSBaseVehicle::myDeparture, myLane, myLaneChangeModel, myLastActionTime, myLastBestLanesEdge, myLastBestLanesInternalLane, MSVehicle::State::myPos, MSVehicle::State::myPreviousSpeed, MSVehicle::State::mySpeed, myState, MSBaseVehicle::NOT_YET_DEPARTED, MSMoveReminder::NOTIFICATION_LOAD_STATE, MSMoveReminder::NOTIFICATION_TELEPORT, MSBaseVehicle::onDepart(), MSAbstractLaneChangeModel::resetState(), MSAbstractLaneChangeModel::updateShadowLane(), and MSAbstractLaneChangeModel::updateTargetLane().
Referenced by MSLane::incorporateVehicle().
void MSVehicle::enterLaneAtLaneChange | ( | MSLane * | enteredLane | ) |
Update when the vehicle enters a new lane in the laneChange step.
[in] | enteredLane | The lane the vehicle enters |
Definition at line 5468 of file MSVehicle.cpp.
References MSBaseVehicle::activateReminders(), MSBaseVehicle::addReminder(), computeAngle(), DEBUG_COND, MSLane::getBidiLane(), MSBaseVehicle::getEdge(), Named::getID(), Named::getIDSecure(), MSVehicleType::getLength(), MSLane::getLogicalPredecessorLane(), MSLane::getMoveReminders(), MSLane::getPermissions(), MSBaseVehicle::getVClass(), MSBaseVehicle::getVehicleType(), Position::INVALID, MSAbstractLaneChangeModel::isChangingLanes(), isRailway(), myAmOnNet, myAngle, MSVehicle::State::myBackPos, myCachedPosition, myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, MSMoveReminder::NOTIFICATION_LANE_CHANGE, MSLane::resetPartialOccupation(), MSAbstractLaneChangeModel::setNoShadowPartialOccupator(), MSLane::setPartialOccupation(), SIMTIME, SVC_RAIL_CLASSES, toString(), and updateBestLanes().
Referenced by MSAbstractLaneChangeModel::primaryLaneChanged().
void MSVehicle::enterLaneAtMove | ( | MSLane * | enteredLane, |
bool | onTeleporting = false |
||
) |
Update when the vehicle enters a new lane in the move step.
[in] | enteredLane | The lane the vehicle enters |
[in] | onTeleporting | Whether the lane was entered while being teleported |
Definition at line 5407 of file MSVehicle.cpp.
References MSBaseVehicle::activateReminders(), adaptLaneEntering2MoveReminder(), MSVehicle::Influencer::adaptLaneTimeLine(), MSLane::getBidiLane(), MSLane::getEdge(), Named::getID(), MSLane::getIndex(), getLateralOverlap(), MSLink::getLateralShift(), MSLane::getLinkTo(), MSLane::getPermissions(), MSBaseVehicle::getVClass(), MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), MSGlobals::gLateralResolution, MSBaseVehicle::haveValidStopEdges(), Position::INVALID, MSEdge::isInternal(), MSAbstractLaneChangeModel::isOpposite(), isRailway(), MAX2(), myAmOnNet, myCachedPosition, MSBaseVehicle::myCurrEdge, myFurtherLanesPosLat, myInfluencer, myLane, myLaneChangeModel, myLastBestLanesEdge, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_TELEPORT, overlap(), MSLane::setPartialOccupation(), and SUMOVehicleParameter::via.
Referenced by MSVehicleTransfer::add(), MSVehicleTransfer::checkInsertions(), MSDevice_Bluelight::notifyMove(), and processLaneAdvances().
|
protected |
return time (s) and distance to the next stop
Definition at line 7932 of file MSVehicle.cpp.
References MSStop::edge, SUMOVehicleParameter::Stop::endPos, getAcceleration(), getCarFollowModel(), MSBaseVehicle::getEdge(), MSLane::getEdge(), MSEdge::getLanes(), MSLane::getLength(), MSVehicleType::getLength(), MSCFModel::getMaxAccel(), MSCFModel::getMaxDecel(), MSEdge::getMinimumTravelTime(), getPositionOnLane(), MSStop::getSpeed(), getSpeed(), MSLane::getVehicleMaxSpeed(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::hasStops(), INVALID_DOUBLE, MSStop::lane, MAX2(), MIN2(), MSBaseVehicle::myCurrEdge, myLane, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, and MSStop::pars.
Referenced by getStopArrivalDelay(), getStopDelay(), and slowDownForSchedule().
void MSVehicle::executeFractionalMove | ( | double | dist | ) |
move vehicle forward by the given distance during insertion
Definition at line 4756 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::forceVehicleInsertion(), MSNet::getCurrentTimeStep(), Named::getID(), MSNet::getInstance(), getLateralPositionOnLane(), getPositionOnLane(), getSpeed(), getUpcomingLanesUntil(), Position::INVALID, MSLane::isInternal(), myCachedPosition, myFurtherLanes, myFurtherLanesPosLat, myLane, MSVehicle::State::myLastCoveredDist, myLFLinkLanes, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, MSMoveReminder::NOTIFICATION_JUNCTION, processLaneAdvances(), MSLane::removeVehicle(), SIMTIME, toString(), and workOnMoveReminders().
Referenced by MSLane::insertVehicle().
bool MSVehicle::executeMove | ( | ) |
Executes planned vehicle movements with regards to right-of-way.
This method goes through all DriveProcessItems in myLFLinkLanes in order to find a speed that is safe for all upcoming links.
Using this speed the position is updated and the vehicle is moved to the next lane (myLane is updated) if the end of the current lane is reached (this may happen multiple times in this method)
The vehicle also sets the lanes it is in-lapping into and informs them about it.
Definition at line 4487 of file MSVehicle.cpp.
References ACCEL2SPEED, MSDevice_ElecHybrid::acceleration(), accelThresholdForWaiting(), MSAbstractLaneChangeModel::changedToOpposite(), computeAngle(), MSDevice_ElecHybrid::consumption(), DEBUG_COND, DELTA_T, MSNet::EMERGENCYSTOP, MSCFModel::finalizeSpeed(), gDebugFlag1, MSAbstractLaneChangeModel::getAngleOffset(), getBackLane(), getCarFollowModel(), MSDevice_ElecHybrid::getConsum(), MSBaseVehicle::getDevice(), MSLane::getEdge(), Named::getID(), Named::getIDSecure(), MSLane::getIndex(), MSNet::getInstance(), MSEdge::getLanes(), getLateralOverlap(), getLateralPositionOnLane(), MSBaseVehicle::getLength(), MSLane::getLength(), MSBaseVehicle::getNextStop(), MSEdge::getNumLanes(), MSLane::getOpposite(), MSEdge::getOppositeEdge(), MSLane::getOppositePos(), MSLane::getParallelOpposite(), MSDevice_ElecHybrid::getParameterDouble(), getPositionOnLane(), MSAbstractLaneChangeModel::getShadowLane(), getSpeed(), MSCFModel::getStartupDelay(), MSBaseVehicle::getVClass(), MSVehicleType::getVehicleClass(), MSNet::getVehicleControl(), MSGlobals::gLateralResolution, MSGlobals::gSemiImplicitEulerUpdate, MSGlobals::gStartupWaitThreshold, hasArrivedInternal(), MSAbstractLaneChangeModel::hasBlueLight(), MSNet::informVehicleStateListener(), Position::INVALID, MSAbstractLaneChangeModel::isOpposite(), isRailway(), MSBaseVehicle::isStopped(), MSEdge::isVaporizing(), leaveLaneBack(), MAX2(), MIN2(), myAcceleration, myActionStep, myAngle, MSVehicle::State::myBackPos, myCachedPosition, myCollisionImmunity, myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myLastCoveredDist, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, myStopDist, myTimeSinceStartup, MSBaseVehicle::myType, MSMoveReminder::NOTIFICATION_JUNCTION, NUMERICAL_EPS_SPEED, MSAbstractLaneChangeModel::prepareStep(), processLaneAdvances(), processLinkApproaches(), processTraCISpeedControl(), MSVehicleControl::registerEmergencyStop(), MSAbstractLaneChangeModel::resetSpeedLat(), setBlinkerInformation(), setBrakingSignals(), MSDevice_ElecHybrid::setConsum(), setEmergencyBlueLight(), MSAbstractLaneChangeModel::setPreviousAngleOffset(), SIMSTEP, SIMTIME, SOFT_ASSERT, SPEED2ACCEL, SUMO_ATTR_MAXIMUMPOWER, SVC_EMERGENCY, time2string(), TL, toString(), TS, updateBestLanes(), updateFurtherLanes(), MSAbstractLaneChangeModel::updateShadowLane(), updateState(), MSAbstractLaneChangeModel::updateTargetLane(), updateTimeLoss(), updateWaitingTime(), workOnMoveReminders(), and WRITE_WARNINGF.
Referenced by MSLane::executeMovements().
void MSVehicle::fixPosition | ( | ) |
repair errors in vehicle position after changing between internal edges
Definition at line 6523 of file MSVehicle.cpp.
References MSGlobals::gLaneChangeDuration, MSAbstractLaneChangeModel::isChangingLanes(), myLaneChangeModel, MSVehicle::State::myPosLat, and myState.
Referenced by MSAbstractLaneChangeModel::endLaneChangeManeuver().
|
inlinevirtual |
Returns the vehicle's acceleration in m/s (this is computed as the last step's mean acceleration in case that a stop occurs within the middle of the time-step)
Reimplemented from MSBaseVehicle.
Definition at line 514 of file MSVehicle.h.
References myAcceleration.
Referenced by MSCFModel_CC::_ploeg(), MSCFModel_EIDM::_v(), MSCFModel_CACC::_v(), MSCFModel_CC::_v(), MSLCM_SL2015::checkBlockingVehicles(), MSLaneChanger::checkChange(), MSLCM_SL2015::commitManoeuvre(), MSDevice_SSM::computeGlobalMeasures(), MSLaneChanger::computeOvertakingTime(), MSDevice_SSM::estimateConflictTimes(), MSAbstractLaneChangeModel::estimateLCDuration(), estimateTimeToNextStop(), MSCFModel_CC::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSCFModel_W99::followSpeed(), MSCFModel_Wiedemann::followSpeed(), MSAbstractLaneChangeModel::getAssumedDecelForLaneChangeDuration(), GUIVehicle::getColorValue(), MSCFModel_CC::getParameter(), GUIVehicle::getParameterWindow(), MSCFModel::getSecureGap(), MSCFModel_CC::getVehicleInformation(), MSLCM_LC2013::informLeader(), MSDevice_Tripinfo::lowAcceleration(), MSCFModel_EIDM::slowToStartTerm(), MSCFModel_CACC::speedGapControl(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSFCDExport::write(), and MSBatteryExport::write().
|
inline |
Returns the number of seconds waited (speed was lesser than 0.1m/s) within the last millisecs.
Definition at line 710 of file MSVehicle.h.
References getWaitingTime(), and STEPS2TIME.
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), GUIBaseVehicle::getScaleValue(), and keepClear().
|
inline |
Returns the vehicle's action step length in millisecs, i.e. the interval between two action points.
Definition at line 525 of file MSVehicle.h.
References MSVehicleType::getActionStepLength(), and MSBaseVehicle::myType.
Referenced by MSLaneChanger::checkChange(), MSLeaderInfo::getSubLanes(), isActionStep(), loadState(), processNextStop(), setActionStepLength(), and MSLaneChangerSublane::startChangeSublane().
|
inline |
Returns the vehicle's action step length in secs, i.e. the interval between two action points.
Definition at line 533 of file MSVehicle.h.
References MSVehicleType::getActionStepLengthSecs(), and MSBaseVehicle::myType.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLCHelper::canSaveBlockerLength(), MSLCM_SL2015::checkBlockingVehicles(), MSLCM_SL2015::checkStrategicChange(), MSLCM_SL2015::commitManoeuvre(), MSCFModel::finalizeSpeed(), MSCFModel::freeSpeed(), MSLCM_SL2015::getLateralDrift(), MSLeaderInfo::getSubLanes(), MSLCM_SL2015::informLeader(), MSLane::isInsertionSuccess(), MSLCM_SL2015::keepLatGap(), MSLCM_LC2013::prepareStep(), MSLCM_SL2015::setOwnState(), MSLaneChangerSublane::startChangeSublane(), MSCFModel_IDM::stopSpeed(), MSCFModel_W99::stopSpeed(), MSCFModel_Wiedemann::stopSpeed(), MSCFModel_ACC::stopSpeed(), MSCFModel_CACC::stopSpeed(), MSCFModel_Krauss::stopSpeed(), and MSLCM_SL2015::updateExpectedSublaneSpeeds().
|
inlinevirtual |
Returns the vehicle's direction in radians.
Implements SUMOVehicle.
Definition at line 731 of file MSVehicle.h.
References myAngle.
Referenced by computeAngle(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), GUIVehicle::getAngle(), MSStageDriving::getAngle(), getBoundingBox(), MSCFModel_CC::getParameter(), MSLane::handleCollisionBetween(), MSLink::isInFront(), and MSLaneChangerSublane::startChangeSublane().
|
inlinevirtualinherited |
Definition at line 401 of file MSBaseVehicle.h.
References MSBaseVehicle::myArrivalLane.
Referenced by GUIBaseVehicle::drawStopLabels().
|
inlinevirtualinherited |
Returns this vehicle's desired arrivalPos for its current route (may change on reroute)
Implements SUMOVehicle.
Definition at line 397 of file MSBaseVehicle.h.
References MSBaseVehicle::myArrivalPos.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), GUIBaseVehicle::drawStopLabels(), MSBaseVehicle::insertStop(), MSLane::isInsertionSuccess(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), and rerouteParkingArea().
|
protected |
Definition at line 3035 of file MSVehicle.cpp.
References DELTA_T, getCarFollowModel(), MSCFModel::getMinimalArrivalTime(), MSGlobals::gSemiImplicitEulerUpdate, MSBaseVehicle::isStopped(), MAX2(), MSVehicle::State::mySpeed, myState, and MSBaseVehicle::myStops.
Referenced by planMoveInternal().
|
virtual |
Returns the lane the where the rear of the object is currently at.
Implements SUMOTrafficObject.
Definition at line 4891 of file MSVehicle.cpp.
References myFurtherLanes, and myLane.
Referenced by executeMove().
const Position MSVehicle::getBackPosition | ( | ) | const |
Definition at line 1542 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::geometryPositionAtOffset(), getBackPositionOnLane(), Named::getID(), MSNet::getInstance(), MSVehicleType::getLength(), MSAbstractLaneChangeModel::getShadowLane(), MSGlobals::gLefthand, MSGlobals::gSublane, MSNet::hasElevation(), interpolateLateralZ(), MSAbstractLaneChangeModel::isChangingLanes(), MAX2(), myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, MSBaseVehicle::myType, and toString().
Referenced by computeAngle(), getBoundingBox(), getBoundingPoly(), getSlope(), MSPModel_Striping::moveInDirection(), and MSDevice_FCD::shapeFilter().
|
inline |
Get the vehicle's position relative to its current lane.
Definition at line 405 of file MSVehicle.h.
References getBackPositionOnLane(), and myLane.
Referenced by checkReversal(), getBackPosition(), getBackPositionOnLane(), getBackPositionOnLane(), getPositionOnLane(), and joinTrainPart().
|
inlinevirtual |
Get the vehicle's position relative to the given lane.
Implements SUMOTrafficObject.
Definition at line 398 of file MSVehicle.h.
References getBackPositionOnLane().
Referenced by adaptToLeaders(), MSLane::addLeaders(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), MSLaneChangerSublane::checkChangeToNewLane(), checkRewindLinkLanes(), MSDevice_SSM::classifyEncounter(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::freeInsertion(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSLane::getLeader(), getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLane::getLeadersOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLane::getOppositeFollower(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSPModel_Striping::getVehicleObstacles(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), joinTrainPartFront(), MSLane::lastInsertion(), MSLane::vehicle_position_sorter::operator()(), MSLane::vehicle_natural_position_sorter::operator()(), MSLaneChangerSublane::outputLCEnded(), MSLaneChangerSublane::outputLCStarted(), and MSLane::safeInsertionSpeed().
|
protected |
Definition at line 4981 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::getBidiLane(), MSLane::getEdge(), getFurtherLanes(), MSAbstractLaneChangeModel::getFurtherTargetLanes(), Named::getID(), Named::getIDSecure(), MSNet::getInstance(), MSLane::getLength(), MSVehicleType::getLength(), MSAbstractLaneChangeModel::getShadowFurtherLanes(), MSAbstractLaneChangeModel::getShadowFurtherLanesPosLat(), MSAbstractLaneChangeModel::getShadowLane(), MSAbstractLaneChangeModel::getTargetLane(), MSAbstractLaneChangeModel::isOpposite(), MIN2(), MSVehicle::State::myBackPos, myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPos, myState, MSBaseVehicle::myType, SIMTIME, SOFT_ASSERT, time2string(), toString(), and WRITE_WARNING.
|
virtual |
Returns the velocity/lane influencer.
If no influencer was existing before, one is built, first
Implements MSBaseVehicle.
Definition at line 7293 of file MSVehicle.cpp.
References getInfluencer().
|
virtual |
double MSVehicle::getBestLaneDist | ( | ) | const |
returns the distance that can be driven without lane change
Definition at line 6504 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLane::isInsertionSuccess().
int MSVehicle::getBestLaneOffset | ( | ) | const |
Definition at line 6495 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLCM_LC2013::changed(), MSLCM_SL2015::changed(), GUIVehicle::getColorValue(), GUIBaseVehicle::getScaleValue(), and MSLane::isInsertionSuccess().
const std::vector< MSVehicle::LaneQ > & MSVehicle::getBestLanes | ( | ) | const |
Returns the description of best lanes to use in order to continue the route.
Definition at line 5816 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLane::appropriate(), MSLaneChanger::avoidDeadlock(), MSLaneChanger::change(), MSLaneChanger::changeOpposite(), MSLaneChangerSublane::checkChangeHelper(), MSDevice_ToC::checkDynamicToC(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), MSLaneChanger::getBestLanesOpposite(), MSEdge::getDepartLane(), MSLaneChanger::resolveDeadlock(), MSLCM_LC2013::saveBlockerLength(), MSLCM_SL2015::saveBlockerLength(), and MSLCM_SL2015::updateExpectedSublaneSpeeds().
const std::vector< MSLane * > & MSVehicle::getBestLanesContinuation | ( | ) | const |
Returns the best sequence of lanes to continue the route starting at myLane.
Definition at line 6324 of file MSVehicle.cpp.
References myBestLanes, and myEmptyLaneVector.
Referenced by adaptToLeader(), MSLane::addLeaders(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), MSLane::appropriate(), MSLaneChanger::avoidDeadlock(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), GUIVehicle::drawRouteHelper(), MSLane::executeMovements(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), getLeader(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeLeader(), getPositionAlongBestLanes(), MSLaneChanger::getRealLeader(), getUpcomingLanesUntil(), MSLane::insertVehicle(), MSCFModel_EIDM::internalspeedlimit(), MSLCM_SL2015::isBidi(), MSLane::isInsertionSuccess(), MSLane::lastInsertion(), MSDevice_GLOSA::notifyEnter(), MSDevice_Bluelight::notifyMove(), planMoveInternal(), processLinkApproaches(), setBlinkerInformation(), unsafeLinkAhead(), updateBestLanes(), and updateDriveItems().
Returns the best sequence of lanes to continue the route starting at the given lane.
Definition at line 6333 of file MSVehicle.cpp.
References MSLane::getEdge(), MSLane::getLinkCont(), MSEdge::isInternal(), myBestLanes, and myEmptyLaneVector.
|
inherited |
Retrieve a boolean parameter for the traffic object.
paramName | the parameter name |
required | whether it is an error if the parameter is not set |
deflt | the default value to take if the parameter is not set (the default in the OptionsCont takes precedence) |
Definition at line 76 of file SUMOTrafficObject.cpp.
References Named::getID(), SUMOTrafficObject::getStringParam(), SUMOTrafficObject::isPerson(), SUMOTrafficObject::isVehicle(), TL, StringUtils::toBool(), toString(), and WRITE_ERRORF.
Referenced by MSDevice_GLOSA::buildVehicleDevices(), and MSDevice_ToC::buildVehicleDevices().
|
virtual |
get bounding rectangle
Implements SUMOVehicle.
Definition at line 7009 of file MSVehicle.cpp.
References PositionVector::append(), BUS_FLEXIBLE, Position::distanceTo2D(), PositionVector::extrapolate2D(), getAngle(), getBackPosition(), MSVehicleType::getGuiShape(), MSBaseVehicle::getLength(), getPosition(), MSVehicleType::getWidth(), M_PI, MAX2(), MIN2(), PositionVector::move2side(), myFurtherLanes, MSBaseVehicle::myType, RAIL, RAIL_CAR, RAIL_CARGO, PositionVector::reverse(), TRUCK_1TRAILER, and TRUCK_SEMITRAILER.
Referenced by MSLane::detectCollisions(), GUIBaseVehicle::drawAction_drawPersonsAndContainers(), and getBoundingPoly().
PositionVector MSVehicle::getBoundingPoly | ( | double | offset = 0 | ) | const |
get bounding polygon
Definition at line 7048 of file MSVehicle.cpp.
References PositionVector::extrapolate2D(), getBackPosition(), getBoundingBox(), MSVehicleType::getGuiShape(), getPosition(), MSVehicleType::getWidth(), MAX2(), MIN2(), PositionVector::move2side(), MSBaseVehicle::myType, PASSENGER, PASSENGER_HATCHBACK, PASSENGER_SEDAN, PASSENGER_VAN, PASSENGER_WAGON, and PositionVector::scaleRelative().
Referenced by MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), and GUIBaseVehicle::drawAction_drawPersonsAndContainers().
|
virtual |
get distance for coming to a stop (used for rerouting checks)
Implements SUMOVehicle.
Definition at line 2055 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), getCarFollowModel(), and getSpeed().
Referenced by MSLaneChanger::avoidDeadlock(), checkRewindLinkLanes(), MSVehicle::Influencer::gapControlSpeed(), planMoveInternal(), and MSLane::safeInsertionSpeed().
|
inline |
Returns the vehicle's car following model definition.
This is simply a wrapper around the vehicle type's car-following model retrieval for a shorter access.
Definition at line 965 of file MSVehicle.h.
References MSVehicleType::getCarFollowModel(), and MSBaseVehicle::myType.
Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), accelThresholdForWaiting(), MSDevice_GLOSA::adaptSpeed(), MSLCM_LC2013::adaptSpeedToPedestrians(), adaptToJunctionLeader(), adaptToLeader(), adaptToLeaders(), adaptToOncomingLeader(), MSPModel_Striping::addCrossingVehs(), MSCriticalFollowerDistanceInfo::addFollower(), MSLane::addLeaders(), MSLCM_LC2013::anticipateFollowSpeed(), MSLCHelper::canSaveBlockerLength(), MSLCM_SL2015::checkBlockingVehicles(), MSLaneChanger::checkChange(), MSLCM_LC2013_CC::checkChangeBeforeCommitting(), MSLane::checkFailure(), MSLane::checkForPedestrians(), MSLaneChanger::checkOppositeStop(), checkReversal(), checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSLCM_SL2015::commitFollowSpeed(), MSLCM_SL2015::commitManoeuvre(), MSLaneChanger::computeOvertakingTime(), MSLaneChanger::computeSafeOppositeLength(), MSLaneChanger::computeSurplusGap(), MSLink::couldBrakeForLeader(), MSLane::detectCollisionBetween(), MSDevice_GLOSA::distance_at_continuous_accel(), MSDevice_GLOSA::earliest_arrival(), MSDevice_SSM::estimateConflictTimes(), estimateTimeToNextStop(), executeMove(), MSLane::freeInsertion(), getArrivalTime(), getBrakeGap(), MSAbstractLaneChangeModel::getCarFollowModel(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), getCurrentApparentDecel(), getFollower(), LIBSUMO_NAMESPACE::Vehicle::getFollowSpeed(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), MSLane::getLeader(), getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLaneChanger::getMaxOvertakingSpeed(), MSLane::getMissingRearGap(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSBaseVehicle::getPrefixedParameter(), MSLaneChanger::getRealLeader(), getRerouteOrigin(), MSCFModel_CACC::getSecureGap(), LIBSUMO_NAMESPACE::Vehicle::getSecureGap(), MSLCHelper::getSpeedPreservingSecureGap(), LIBSUMO_NAMESPACE::Vehicle::getStopSpeed(), GUIVehicle::getTypeParameterWindow(), MSLink::getZipperSpeed(), MSLane::handleCollisionBetween(), handleCollisionStop(), MSLane::handleIntermodalCollisionBetween(), MSIdling_Stop::idle(), MSVehicle::Influencer::implicitSpeedRemote(), MSLCM_DK2008::informBlocker(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSLCM_SL2015::informLeaders(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), isLeader(), MSLane::lastInsertion(), MSDevice_Bluelight::notifyMove(), MSDevice_StationFinder::notifyMove(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop(), MSLCM_LC2013::overtakeDistance(), MSLCM_DK2008::patchSpeed(), planMoveInternal(), MSLCM_SL2015::preventSliding(), processLinkApproaches(), processNextStop(), registerInsertionApproach(), MSAbstractLaneChangeModel::remainingTime(), MSDevice_ToC::requestToC(), MSLane::safeInsertionSpeed(), GUIVehicle::selectBlockingFoes(), setBlinkerInformation(), MSBaseVehicle::setCarFollowModelParameter(), MSAbstractLaneChangeModel::setFollowerGaps(), MSAbstractLaneChangeModel::setLeaderGaps(), MSAbstractLaneChangeModel::setOrigLeaderGaps(), MSDevice_ToC::setState(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), slowDownForSchedule(), MSCFModel_CACC::speedGapControl(), MSDevice_GLOSA::time_to_junction_at_continuous_accel(), unsafeLinkAhead(), updateBestLanes(), MSLCHelper::updateBlockerLength(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), updateState(), MSLCM_DK2008::wantsChangeToLeft(), and MSLCM_DK2008::wantsChangeToRight().
|
inline |
Returns the vehicle's car following model variables.
Definition at line 986 of file MSVehicle.h.
References myCFVariables.
Referenced by MSCFModel_CC::_acc(), MSCFModel_CC::_cacc(), MSCFModel_CC::_cc(), MSCFModel_CC::_consensus(), MSCFModel_CC::_flatbed(), MSCFModel_CC::_ploeg(), MSCFModel_EIDM::_v(), MSCFModel_ACC::_v(), MSCFModel_IDM::_v(), MSCFModel_CACC::_v(), MSCFModel_CC::_v(), MSCFModel_Kerner::_v(), MSCFModel_Wiedemann::_v(), MSCFModel_SmartSK::_vsafe(), MSCFModel_CC::changeWholePlatoonLane(), MSCFModel_CC::commitToLaneChange(), MSCFModel_CC::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSCFModel_IDM::finalizeSpeed(), MSCFModel_Kerner::finalizeSpeed(), MSCFModel_PWag2009::finalizeSpeed(), MSCFModel_SmartSK::finalizeSpeed(), MSCFModel_Wiedemann::finalizeSpeed(), MSCFModel_CC::followSpeed(), MSCFModel_EIDM::followSpeed(), MSCFModel_PWag2009::followSpeed(), MSCFModel_SmartSK::followSpeed(), MSCFModel_CC::freeSpeed(), MSCFModel_EIDM::freeSpeed(), MSCFModel_CC::getACCAcceleration(), MSCFModel_CC::getActiveController(), MSCFModel_CC::getCACCConstantSpacing(), MSCFModel_CACC::getParameter(), MSCFModel_CC::getParameter(), MSCFModel_CC::getSecureGap(), MSCFModel_CC::getVehicleInformation(), MSCFModel_CC::interactionGap(), MSCFModel_EIDM::internalsecuregap(), MSCFModel_EIDM::internalspeedlimit(), MSCFModel_CC::isLeader(), MSCFModel_CC::isPlatoonLaneChangeSafe(), MSCFModel_CC::maxNextSpeed(), MSCFModel_CC::minNextSpeed(), MSCFModel_Krauss::patchSpeedBeforeLC(), MSCFModel_CC::performPlatoonLaneChange(), MSCFModel_CC::recomputeParameters(), MSCFModel_CC::resetConsensus(), MSCFModel_CC::setLeader(), MSCFModel_CACC::setParameter(), MSCFModel_CC::setParameter(), MSCFModel_EIDM::stopSpeed(), MSCFModel_CC::stopSpeed(), MSCFModel_SmartSK::stopSpeed(), MSCFModel_CC::switchOnACC(), and MSCFModel_SmartSK::updateMyHeadway().
double MSVehicle::getCenterOnEdge | ( | const MSLane * | lane = 0 | ) | const |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0)
Definition at line 6752 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::getBidiLane(), MSLane::getCenterOnEdge(), MSLane::getEdge(), Named::getID(), Named::getIDSecure(), MSLane::getRightSideOnEdge(), MSAbstractLaneChangeModel::getShadowDirection(), MSAbstractLaneChangeModel::getShadowFurtherLanes(), MSAbstractLaneChangeModel::getShadowFurtherLanesPosLat(), MSAbstractLaneChangeModel::getShadowLane(), MSLane::getWidth(), MSAbstractLaneChangeModel::isOpposite(), myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPosLat, and myState.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), MSLCM_SL2015::checkBlocking(), MSLCM_SL2015::commitFollowSpeed(), MSLCM_SL2015::computeSpeedGain(), MSLane::detectCollisionBetween(), getLeftSideOnEdge(), getRightSideOnEdge(), MSLCM_SL2015::getVehicleCenter(), MSLCM_SL2015::keepLatGap(), and MSLCM_SL2015::updateCFRelated().
|
inherited |
Returns the energy charged to the battery in the current time step (Wh)
Definition at line 2105 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getDevice(), MSDevice_Battery::getEnergyCharged(), and MSDevice_ElecHybrid::getEnergyCharged().
Referenced by GUIVehicle::getColorValue(), and GUIVehicle::getParameterWindow().
|
inlineinherited |
Definition at line 1009 of file MSBaseVehicle.h.
References MSBaseVehicle::myChargingMemory.
Referenced by GUIBaseVehicle::drawChargingInfo(), and MSDevice_StationFinder::findChargingStation().
|
inlinevirtualinherited |
Returns the precomputed factor by which the driver wants to be faster than the speed limit.
Implements SUMOTrafficObject.
Definition at line 569 of file MSBaseVehicle.h.
References MSBaseVehicle::myChosenSpeedFactor.
Referenced by MSLane::getDepartSpeed(), GUIVehicle::getParameterWindow(), GUIMEVehicle::getParameterWindow(), MSCFModel_EIDM::internalspeedlimit(), MSDevice_GLOSA::MSDevice_GLOSA(), MSDevice_GLOSA::notifyMove(), GUISUMOViewParent::onUpdSpeedFactor(), and slowDownForSchedule().
|
inlineinherited |
Definition at line 807 of file MSBaseVehicle.h.
References MSBaseVehicle::myContainerDevice.
Referenced by GUIBaseVehicle::getNumContainers().
|
virtualinherited |
Returns the number of containers.
Implements SUMOVehicle.
Definition at line 2204 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::containerNumber, MSBaseVehicle::myContainerDevice, MSBaseVehicle::myParameter, and MSDevice_Transportable::size().
Referenced by MSBaseVehicle::allowsBoarding(), MEVehicle::checkStop(), GUIVehicle::getParameterWindow(), leaveLane(), MEVehicle::mayProceed(), processNextStop(), MEVehicle::processStop(), and MSXMLRawOut::writeVehicle().
|
virtualinherited |
retrieve riding containers
Implements SUMOVehicle.
Definition at line 2233 of file MSBaseVehicle.cpp.
References MSDevice_Transportable::getTransportables(), MSBaseVehicle::myContainerDevice, and MSBaseVehicle::myEmptyTransportableVector.
Referenced by GUIBaseVehicle::getPopUpMenu(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdSelectTransported(), and MSXMLRawOut::writeVehicle().
double MSVehicle::getCurrentApparentDecel | ( | ) | const |
get apparent deceleration based on vType parameters and current acceleration
Definition at line 7726 of file MSVehicle.cpp.
References MSCFModel::getApparentDecel(), and getCarFollowModel().
|
virtual |
Returns the edge the vehicle is currently at (possibly an internal edge or nullptr)
Reimplemented from MSBaseVehicle.
Definition at line 8065 of file MSVehicle.cpp.
References MSBaseVehicle::getEdge(), MSLane::getEdge(), and myLane.
Referenced by joinTrainPartFront().
|
inherited |
get the current parking area stop or nullptr
Definition at line 1143 of file MSBaseVehicle.cpp.
References MSBaseVehicle::isParking(), and MSBaseVehicle::myStops.
Referenced by MSVehicleTransfer::checkInsertions(), and MSVehicle::Manoeuvre::configureExitManoeuvre().
|
inlinevirtualinherited |
Returns an iterator pointing to the current edge in this vehicles route.
Implements SUMOVehicle.
Definition at line 301 of file MSBaseVehicle.h.
References MSBaseVehicle::myCurrEdge.
Referenced by GUIBaseVehicle::drawStopLabels(), MSDevice_SSM::findFoeConflictLane(), MSLane::getLeaderOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSIdling_Stop::idle(), MSBaseVehicle::insertStop(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), and LIBSUMO_NAMESPACE::TrafficLight::updateConstraints().
double MSVehicle::getDeltaPos | ( | const double | accel | ) | const |
calculates the distance covered in the next integration step given an acceleration and assuming the current velocity. (gives different results for different integration methods, e.g., euler vs. ballistic)
[in] | accel | the assumed acceleration |
Definition at line 3588 of file MSVehicle.cpp.
References ACCEL2SPEED, MSGlobals::gSemiImplicitEulerUpdate, MAX2(), MSVehicle::State::mySpeed, myState, and SPEED2DIST.
Referenced by updateState().
|
virtualinherited |
Returns the depart delay.
Implements SUMOVehicle.
Definition at line 643 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::depart, MSBaseVehicle::getDeparture(), MSBaseVehicle::getParameter(), MSBaseVehicle::hasDeparted(), and SIMSTEP.
Referenced by GUIVehicle::getColorValue(), GUIMEVehicle::getColorValue(), GUIVehicle::getParameterWindow(), GUIMEVehicle::getParameterWindow(), GUIBaseVehicle::getScaleValue(), and MSLane::insertVehicle().
|
inlinevirtualinherited |
Returns this vehicle's real departure position.
Implements SUMOVehicle.
Definition at line 389 of file MSBaseVehicle.h.
References MSBaseVehicle::myDepartPos.
|
inlinevirtualinherited |
Returns this vehicle's real departure time.
Implements SUMOVehicle.
Definition at line 365 of file MSBaseVehicle.h.
References MSBaseVehicle::myDeparture.
Referenced by MSBaseVehicle::getDepartDelay(), LIBSUMO_NAMESPACE::Vehicle::getDeparture(), MSDevice_GLOSA::notifyEnter(), and MSVehicle::Influencer::postProcessRemoteControl().
|
virtualinherited |
Returns a device of the given type if it exists, nullptr otherwise.
Implements SUMOTrafficObject.
Definition at line 996 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDevices.
Referenced by MSBaseVehicle::allowsBoarding(), boardTransportables(), MEVehicle::checkStop(), MSBaseVehicle::createDevice(), LIBSUMO_NAMESPACE::Vehicle::dispatchTaxi(), GUIBaseVehicle::drawOnPos(), executeMove(), MSCFModel_EIDM::freeSpeed(), MSBaseVehicle::getChargedEnergy(), MSBaseVehicle::getElecHybridCurrent(), MSBaseVehicle::getMaxChargeRate(), GUIVehicle::getParameterWindow(), MSBaseVehicle::getRelativeStateOfCharge(), MSBaseVehicle::getStateOfCharge(), initDevices(), MSCFModel_EIDM::internalspeedlimit(), MEVehicle::mayProceed(), MSDevice_Bluelight::notifyMove(), planMoveInternal(), processNextStop(), GUIVehicle::rerouteDRTStop(), MSStageDriving::setArrived(), updateBestLanes(), and MSBatteryExport::write().
|
inherited |
try to retrieve the given parameter from any of the vehicles devices, raise InvalidArgument if no device parameter by that name exists
Definition at line 2293 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDevices, and TLF.
Referenced by MSBaseVehicle::getPrefixedParameter().
|
inlinevirtualinherited |
Returns this vehicle's devices.
Implements SUMOVehicle.
Definition at line 481 of file MSBaseVehicle.h.
References MSBaseVehicle::myDevices.
Referenced by GUIBaseVehicle::getDeviceDescription().
|
protected |
get the distance from the start of this lane to the start of the next normal lane (or 0 if this lane is a normal lane)
Definition at line 1303 of file MSVehicle.cpp.
References MSLane::getCanonicalSuccessorLane(), MSBaseVehicle::getLength(), MSLane::getLength(), getPositionOnLane(), MSLane::isInternal(), MSLane::isNormal(), MAX2(), and myLane.
Referenced by adaptToOncomingLeader().
double MSVehicle::getDistanceToPosition | ( | double | destPos, |
const MSLane * | destLane | ||
) | const |
Compute distance that will be covered, if the vehicle moves to a given position on its route, starting at its current position.
destPos | position on the destination edge that shall be reached |
destLane | destination lane that shall be reached |
Definition at line 6547 of file MSVehicle.cpp.
References getPositionOnLane(), isOnRoad(), myLane, and MSBaseVehicle::myRoute.
Referenced by MSVehicle::Influencer::gapControlSpeed(), MSVehicle::Influencer::implicitDeltaPosRemote(), MSVehicle::Influencer::implicitSpeedRemote(), and MSDevice_StationFinder::notifyMove().
std::shared_ptr< MSSimpleDriverState > MSVehicle::getDriverState | ( | ) | const |
Returns the vehicle driver's state.
Definition at line 7702 of file MSVehicle.cpp.
References MSDevice_DriverState::getDriverState(), and myDriverState.
Referenced by MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), MSCFModel::applyOwnSpeedPerceptionError(), and MSDevice_ToC::setAwareness().
|
virtualinherited |
Returns the edge the vehicle is currently at.
Implements SUMOTrafficObject.
Definition at line 222 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge.
Referenced by MSVehicleTransfer::add(), MSBaseVehicle::addStop(), MELoop::changeSegment(), MELoop::checkCar(), MSVehicleTransfer::checkInsertions(), GUIBaseVehicle::drawOnPos(), enterLaneAtLaneChange(), estimateTimeToNextStop(), METriggeredCalibrator::execute(), MSLane::executeMovements(), MSDevice_SSM::findFoeConflictLane(), LIBSUMO_NAMESPACE::Vehicle::getAllowedSpeed(), MEVehicle::getAngle(), MEVehicle::getAverageSpeed(), GUIMEVehicle::getCenteringBoundary(), MSBaseVehicle::getCurrentEdge(), getCurrentEdge(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance2D(), GUIMEVehicle::getEdgeID(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MEVehicle::getPosition(), MEVehicle::getRightSideOnEdge(), MSBaseVehicle::getRNG(), MSBaseVehicle::getRNGIndex(), LIBSUMO_NAMESPACE::Vehicle::getRoadID(), GUIBaseVehicle::getScaleValue(), MEVehicle::getSlope(), MSLCM_SL2015::getVehicleCenter(), MSBaseVehicle::isJumping(), TraCIServerAPI_Vehicle::processSet(), MESegment::receive(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::reroute(), rerouteParkingArea(), MELoop::teleportVehicle(), MEVehicle::updateDetectors(), MSFCDExport::write(), and MSBatteryExport::write().
|
inherited |
Returns actual current (A) of ElecHybrid device RICE_CHECK: Is this the current consumed from the overhead wire or the current driving the powertrain of the vehicle? RICE_REV_JS: It is the current drawn from the overhead wire (value if the vehicle is not connected to overhead wire?)
Definition at line 2130 of file MSBaseVehicle.cpp.
References MSDevice_ElecHybrid::getCurrentFromOverheadWire(), and MSBaseVehicle::getDevice().
Referenced by GUIVehicle::getParameterWindow().
|
inlinevirtualinherited |
retrieve parameters for the energy consumption model
Implements SUMOVehicle.
Definition at line 812 of file MSBaseVehicle.h.
References MSBaseVehicle::getEmissionParameters(), MSBaseVehicle::getVehicleType(), and MSBaseVehicle::myEnergyParams.
Referenced by MSBaseVehicle::getEmissionParameters(), MSBaseVehicle::getEmissions(), and MSBaseVehicle::initDevices().
|
inlineinherited |
Returns emissions of the current state The value is always per 1s, so multiply by step length if necessary.
Definition at line 827 of file MSBaseVehicle.h.
References PollutantsInterface::compute(), MSBaseVehicle::getAcceleration(), MSVehicleType::getEmissionClass(), MSBaseVehicle::getEmissionParameters(), SUMOTrafficObject::getSlope(), SUMOTrafficObject::getSpeed(), SUMOVehicle::isIdling(), MSBaseVehicle::isOnRoad(), and MSBaseVehicle::myType.
Referenced by LIBSUMO_NAMESPACE::Vehicle::getCO2Emission(), LIBSUMO_NAMESPACE::Vehicle::getCOEmission(), LIBSUMO_NAMESPACE::Vehicle::getElectricityConsumption(), LIBSUMO_NAMESPACE::Vehicle::getFuelConsumption(), LIBSUMO_NAMESPACE::Vehicle::getHCEmission(), LIBSUMO_NAMESPACE::Vehicle::getNOxEmission(), and LIBSUMO_NAMESPACE::Vehicle::getPMxEmission().
|
inherited |
Retrieve a floating point parameter for the traffic object.
paramName | the parameter name |
required | whether it is an error if the parameter is not set |
deflt | the default value to take if the parameter is not set (the default in the OptionsCont takes precedence) |
Definition at line 58 of file SUMOTrafficObject.cpp.
References Named::getID(), SUMOTrafficObject::getStringParam(), SUMOTrafficObject::isPerson(), Distribution_Parameterized::isValid(), SUMOTrafficObject::isVehicle(), Distribution_Parameterized::sample(), TL, toString(), and WRITE_ERRORF.
Referenced by MSDevice_Bluelight::buildVehicleDevices(), MSDevice_DriverState::buildVehicleDevices(), MSDevice_Friction::buildVehicleDevices(), MSDevice_GLOSA::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSDevice_ToC::buildVehicleDevices(), MSDevice_Taxi::dispatchShared(), MSPModel_JuPedSim::execute(), MSDevice_ToC::getDynamicMRMProbability(), MSDevice_ToC::getOpenGapParams(), MSPModel_Striping::moveInDirectionOnLane(), MSDevice_GLOSA::notifyEnter(), MSDevice_Bluelight::notifyMove(), and MSDevice_Battery::readParameterValue().
|
privateinherited |
reconstruct flow id from vehicle id
Definition at line 164 of file MSBaseVehicle.cpp.
References Named::getID().
Referenced by MSBaseVehicle::checkRouteRemoval().
|
virtual |
Returns the follower of the vehicle looking for a fixed distance.
If the distance is not given it is set to the value of MSCFModel::brakeGap(2*roadSpeed, 4.5, 0) The gap returned does not include the minGap. If there are multiple followers, the one that maximizes the term (getSecureGap - gap) is returned.
dist | up to which distance to look at least for a leader |
Reimplemented from MSBaseVehicle.
Definition at line 6586 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), MSLane::FOLLOW_NEVER, getCarFollowModel(), MSLane::getEdge(), MSLane::getFollower(), getPositionOnLane(), MSEdge::getSpeedLimit(), and myLane.
Referenced by MSLaneChanger::yieldToDeadlockOncoming(), and MSLaneChanger::yieldToOppositeWaiting().
double MSVehicle::getFriction | ( | ) | const |
Returns the current friction on the road as perceived by the friction device.
Definition at line 7708 of file MSVehicle.cpp.
References MSDevice_Friction::getMeasuredFriction(), and myFrictionDevice.
Referenced by MSCFModel::finalizeSpeed().
|
inline |
Definition at line 831 of file MSVehicle.h.
References myFurtherLanes.
Referenced by MSLane::detectCollisionBetween(), getBackPositionOnLane(), MSLane::getFollowersOnConsecutive(), MSAbstractLaneChangeModel::updateShadowLane(), and MSAbstractLaneChangeModel::updateTargetLane().
|
inline |
Definition at line 835 of file MSVehicle.h.
References myFurtherLanesPosLat.
Referenced by MSAbstractLaneChangeModel::updateShadowLane().
|
inherited |
Returns noise emissions of the current state.
Definition at line 2140 of file MSBaseVehicle.cpp.
References HelpersHarmonoise::computeNoise(), MSBaseVehicle::getAcceleration(), MSVehicleType::getEmissionClass(), SUMOTrafficObject::getSpeed(), SUMOVehicle::isIdling(), MSBaseVehicle::isOnRoad(), and MSBaseVehicle::myType.
Referenced by GUIVehicle::getColorValue(), LIBSUMO_NAMESPACE::Vehicle::getNoiseEmission(), and GUIVehicle::getParameterWindow().
|
inlineinherited |
Returns the id.
Definition at line 74 of file Named.h.
References Named::myID.
Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSDriveWay::_saveState(), MSCFModel_EIDM::_v(), MSCFModel_ACC::_v(), MSCFModel_IDM::_v(), MSCFModel_CACC::_v(), MSCFModel_Wiedemann::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChangerSublane::abortLCManeuver(), MSTransportable::abortStage(), MSDevice_GLOSA::adaptSpeed(), MSLCM_LC2013::adaptSpeedToPedestrians(), adaptToJunctionLeader(), adaptToLeader(), adaptToLeaderDistance(), adaptToLeaders(), adaptToOncomingLeader(), MSVehicleTransfer::add(), MSDetectorControl::add(), MSPModel_JuPedSim::add(), MSPModel_Striping::add(), PCPolyContainer::add(), ShapeContainer::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSDriveWay::addBidiFoes(), MSTractionSubstation::addChargeValueForOutput(), MSChargingStation::addChargeValueForOutput(), MSOverheadWire::addChargeValueForOutput(), NBNodeCont::addCluster2Join(), NLHandler::addConflict(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), NIXMLEdgesHandler::addEdge(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSLane::addLeaders(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), MSLaneChangerSublane::addOutsideLeaders(), MSTractionSubstation::addOverheadWireClampToCircuit(), MSTractionSubstation::addOverheadWireInnerSegmentToCircuit(), MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSDriveWay::addParallelFoes(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), MSDevice_Taxi::addReservation(), MSDispatch::addReservation(), MSRouteHandler::addRideOrTransport(), RONet::addRouteDef(), MSDriveWay::addSidings(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), RORouteHandler::addStop(), ROVehicle::addStop(), MSBaseVehicle::addStop(), MSNet::addStoppingPlace(), MSRouteHandler::addTranship(), addTransportable(), AGActivityTripWriter::addTrip(), MSPModel_JuPedSim::addWaitingSet(), NIXMLConnectionsHandler::addWalkingArea(), MSBaseVehicle::allowsBoarding(), MSTransportable::appendStage(), LIBSUMO_NAMESPACE::Person::appendWalkingStage(), MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilterLateralDistanceSinglePass(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), MSLaneChanger::avoidDeadlock(), MSDevice_ToC::awarenessRecoveryStep(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSPModel_Interacting::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), boardTransportables(), brakeForOverlap(), NIVisumTL::build(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), MSTransportableDevice_Routing::buildDevices(), MSTransportableDevice_BTreceiver::buildDevices(), MSTransportableDevice_BTsender::buildDevices(), MSTransportableDevice_FCD::buildDevices(), MSTransportableDevice_FCDReplay::buildDevices(), NIImporter_VISUM::buildDistrictNode(), MSDriveWay::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), NLDetectorBuilder::buildInductLoop(), NBEdge::buildInnerEdges(), NLTriggerBuilder::buildInnerOverheadWireSegments(), GNETLSEditorFrame::buildInternalLanes(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBOwnTLDef::buildNemaPhases(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSPModel_JuPedSim::buildPedestrianNetwork(), MSDriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), libsumo::Helper::buildStopParameters(), MSDriveWay::buildSubFoe(), MSDevice_Bluelight::buildVehicleDevices(), MSVehicleDevice_BTreceiver::buildVehicleDevices(), MSVehicleDevice_BTsender::buildVehicleDevices(), MSDevice_DriverState::buildVehicleDevices(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice_FCD::buildVehicleDevices(), MSDevice_FCDReplay::buildVehicleDevices(), MSDevice_Friction::buildVehicleDevices(), MSDevice_GLOSA::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSDevice_SSM::buildVehicleDevices(), MSDevice_Taxi::buildVehicleDevices(), MSDevice_ToC::buildVehicleDevices(), MSDevice_Tripinfo::buildVehicleDevices(), MSDevice_Transportable::buildVehicleDevices(), MSDevice_Vehroutes::buildVehicleDevices(), MSDevice_Battery::buildVehicleDevices(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), NEMALogic::calculateInitialPhases170(), MSE2Collector::calculateTimeLossAndTimeOnDetector(), MSDevice_Taxi::cancelCurrentCustomers(), MSDevice_Taxi::cancelCustomer(), MSStageDriving::canLeaveVehicle(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLCHelper::canSaveBlockerLength(), MSDriveWay::canUseSiding(), MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLCM_SL2015::changed(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSActuatedTrafficLightLogic::changeStepAndDuration(), MSSimpleTrafficLightLogic::changeStepAndDuration(), LIBSUMO_NAMESPACE::Vehicle::changeTarget(), MSCFModel_CC::changeWholePlatoonLane(), MSTLLogicControl::check2Switch(), MSEdge::checkAndRegisterBiDirEdge(), MSLaneChanger::checkChange(), MSLaneChanger::checkChangeOpposite(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), NBEdgeCont::checkConsistency(), MSDriveWay::checkCrossingFlanks(), MSDevice_ToC::checkDynamicToC(), MSLane::checkFailure(), MSDriveWay::checkFlanks(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), checkLinkLeader(), MSE2Collector::checkPositioning(), MSRoute::checkRemoval(), checkReversal(), checkRewindLinkLanes(), MEVehicle::checkStop(), MSLCM_SL2015::checkStrategicChange(), MSAbstractLaneChangeModel::checkTraCICommands(), MSLaneChanger::checkTraCICommands(), MSLink::checkWalkingAreaFoe(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), MSDevice_SSM::closeEncounter(), RORouteHandler::closeRouteDistribution(), MSRouteHandler::closeVehicle(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), MSLCM_SL2015::commitManoeuvre(), IntermodalRouter< E, L, N, V >::compute(), NBTrafficLightDefinition::compute(), ROJTRRouter::compute(), computeAngle(), MSDispatch::computeDetourTime(), MSDispatch_GreedyClosest::computeDispatch(), NBNodeShapeComputer::computeEdgeBoundaries(), computeFurtherLanes(), MSDevice_SSM::computeGlobalMeasures(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), NBRampsComputer::computeRamps(), RODFNet::computeRoutesFor(), MSLaneChanger::computeSafeOppositeLength(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), MSLCM_LC2013::computeSpeedLat(), MSLCM_SL2015::computeSpeedLat(), MSDevice_SSM::computeSSMs(), MSLaneChanger::computeSurplusGap(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), MSDriveWay::conflictLaneOccupied(), NGNet::connect(), MSRailSignal::constraintsAllow(), NEMALogic::constructTimingAndPhaseDefs(), MSLaneChanger::continueChange(), MSLaneChangerSublane::continueChangeSublane(), libsumo::Helper::convertCartesianToRoadMap(), LIBSUMO_NAMESPACE::Person::convertTraCIStage(), NBLoadedSUMOTLDef::copyIndices(), NBOwnTLDef::correctConflicting(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GNETLSEditorFrame::TLSDefinition::createTLS(), GUINet::createTLWrapper(), MSDevice_Taxi::customerArrived(), NBNodeCont::customTLID(), MSDevice_ToC::deactivateDeliberateLCs(), libsumo::Helper::debugPrint(), MSLCM_SL2015::decideDirection(), MSActuatedTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSVehicleControl::deleteVehicle(), MSDevice_ElecHybrid::deleteVehicleFromCircuit(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSE3Collector::detectorUpdate(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSEdge::dictionaryHint(), NBNodeCont::discardTrafficLights(), MSDispatch_Greedy::dispatch(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), MSDevice_Taxi::dispatchShared(), GUILane::drawGL(), MSDevice_SSM::Encounter::Encounter(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), MSE3Collector::enter(), NEMAPhase::enter(), MSParkingArea::enter(), enterLaneAtLaneChange(), enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), MSTransportableControl::erase(), NEMALogic::error_handle_not_set(), MSStoppingPlaceRerouter::evaluateDestination(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), Command_RouteReplacement::execute(), MSDevice_BTreceiver::BTreceiverUpdate::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSPModel_JuPedSim::execute(), executeFractionalMove(), executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), MSDevice_SSM::filterByConflictType(), LIBSUMO_NAMESPACE::Person::filterReservation(), NBLoadedSUMOTLDef::finalChecks(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSLaneChanger::findCandidate(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), MSRailSignalControl::findDeadlockFoes(), MSDriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), MSDevice_SSM::flushGlobalMeasures(), MSDriveWay::foeDriveWayOccupied(), MSCFModel_CACC::followSpeed(), MSCFModel_EIDM::followSpeed(), MSCFModel_W99::followSpeed(), NBTrafficLightDefinition::forbids(), MSLaneChanger::foundHilltop(), MSCFModel_EIDM::freeSpeed(), NBNodeCont::generateNodeClusters(), MSDevice_Tripinfo::generateOutput(), MSDevice_StationFinder::generateOutput(), MSStopOut::generateOutputForUnfinished(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), getBackPosition(), getBackPositionOnLane(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), MSLaneChanger::getBestLanesOpposite(), NBOwnTLDef::getBestPair(), LIBSUMO_NAMESPACE::Edge::getBidiEdge(), LIBSUMO_NAMESPACE::Lane::getBidiLane(), SUMOTrafficObject::getBoolParam(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSDriveWay::getClickableTLLinkID(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSActuatedTrafficLightLogic::getConditions(), LIBSUMO_NAMESPACE::TrafficLight::getConstraintsByFoe(), LIBSUMO_NAMESPACE::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), MSCalibrator::getCurrentStateInterval(), NBNodeShapeComputer::getDefaultRadius(), MSDriveWay::getDepartureDriveway(), MSLink::getDescription(), MSStop::getDescription(), MSRailSignalConstraint_Predecessor::getDescription(), NBTrafficLightDefinition::getDescription(), MSStageTrip::getDestinationDescription(), GUIPerson::getDestinationEdgeID(), GUIPerson::getDestinationStopID(), MSDevice_SSM::getDetectionRange(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), MSRailSignal::LinkInfo::getDriveWay(), MSRailSignal::LinkInfo::getDriveWay(), GUIVehicle::getDriveWays(), MSSimpleTrafficLightLogic::getEarliest(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), LIBSUMO_NAMESPACE::RouteProbe::getEdgeID(), MSDevice_SSM::getExtraTime(), MSLane::getFirstVehicleInformation(), SUMOTrafficObject::getFloatParam(), MSBaseVehicle::getFlowID(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSPModel_InteractingState::getID(), MSPModel_Striping::PStateVehicle::getID(), NBEdge::getID(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), MSDriveWay::getJunctionLinkID(), LIBSUMO_NAMESPACE::Calibrator::getLaneID(), NEMALogic::getLaneInfoFromNEMAState(), MSParkingArea::getLastFreePos(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSSimpleTrafficLightLogic::getLatest(), getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSDevice_BTsender::getLocation(), MSDevice_SSM::getMDRAC_PRT(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), MSDevice_SSM::getMeasuresAndThresholds(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPModel_Striping::getNeighboringObstacles(), MSRailSignal::getNewDrivewayID(), MSCalibrator::getNewVehicleID(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSStageTrip::getOriginDescription(), MSDevice_SSM::getOutputFilename(), MSDevice_ElecHybrid::getOverheadWireSegmentID(), MSOverheadWire::getOverheadWireSegmentName(), MSDevice_StationFinder::getParameter(), MSDevice_ToC::getParameter(), MSActuatedTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIContainer::getParameterWindow(), GUILane::getParameterWindow(), GUILane::getParentName(), MSLane::getPartialBehind(), MSSimpleDriverState::getPerceivedHeadway(), MSSimpleDriverState::getPerceivedSpeedDifference(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), MSBaseVehicle::getPrefixedParameter(), MSCFModel_CC::getRadarMeasurements(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), LIBSUMO_NAMESPACE::Vehicle::getRoadID(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::Vehicle::getRouteID(), LIBSUMO_NAMESPACE::Calibrator::getRouteProbeID(), MSBaseVehicle::getRouteValidity(), GUIBaseVehicle::getScaleValue(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getSingularType(), MSTransportable::getSingularType(), LIBSUMO_NAMESPACE::Person::getStage(), MSStageDriving::getStageSummary(), MSStageTranship::getStageSummary(), MSStageWaiting::getStageSummary(), MSStageWalking::getStageSummary(), MSDevice_Taxi::getStopLane(), MSNet::getStoppingPlaceID(), SUMOTrafficObject::getStringParam(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), LIBSUMO_NAMESPACE::Vehicle::getTeleportingIDList(), SUMOTrafficObject::getTimeParam(), MSDriveWay::getTLLinkID(), NIImporter_OpenDrive::getTLSSecure(), MSDevice_ElecHybrid::getTractionSubstationID(), PedestrianEdge< E, L, N, V >::getTravelTime(), getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSRailSignalConstraint::getVeh(), LIBSUMO_NAMESPACE::Person::getVehicle(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), GUIPerson::getVehicleID(), MSPModel_Striping::getVehicleObstacles(), MSStageTrip::getVehicles(), MSDevice_SSM::getVehiclesOnJunction(), MSStageDriving::getWaitingDescription(), MSEdge::getWaitingVehicle(), MSStoppingPlaceRerouter::getWeight(), MSLink::getZipperSpeed(), GNEEdge::GNEEdge(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), MSRailSignal::hasInsertionConstraint(), MSDriveWay::hasJoin(), MSDriveWay::hasLinkConflict(), MSBaseVehicle::hasValidRouteStart(), hasValidRouteStart(), MSRailSignalControl::haveDeadlock(), MSBaseVehicle::haveValidStopEdges(), LIBSUMO_NAMESPACE::POI::highlight(), LIBSUMO_NAMESPACE::Vehicle::highlight(), MSIdling_Stop::idle(), MSIdling_RandomCircling::idle(), MSIdling_TaxiStand::idle(), MSLink::ignoreFoe(), ignoreFoe(), ignoreRed(), MSVehicle::Influencer::implicitDeltaPosRemote(), NBNode::indirectLeftShape(), MSLCM_LC2013::inform(), MSLCM_SL2015::inform(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSCalibrator::init(), NBEdge::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSRailSignal::init(), NEMALogic::init(), MSActuatedTrafficLightLogic::initAttributeOverride(), MSE2Collector::initAuxiliaries(), MESegment::initialise(), MSPModel_JuPedSim::initialize(), MSTrafficLightLogic::initMesoTLSPenalties(), NBOwnTLDef::initNeedsContRelation(), PolygonDynamics::initTrackedPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NIImporter_OpenStreetMap::insertEdge(), MSCFModel_IDM::insertionFollowSpeed(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSEdge::insertVehicle(), MSPModel_Striping::insertWalkArePaths(), MSLane::integrateNewVehicles(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isAllowed(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSBaseVehicle::isJumping(), isLeader(), MESegment::isOpen(), MSCFModel_CC::isPlatoonLaneChangeSafe(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), RORoute::isValid(), MSStageDriving::isWaitingFor(), MESegment::jamThresholdForSpeed(), NBNodeCont::joinNodeCluster(), joinTrainPartFront(), MSAbstractLaneChangeModel::laneChangeOutput(), lateralDistanceToLane(), MSE3Collector::leave(), MSE3Collector::leaveFront(), leaveLane(), leaveLaneBack(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), MSStopOut::loadedContainers(), MSStopOut::loadedPersons(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), loadState(), MSVehicleTransfer::loadState(), MSActuatedTrafficLightLogic::loadState(), ODDistrictCont::makeDistricts(), MSE2Collector::makeMoveNotification(), MSE2Collector::makeVehicleInfo(), NWWriter_OpenDrive::mapmatchRoadObjects(), MSDriveWay::match(), MEVehicle::mayProceed(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSDevice_FCDReplay::move(), MSTransportableDevice_FCDReplay::move(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::PState::moveTo(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), MSDevice_ToC::MRMExecutionStep(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSDevice_ElecHybrid::MSDevice_ElecHybrid(), MSDevice_Taxi::MSDevice_Taxi(), MSDevice_ToC::MSDevice_ToC(), MSE2Collector::MSE2Collector(), MSE2Collector::MSE2Collector(), MSLCM_LC2013::MSLCM_LC2013(), MSParkingArea::MSParkingArea(), MSSimpleDriverState::MSSimpleDriverState(), MSLCM_SL2015::mustOvertakeStopped(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), MSStateHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSDevice_FCDReplay::FCDHandler::myStartElement(), MSPModel_Interacting::nextBlocking(), MSLane::AnyVehicleIterator::nextIsMyVehicles(), MSDevice_ElecHybrid::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_GLOSA::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), MSCalibrator::VehicleRemover::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDriveWay::notifyEnter(), MSDevice_ElecHybrid::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDriveWay::notifyLeave(), MSDriveWay::notifyLeaveBack(), MSDevice_ElecHybrid::notifyMove(), MSDevice_Battery::notifyMove(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_GLOSA::notifyMove(), MSDevice_SSM::notifyMove(), MSE2Collector::notifyMove(), MSInductLoop::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_StationFinder::notifyMove(), MSDevice_ToC::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GNETLSEditorFrame::TLSDefinition::onCmdResetCurrentProgram(), onRemovalFromNet(), MSLink::opened(), RORouteHandler::openRoute(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), MSEdge::transportable_by_position_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), RODFNet::idComp::operator()(), MSLaneChangerSublane::outputLCStarted(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_stopPoints(), NIImporter_VISUM::parse_Turns(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildOverheadWireSection(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), MSRoutingEngine::patchSpeedForTurns(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSCFModel_CC::performAutoLaneChange(), planMove(), planMoveInternal(), MSLane::planMovements(), PolygonDynamics::PolygonDynamics(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), MSVehicle::Influencer::postProcessRemoteControl(), MSLCM_SL2015::prepareStep(), MSDevice_Taxi::prepareStop(), MSLCM_SL2015::preventSliding(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), MSStageDriving::proceed(), MSDevice_SSM::processEncounters(), processLaneAdvances(), processLinkApproaches(), processNextStop(), NIXMLNodesHandler::processNodeType(), TraCIServerAPI_Vehicle::processSet(), processTraCISpeedControl(), NIXMLNodesHandler::processTrafficLightDefinitions(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), NBNodeCont::pruneSlipLaneNodes(), MSPModel_Striping::PState::PState(), MSPModel_Striping::PState::PState(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdge::reduceGeometry(), MSNet::registerCollision(), MSPModel_Striping::registerCrossingApproach(), MSLink::removeApproaching(), MSLink::removeApproachingPerson(), LIBSUMO_NAMESPACE::TrafficLight::removeConstraints(), removePassedDriveItems(), MSCalibrator::removePending(), MSDispatch::removeReservation(), GNEJunction::removeTLSConnections(), NBNodeCont::rename(), NBTrafficLightLogicCont::rename(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::replaceStop(), MSTransportable::replaceVehicleType(), MSPerson::replaceWalk(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_SSM::requestsTrajectories(), MSDevice_ToC::requestToC(), MSStageTrip::reroute(), MSStoppingPlaceRerouter::reroute(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), rerouteParkingArea(), MSTransportable::rerouteParkingArea(), MSDevice_StationFinder::rerouteToChargingStation(), MSDriveWay::reserve(), MSDevice_ToC::resetDeliberateLCs(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), MSDevice_Bluelight::resetVehicle(), MSLaneChanger::resolveDeadlock(), LIBSUMO_NAMESPACE::Vehicle::resume(), MEVehicle::resumeFromStopping(), resumeFromStopping(), MSRailSignal::retrieveDriveWay(), NIImporter_OpenDrive::retrieveSignalEdges(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSStageWalking::routeOutput(), MSLane::safeInsertionSpeed(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSLCM_LC2013::saveBlockerLength(), MSLane::saveState(), MESegment::saveState(), MSDevice::saveState(), MSDevice_Battery::saveState(), MSDevice_Routing::saveState(), MSDevice_StationFinder::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSSimpleTrafficLightLogic::saveState(), MSStageDriving::saveState(), MSCalibrator::scheduleRemoval(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), setAngle(), MSLink::setApproaching(), MSLink::setApproaching(), setApproachingForAllLinks(), NBNodeCont::setAsTLControlled(), GNEJunction::setAttribute(), MSSimpleDriverState::setAwareness(), MSLane::setBidiLane(), MSEdge::setBidiLanes(), NLEdgeControlBuilder::setDefaultStopOffset(), MSBaseVehicle::setDepartAndArrivalEdge(), MSCalibrator::setFlow(), NBEdge::setGeometry(), MSBaseVehicle::setJunctionModelParameter(), MSTransportable::setJunctionModelParameter(), MSAbstractLaneChangeModel::setManeuverDist(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), MSDevice_Battery::setMaximumChargeRate(), NBEdge::setNodeBorder(), MSLane::setOpposite(), MSLCM_SL2015::setOwnState(), MSDevice_ToC::setParameter(), MSActuatedTrafficLightLogic::setParameter(), MSSimpleTrafficLightLogic::setParameter(), NEMALogic::setParameter(), MSCFModel_CACC::setParameter(), MSCFModel_CC::setParameter(), MSLane::setPartialOccupation(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), libsumo::Helper::setRemoteControlled(), libsumo::Helper::setRemoteControlled(), MSLink::setRequestInformation(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), LIBSUMO_NAMESPACE::Vehicle::setRouteID(), MSDevice_Battery::setStoppingThreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), MSStageDriving::setVehicle(), MSOverheadWire::setVoltage(), NBEdge::shiftPositionAtNode(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), slowDownForSchedule(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSCFModel_EIDM::stopSpeed(), MSStopOut::stopStarted(), MSRailSignal::storeTraCIVehicles(), MSLane::succLinkSec(), LIBSUMO_NAMESPACE::TrafficLight::swapConstraints(), MSDevice_ToC::switchHolderType(), GNETLSEditorFrame::TLSDefinition::switchProgram(), GUITrafficLightLogicWrapper::switchTLSLogic(), MSDevice_StationFinder::teleportToChargingStation(), MELoop::teleportVehicle(), MSDevice_ToC::ToCPreparationStep(), libsumo::Helper::TransportableStateListener::transportableStateChanged(), TraCIServer::transportableStateChanged(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSTriggeredRerouter::triggerRouting(), MSDevice_ToC::triggerUpwardToC(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), METriggeredCalibrator::tryEmit(), MSPModel_JuPedSim::tryPedestrianInsertion(), MSSOTLTrafficLightLogic::trySwitch(), MSActuatedTrafficLightLogic::trySwitch(), NEMALogic::trySwitch(), MSStopOut::unloadedContainers(), MSStopOut::unloadedPersons(), MSPModel_Interacting::unregisterCrossingApproach(), MSDevice_SSM::update(), MSSimpleDriverState::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), updateBestLanes(), MSLCHelper::updateBlockerLength(), MSLCM_SL2015::updateCFRelated(), MSDevice_StationFinder::updateChargeLimit(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffset(), MSRailSignal::updateCurrentPhase(), updateDriveItems(), MSDevice_SSM::updateEncounter(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), updateFurtherLanes(), MSLCM_SL2015::updateGaps(), GNENetHelper::AttributeCarriers::updateJunctionID(), MSDevice_Taxi::updateMove(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSVehicle::Influencer::updateRemoteControlRoute(), MSDispatch::updateReservationFromPos(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateShadowLane(), updateState(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), MSDevice_SSM::useGeoCoords(), NEMALogic::validate_timing(), NBNodeTypeComputer::validateRailCrossings(), libsumo::Helper::VehicleStateListener::vehicleStateChanged(), TraCIServer::vehicleStateChanged(), MSDynamicShapeUpdater::vehicleStateChanged(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSInstantInductLoop::write(), NBParking::write(), MSElecHybridExport::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSRailSignalConstraint_Predecessor::write(), MSElecHybridExport::writeAggregated(), MSLink::writeApproaching(), MSDriveWay::writeBlocks(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), MSDriveWay::writeDepatureBlocks(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), MSRoute::writeEdgeIDs(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), ROMAAssignments::writeInterval(), NWWriter_SUMO::writeJunction(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), MSDevice_SSM::writeLanesPositions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSTractionSubstation::writeOut(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_SUMO::writeRoundabout(), NWWriter_OpenDrive::writeSignals(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_SUMO::writeTrafficLight(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), MSLaneChanger::yieldToDeadlockOncoming(), MSLaneChanger::yieldToOppositeWaiting(), MSCalibrator::~MSCalibrator(), MSDevice_Transportable::~MSDevice_Transportable(), MSLaneSpeedTrigger::~MSLaneSpeedTrigger(), MSTriggeredRerouter::~MSTriggeredRerouter(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 67 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDriveWay::addSidings(), MSLaneChanger::avoidDeadlock(), MSDriveWay::canUseSiding(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChangeOpposite(), MSDriveWay::checkFlanks(), checkReversal(), checkRewindLinkLanes(), AStarRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), NBOwnTLDef::computeLogicAndConts(), MSDriveWay::conflictLaneOccupied(), NBPTLineCont::constructRoute(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), enterLaneAtLaneChange(), executeMove(), NBRailwayTopologyAnalyzer::extendDirectionPriority(), NBPTLineCont::findWay(), MSDriveWay::foeDriveWayOccupied(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), MSStopOut::generateOutputForUnfinished(), getBackPositionOnLane(), NBOwnTLDef::getBestCombination(), NBOwnTLDef::getBestPair(), getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLaneID(), LIBSUMO_NAMESPACE::Person::getLaneID(), getLatOffset(), MSLane::getLeaderOnConsecutive(), MSLaneChanger::getOncomingOppositeVehicle(), MSLaneChanger::getRealLeader(), GUIVehicle::getShadowLaneID(), GUIVehicle::getTargetLaneID(), MSDevice_SSM::getVehiclesOnJunction(), NBEdgeCont::guessRoundabouts(), MSDriveWay::hasLinkConflict(), MSCFModel_IDM::insertionFollowSpeed(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), libsumo::Helper::moveToXYMap_matchingRoutePosition(), MSDevice_Bluelight::notifyEnter(), MSDevice_Bluelight::notifyLeave(), MSDriveWay::notifyLeave(), MSDriveWay::notifyLeaveBack(), MSVehicle::Influencer::postProcessRemoteControl(), processNextStop(), MSBaseVehicle::replaceRoute(), MSStoppingPlaceRerouter::reroute(), MSBaseVehicle::reroute(), MSLaneChanger::resolveDeadlock(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), toString(), toString(), MSTriggeredRerouter::triggerRouting(), updateBestLanes(), MSLCHelper::updateBlockerLength(), MSAbstractLaneChangeModel::updateShadowLane(), MSPModel_Striping::PState::walk(), and MSLaneChanger::yieldToDeadlockOncoming().
|
virtualinherited |
Returns this vehicles impatience.
Implements SUMOVehicle.
Definition at line 988 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getBaseInfluencer(), MSBaseVehicle::getImpatience(), MSBaseVehicle::getVehicleType(), SUMOTrafficObject::getWaitingTime(), MSGlobals::gTimeToImpatience, MSBaseVehicle::hasInfluencer(), MAX2(), and MIN2().
Referenced by checkRewindLinkLanes(), MSLane::getCriticalLeader(), MSBaseVehicle::getImpatience(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), GUIVehicle::getParameterWindow(), MSLCM_LC2013::informFollower(), MSLane::isInsertionSuccess(), MESegment::isOpen(), planMoveInternal(), processLinkApproaches(), and GUIVehicle::selectBlockingFoes().
MSVehicle::Influencer & MSVehicle::getInfluencer | ( | ) |
Definition at line 7285 of file MSVehicle.cpp.
References myInfluencer.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_GLOSA::adaptSpeed(), LIBSUMO_NAMESPACE::Vehicle::changeLane(), LIBSUMO_NAMESPACE::Vehicle::changeLaneRelative(), MSLaneChanger::changeOpposite(), LIBSUMO_NAMESPACE::Vehicle::changeSublane(), MSLCM_SL2015::checkBlocking(), MSAbstractLaneChangeModel::checkTraCICommands(), MSDevice_ToC::deactivateDeliberateLCs(), LIBSUMO_NAMESPACE::Vehicle::deactivateGapControl(), MSLane::detectCollisionBetween(), GUIVehicle::drawRouteHelper(), getBaseInfluencer(), GUIVehicle::getLaneChangeMode(), GUIVehicle::getParameterWindow(), GUIVehicle::getSpeedMode(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), influenceChangeDecision(), MSLCM_SL2015::keepLatGap(), MSDevice_ToC::MRMExecutionStep(), MSDevice_Bluelight::notifyMove(), LIBSUMO_NAMESPACE::Vehicle::openGap(), MSDevice_ToC::requestToC(), MSDevice_ToC::resetDeliberateLCs(), LIBSUMO_NAMESPACE::Vehicle::setAcceleration(), LIBSUMO_NAMESPACE::Vehicle::setLaneChangeMode(), MSCFModel_CC::setParameter(), libsumo::Helper::setRemoteControlled(), LIBSUMO_NAMESPACE::Vehicle::setSignals(), LIBSUMO_NAMESPACE::Vehicle::setSpeed(), LIBSUMO_NAMESPACE::Vehicle::setSpeedMode(), MSDevice_ToC::setState(), LIBSUMO_NAMESPACE::Vehicle::slowDown(), MSLaneChangerSublane::startChangeSublane(), and updateWaitingTime().
const MSVehicle::Influencer * MSVehicle::getInfluencer | ( | ) | const |
Definition at line 7299 of file MSVehicle.cpp.
References myInfluencer.
|
inlinevirtual |
Returns the lane the vehicle is on.
Implements SUMOTrafficObject.
Definition at line 581 of file MSVehicle.h.
References myLane.
Referenced by MSLCM_LC2013::_patchSpeed(), MSCFModel_EIDM::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_GLOSA::adaptSpeed(), adaptToLeaderDistance(), adaptToLeaders(), adaptToOncomingLeader(), MSLane::addLeaders(), MSLaneChangerSublane::addOutsideLeaders(), MSLCM_LC2013::anticipateFollowSpeed(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), MSLaneChanger::avoidDeadlock(), MSLaneChangerSublane::change(), MSLaneChanger::changeOpposite(), MSLCM_SL2015::checkBlocking(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), MSLaneChangerSublane::checkChangeToNewLane(), MSDevice_ToC::checkDynamicToC(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), checkLinkLeader(), MSLaneChanger::checkOppositeStop(), MSLCM_SL2015::checkStrategicChange(), MSDevice_SSM::classifyEncounter(), MSLCM_SL2015::commitManoeuvre(), MSTrainHelper::computeCarriages(), MSDevice_SSM::computeGlobalMeasures(), MSLaneChanger::computeOvertakingTime(), MSLCM_SL2015::computeSpeedGain(), MSLaneChanger::computeSurplusGap(), MSAbstractLaneChangeModel::congested(), MSLaneChanger::continueChange(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSAbstractLaneChangeModel::determineTargetLane(), MSLCHelper::divergentRoute(), MSVTypeProbe::execute(), MSLane::executeMovements(), MSCFModel::finalizeSpeed(), MSCFModel_CC::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_IDM::finalizeSpeed(), MSLaneChangerSublane::findClosestLeader(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSCFModel_ACC::followSpeed(), MSCFModel_CACC::followSpeed(), MSCFModel_IDM::followSpeed(), MSCFModel_IDM::freeSpeed(), MSVehicle::Influencer::gapControlSpeed(), MSLaneChanger::getBestLanesOpposite(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSLCM_SL2015::getDesiredAlignment(), MSLane::getFollowersOnConsecutive(), MSAbstractLaneChangeModel::getForwardPos(), LIBSUMO_NAMESPACE::Vehicle::getLaneIndex(), MSLCM_SL2015::getLateralDrift(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLCM_SL2015::getLeftBorder(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLCM_SL2015::getNeighRight(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSAbstractLaneChangeModel::getNormalizedLaneIndex(), MSLaneChanger::getOncomingOppositeVehicle(), MSCFModel_CC::getParameter(), getPositionAlongBestLanes(), MSLCHelper::getRoundaboutDistBonus(), GUIBaseVehicle::getScaleValue(), MSAbstractLaneChangeModel::getShadowDirection(), MSVTKExport::getSpeed(), MSLCM_SL2015::getSublaneWidth(), MSLCM_SL2015::getVehicleCenter(), MSPModel_Striping::getVehicleObstacles(), MSLink::getZipperSpeed(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), MSVehicle::Influencer::implicitSpeedRemote(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSCFModel::interactionGap(), MSCFModel_EIDM::interactionGap(), MSCFModel_IDM::interactionGap(), MSCFModel_EIDM::internalspeedlimit(), MSLCM_SL2015::isBidi(), MSLCHelper::isBidiFollower(), MSLCHelper::isBidiLeader(), isLeader(), joinTrainPart(), joinTrainPartFront(), MSLCM_SL2015::keepLatGap(), leaveLane(), MSLeaderDistanceInfo::moveSamePosTo(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSLCM_SL2015::mustOvertakeStopped(), MSDevice_GLOSA::notifyEnter(), MSDevice_Vehroutes::notifyEnter(), MSDevice_Bluelight::notifyMove(), MSDevice_GLOSA::notifyMove(), MSDevice_StationFinder::notifyMove(), MSDevice_ToC::notifyMove(), MSLCM_SL2015::outsideEdge(), MSLCM_DK2008::patchSpeed(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), MSCFModel_Krauss::patchSpeedBeforeLC(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), MSLCM_LC2013::prepareStep(), MSLCM_SL2015::prepareStep(), MSLeaderInfo::removeOpposite(), MSLane::removeVehicle(), LIBSUMO_NAMESPACE::Vehicle::replaceStop(), MSLaneChanger::resolveDeadlock(), MSLane::safeInsertionSpeed(), MSLCM_LC2013::saveBlockerLength(), MSLCM_SL2015::saveBlockerLength(), MSAbstractLaneChangeModel::saveNeighbors(), setApproachingForAllLinks(), setBlinkerInformation(), MSLaneChangerSublane::startChangeSublane(), MSCFModel_IDM::stopSpeed(), MSLCM_SL2015::tieBrakeLeader(), MSLCM_SL2015::updateCFRelated(), MSLaneChangerSublane::updateChanger(), updateDriveItems(), MSDevice_SSM::updateEncounter(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::Influencer::updateRemoteControlRoute(), MSAbstractLaneChangeModel::updateShadowLane(), MSAbstractLaneChangeModel::updateTargetLane(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), workOnIdleReminders(), MSElecHybridExport::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSElecHybridExport::writeAggregated(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
MSAbstractLaneChangeModel & MSVehicle::getLaneChangeModel | ( | ) |
Definition at line 5798 of file MSVehicle.cpp.
References myLaneChangeModel.
Referenced by MSLaneChangerSublane::abortLCManeuver(), adaptToLeaders(), MSVehicleTransfer::add(), MSLaneChangerSublane::addOutsideLeaders(), libsumo::Helper::applySubscriptionFilterLateralDistance(), MSLaneChanger::applyTraCICommands(), MSLane::appropriate(), MSLaneChanger::avoidDeadlock(), MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeHelper(), MSLaneChanger::checkChangeOpposite(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), MSLaneChangerSublane::checkChangeToNewLane(), MSLaneChanger::checkOppositeStop(), MSAbstractLaneChangeModel::checkTraCICommands(), MSLaneChanger::checkTraCICommands(), MSDevice_SSM::classifyEncounter(), MSTrainHelper::computeCarriages(), MSLaneChanger::computeOvertakingTime(), MSLaneChanger::computeSafeOppositeLength(), MSLaneChanger::computeSurplusGap(), MSLaneChanger::continueChange(), MSLaneChangerSublane::continueChangeSublane(), MSLane::detectCollisionBetween(), MSLane::executeMovements(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSLaneChanger::getBestLanesOpposite(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), GUIVehicle::getDynamicAlignment(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLastLaneChangeOffset(), GUIVehicle::getLCStateCenter(), GUIVehicle::getLCStateLeft(), GUIVehicle::getLCStateRight(), MSLane::getLeader(), MSLink::getLeaderInfo(), GUIVehicle::getManeuverDist(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), GUIVehicle::getParameterWindow(), MSBaseVehicle::getPrefixedParameter(), MSLCHelper::getRoundaboutDistBonus(), GUIBaseVehicle::getScaleValue(), MSCFModel::getSecureGap(), GUIVehicle::getShadowLaneID(), MSLeaderInfo::getSubLanes(), GUIVehicle::getTargetLaneID(), GUIVehicle::getTypeParameterWindow(), MSLane::handleCollisionBetween(), MSLCM_SL2015::inform(), MSAbstractLaneChangeModel::MSLCMessager::informLeader(), MSAbstractLaneChangeModel::MSLCMessager::informNeighFollower(), MSAbstractLaneChangeModel::MSLCMessager::informNeighLeader(), MSLane::isInsertionSuccess(), isLeader(), lateralDistanceToLane(), MSDevice_Bluelight::notifyMove(), MSLaneChangerSublane::outputLCEnded(), MSLaneChangerSublane::outputLCStarted(), MSLaneChanger::registerUnchanged(), MSLeaderInfo::removeOpposite(), MSLane::resetPartialOccupation(), MSDevice_Bluelight::resetVehicle(), MSLaneChanger::resolveDeadlock(), GUIVehicle::selectBlockingFoes(), setApproachingForAllLinks(), MSLaneChanger::startChange(), MSLaneChangerSublane::startChangeSublane(), MSLCHelper::updateBlockerLength(), MSLaneChangerSublane::updateChanger(), MSLCM_SL2015::updateGaps(), MSFCDExport::write(), and MSXMLRawOut::writeVehicle().
const MSAbstractLaneChangeModel & MSVehicle::getLaneChangeModel | ( | ) | const |
Definition at line 5804 of file MSVehicle.cpp.
References myLaneChangeModel.
int MSVehicle::getLaneIndex | ( | ) | const |
Definition at line 6701 of file MSVehicle.cpp.
References MSLane::getIndex(), and myLane.
Referenced by MSLane::appropriate(), LIBSUMO_NAMESPACE::Vehicle::changeLaneRelative(), MSCFModel_CC::changeWholePlatoonLane(), influenceChangeDecision(), and MSCFModel_CC::performPlatoonLaneChange().
std::pair< const MSLane *, double > MSVehicle::getLanePosAfterDist | ( | double | distance | ) | const |
return lane and position along bestlanes at the given distance
Definition at line 6530 of file MSVehicle.cpp.
References getPositionOnLane(), getUpcomingLanesUntil(), and myLane.
Referenced by MSIdling_Stop::idle(), MSDevice_StationFinder::notifyMove(), and GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop().
|
inlinevirtual |
Returns the time of the vehicle's last action point.
Implements SUMOVehicle.
Definition at line 541 of file MSVehicle.h.
References myLastActionTime.
Referenced by LIBSUMO_NAMESPACE::Vehicle::getLastActionTime(), MSLink::getZipperSpeed(), and MSLane::loadState().
|
inline |
Get the distance the vehicle covered in the previous timestep.
Definition at line 381 of file MSVehicle.h.
References MSVehicle::State::lastCoveredDist(), and myState.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_SSM::checkConflictEntryAndExit(), and MSDevice_SSM::updatePassedEncounter().
double MSVehicle::getLateralOverlap | ( | ) | const |
return the amount by which the vehicle extends laterally outside it's primary lane
Definition at line 6938 of file MSVehicle.cpp.
References getLateralOverlap(), getLateralPositionOnLane(), and myLane.
Referenced by brakeForOverlap(), MSLCM_SL2015::checkStrategicChange(), MSLane::detectCollisionBetween(), enterLaneAtMove(), executeMove(), getLateralOverlap(), getLateralOverlap(), MSAbstractLaneChangeModel::getShadowLane(), MSLCM_SL2015::mustOvertakeStopped(), planMoveInternal(), MSLCM_LC2013::prepareStep(), and MSAbstractLaneChangeModel::updateShadowLane().
double MSVehicle::getLateralOverlap | ( | const MSLane * | lane | ) | const |
Definition at line 6933 of file MSVehicle.cpp.
References getLateralOverlap(), and getLateralPositionOnLane().
double MSVehicle::getLateralOverlap | ( | double | posLat, |
const MSLane * | lane | ||
) | const |
Definition at line 6927 of file MSVehicle.cpp.
References MSBaseVehicle::getVehicleType(), MSBaseVehicle::getWidth(), and MSLane::getWidth().
|
inlinevirtual |
Get the vehicle's lateral position on the lane.
Reimplemented from MSBaseVehicle.
Definition at line 413 of file MSVehicle.h.
References MSVehicle::State::myPosLat, and myState.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), libsumo::Helper::applySubscriptionFilterLateralDistance(), brakeForOverlap(), MSLaneChangerSublane::checkChangeToNewLane(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSLink::checkWalkingAreaFoe(), MSDevice_SSM::classifyEncounter(), MSTrainHelper::computeCarriages(), MSLaneChanger::continueChange(), MSAbstractLaneChangeModel::determineTargetLane(), executeFractionalMove(), executeMove(), MSLane::getCriticalLeader(), MSLane::getFollowersOnConsecutive(), getLateralOverlap(), getLateralOverlap(), getLatOffset(), MSLink::getLeaderInfo(), MSLCM_SL2015::getNeighRight(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), getPosition(), getPositionAlongBestLanes(), MSLCM_SL2015::getPosLat(), MSAbstractLaneChangeModel::getShadowLane(), MSLeaderInfo::getSubLanes(), MSLCM_SL2015::getVehicleCenter(), MSPModel_Striping::getVehicleObstacles(), GUIVehicle::getVisualPosition(), MSLCM_SL2015::keepLatGap(), lateralDistanceToLane(), MSLane::loadState(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSDevice_Vehroutes::notifyEnter(), MSDevice_Bluelight::notifyMove(), MSLane::vehicle_natural_position_sorter::operator()(), planMove(), planMoveInternal(), MSLCM_LC2013::prepareStep(), MSLCM_SL2015::prepareStep(), MSAbstractLaneChangeModel::primaryLaneChanged(), processLinkApproaches(), GUIVehicle::selectBlockingFoes(), setAngle(), setApproachingForAllLinks(), MSLaneChangerSublane::startChangeSublane(), validatePosition(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), and MSXMLRawOut::writeVehicle().
double MSVehicle::getLatOffset | ( | const MSLane * | lane | ) | const |
Get the offset that that must be added to interpret myState.myPosLat for the given lane.
Definition at line 6802 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::getBidiLane(), MSLane::getEdge(), MSAbstractLaneChangeModel::getFurtherTargetLanes(), Named::getID(), Named::getIDSecure(), getLateralPositionOnLane(), getLatOffset(), MSAbstractLaneChangeModel::getManeuverDist(), MSLane::getParallelOpposite(), MSLane::getRightSideOnEdge(), MSAbstractLaneChangeModel::getShadowFurtherLanes(), MSAbstractLaneChangeModel::getShadowFurtherLanesPosLat(), MSAbstractLaneChangeModel::getShadowLane(), MSAbstractLaneChangeModel::getTargetLane(), MSLane::getWidth(), myFurtherLanes, myFurtherLanesPosLat, myLane, myLaneChangeModel, MSVehicle::State::myPosLat, myState, SIMTIME, and toString().
Referenced by checkLinkLeader(), MSLane::getFirstVehicleInformation(), MSLane::getFollowersOnConsecutive(), MSLane::getLastVehicleInformation(), getLatOffset(), MSLink::getLeaderInfo(), MSLane::getLeadersOnConsecutive(), MSLane::getPartialBeyond(), MSDevice_Bluelight::notifyMove(), and MSLaneChangerSublane::startChangeSublane().
|
virtual |
Returns the leader of the vehicle looking for a fixed distance.
If the distance is not given it is calculated from the brake gap. The gap returned does not include the minGap.
dist | up to which distance to look at least for a leader |
Reimplemented from MSBaseVehicle.
Definition at line 6556 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), getBackPositionOnLane(), getBestLanesContinuation(), getCarFollowModel(), MSLane::getLeaderOnConsecutive(), MSLane::getLength(), MSVehicleType::getMinGap(), getPositionOnLane(), getSpeed(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), myLane, and MSLane::releaseVehicles().
Referenced by MSCFModel_EIDM::_v(), MSDevice_SSM::computeGlobalMeasures(), MSVehicle::Influencer::gapControlSpeed(), getTimeGapOnLane(), and MSFCDExport::write().
|
inherited |
Returns the number of leaving persons.
Definition at line 2179 of file MSBaseVehicle.cpp.
References MSStageDriving::canLeaveVehicle(), MSNet::getInstance(), MSBaseVehicle::getPersons(), MSVehicleControl::getVehicle(), MSNet::getVehicleControl(), MSBaseVehicle::myStops, and MSDevice_Transportable::willTransferAtJoin().
double MSVehicle::getLeftSideOnEdge | ( | const MSLane * | lane = 0 | ) | const |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0)
Definition at line 6746 of file MSVehicle.cpp.
References getCenterOnEdge(), MSBaseVehicle::getVehicleType(), and MSVehicleType::getWidth().
Referenced by MSLCM_SL2015::outsideEdge().
double MSVehicle::getLeftSideOnLane | ( | ) | const |
Get the lateral position of the vehicles left side on the lane:
Definition at line 6722 of file MSVehicle.cpp.
References MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), myLane, MSVehicle::State::myPosLat, and myState.
Referenced by MSLaneChangerSublane::addOutsideLeaders(), MSLane::getFollowersOnConsecutive(), MSLaneChangerSublane::getLeaders(), planMoveInternal(), and MSLaneChangerSublane::updateChanger().
double MSVehicle::getLeftSideOnLane | ( | const MSLane * | lane | ) | const |
Get the lateral position of the vehicles left side on the lane:
Definition at line 6734 of file MSVehicle.cpp.
References MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), MSVehicle::State::myPosLat, and myState.
|
inlinevirtualinherited |
Returns the vehicle's length.
Implements SUMOVehicle.
Definition at line 553 of file MSBaseVehicle.h.
References MSVehicleType::getLength(), and MSBaseVehicle::myType.
Referenced by MSBaseVehicle::addStop(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilters(), MSBaseVehicle::basePos(), MSAbstractLaneChangeModel::calcAngleOffset(), MSDevice_SSM::checkConflictEntryAndExit(), checkRewindLinkLanes(), MSDevice_SSM::classifyEncounter(), computeAngle(), MSTrainHelper::computeCarriages(), MSLane::detectCollisionBetween(), MSDevice_SSM::determineConflictPoint(), MSDevice_SSM::determineTTCandDRACandPPETandMDRAC(), GUIMEVehicle::drawAction_drawCarriageClass(), GUIVehicle::drawAction_drawLinkItems(), enterLaneAtInsertion(), executeMove(), MSDevice_SSM::findSurroundingVehicles(), MSVehicle::Influencer::gapControlSpeed(), MEVehicle::getBoundingBox(), getBoundingBox(), GUIMEVehicle::getCenteringBoundary(), getDistanceToLeaveJunction(), MSLane::getFollowersOnConsecutive(), LIBSUMO_NAMESPACE::Edge::getLastStepLength(), MSLink::getLeaderInfo(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), MSEdge::getOccupancy(), LIBSUMO_NAMESPACE::Vehicle::highlight(), MSLane::insertVehicle(), isLeader(), MSDevice_Bluelight::notifyMove(), planMoveInternal(), processNextStop(), MSBaseVehicle::replaceRoute(), MSLane::safeInsertionSpeed(), unsafeLinkAhead(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), updateFurtherLanes(), and MSDevice_SSM::updatePassedEncounter().
MSVehicle::ManoeuvreType MSVehicle::getManoeuvreType | ( | ) | const |
accessor function to myManoeuvre equivalent
Definition at line 7788 of file MSVehicle.cpp.
References MSVehicle::Manoeuvre::getManoeuvreType(), and myManoeuvre.
Referenced by planMove().
|
inherited |
Returns the maximum charge rate allowed by the battery in the current time step (W)
Definition at line 2120 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getDevice(), and MSDevice_Battery::getMaximumChargeRate().
Referenced by GUIVehicle::getParameterWindow().
|
virtualinherited |
Returns the maximum speed (the minimum of desired and technical maximum speed)
Implements SUMOTrafficObject.
Definition at line 206 of file MSBaseVehicle.cpp.
References MSVehicleType::getDesiredMaxSpeed(), MSVehicleType::getMaxSpeed(), MIN2(), MSBaseVehicle::myChosenSpeedFactor, and MSBaseVehicle::myType.
Referenced by MSCFModel_Wiedemann::_v(), MSVehicleTransfer::checkInsertions(), checkReversal(), MSCFModel_ACC::followSpeed(), GUIVehicle::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), MSVehicle::Influencer::implicitDeltaPosRemote(), MSVehicle::Influencer::implicitSpeedRemote(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSVehicle::Influencer::postProcessRemoteControl(), slowDownForSchedule(), updateBestLanes(), MSLCM_DK2008::wantsChangeToLeft(), and MSLCM_DK2008::wantsChangeToRight().
double MSVehicle::getMaxSpeedOnLane | ( | ) | const |
Returns the maximal speed for the vehicle on its current lane (including speed factor and deviation, i.e., not necessarily the allowed speed limit)
Definition at line 1384 of file MSVehicle.cpp.
References MSVehicleType::getMaxSpeed(), MSLane::getVehicleMaxSpeed(), myLane, and MSBaseVehicle::myType.
Referenced by MSDevice_SSM::estimateConflictTimes(), and MSLCM_LC2013::informFollower().
|
inline |
Returns the lane the vehicle is on Non const version indicates that something volatile is going on.
Definition at line 589 of file MSVehicle.h.
References myLane.
Referenced by MSLaneChanger::changeOpposite(), MSLaneChanger::checkChangeOpposite(), MSVehicleTransfer::checkInsertions(), MSLane::detectCollisions(), MSLane::executeMovements(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdRemoveObject(), GUIViewTraffic::onGamingClick(), MSVehicle::Influencer::postProcessRemoteControl(), LIBSUMO_NAMESPACE::Vehicle::remove(), MSVehicleTransfer::remove(), and MSCalibrator::removePending().
|
virtual |
returns the next edge (possibly an internal edge)
Reimplemented from MSBaseVehicle.
Definition at line 8071 of file MSVehicle.cpp.
References MSLane::getCanonicalSuccessorLane(), MSLane::getEdge(), MSEdge::getInternalFollowingEdge(), MSBaseVehicle::getVClass(), MSLane::isInternal(), MSBaseVehicle::myCurrEdge, myLane, MSBaseVehicle::myRoute, and MSBaseVehicle::succEdge().
|
virtualinherited |
get the upcoming parking area stop or nullptr
Implements SUMOVehicle.
Definition at line 1129 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops, MSStop::parkingarea, and MSStop::reached.
Referenced by rerouteParkingArea().
|
virtualinherited |
returns the next imminent stop in the stop queue
Implements SUMOVehicle.
Definition at line 1639 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_ToC::checkDynamicToC(), MSLaneChanger::checkOppositeStop(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), GUIBaseVehicle::drawAction_drawVehicleAsPolyWithCarriagges(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), executeMove(), LIBSUMO_NAMESPACE::Vehicle::getStopState(), MSLaneChanger::hasOppositeStop(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), processLaneAdvances(), processNextStop(), MSBaseVehicle::reroute(), LIBSUMO_NAMESPACE::Vehicle::resume(), and workOnMoveReminders().
|
virtualinherited |
return parameters for the next stop (SUMOVehicle Interface)
Implements SUMOVehicle.
Definition at line 1666 of file MSBaseVehicle.cpp.
References MSBaseVehicle::hasStops(), and MSBaseVehicle::myStops.
Referenced by MSTrainHelper::computeCarriages(), MSDriveWay::conflictLaneOccupied(), and MSLane::insertVehicle().
|
inline |
Get the distance and direction of the next upcoming turn for the vehicle (within its look-ahead range)
Definition at line 823 of file MSVehicle.h.
References myNextTurn.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), and MSLCM_SL2015::getDesiredAlignment().
|
inlinevirtualinherited |
Implements SUMOVehicle.
Definition at line 998 of file MSBaseVehicle.h.
References MSBaseVehicle::myNumberParkingReroutes.
Referenced by GUIBaseVehicle::drawOnPos(), and MSBaseVehicle::getPrefixedParameter().
|
inlinevirtualinherited |
Returns the number of new routes this vehicle got.
Implements SUMOVehicle.
Definition at line 450 of file MSBaseVehicle.h.
References MSBaseVehicle::myNumberReroutes.
Referenced by GUIBaseVehicle::drawGLAdditional(), GUIVehicle::getColorValue(), GUIMEVehicle::getColorValue(), and GUIBaseVehicle::getScaleValue().
|
inlinevirtualinherited |
return the numerical ID which is only for internal usage
Implements SUMOTrafficObject.
Definition at line 799 of file MSBaseVehicle.h.
References MSBaseVehicle::myNumericalID.
Referenced by MSLane::vehicle_position_sorter::operator()(), and MSVehicleTransfer::VehicleInformation::operator<().
|
virtualinherited |
Returns the distance that was already driven by this vehicle.
Implements SUMOVehicle.
Definition at line 673 of file MSBaseVehicle.cpp.
References SUMOTrafficObject::getPositionOnLane(), MSBaseVehicle::hasArrived(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myDepartPos, and MSBaseVehicle::myOdometer.
Referenced by LIBSUMO_NAMESPACE::Vehicle::getDistance(), GUIVehicle::getParameterWindow(), and GUIMEVehicle::getParameterWindow().
|
virtualinherited |
Returns the vehicle's parameter (including departure definition)
Implements SUMOTrafficObject.
Definition at line 188 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParameter.
Referenced by MSCFModel_CACC::_v(), MSLCM_SL2015::_wantsChangeSublane(), MSBaseVehicle::addStop(), checkLinkLeader(), computeAngle(), GUIVehicle::drawAction_drawCarriageClass(), GUIBaseVehicle::drawOnPos(), GUIBaseVehicle::drawStopLabels(), MSCFModel_CACC::freeSpeed(), MSBaseVehicle::getDepartDelay(), MSEdge::getDepartLane(), MSEdge::getDepartPosBound(), MSLane::getDepartPosLat(), MSLane::getDepartSpeed(), LIBSUMO_NAMESPACE::TrafficLight::getFutureTripIds(), MSLane::getInsertionChecks(), LIBSUMO_NAMESPACE::Vehicle::getLine(), GUIBaseVehicle::getOptionalName(), GUIVehicle::getParameterWindow(), GUIMEVehicle::getParameterWindow(), MSBaseVehicle::getPrefixedParameter(), GUIBaseVehicle::getScaleValue(), LIBSUMO_NAMESPACE::Vehicle::getVia(), MSRailSignal::hasInsertionConstraint(), ignoreFoe(), MSBaseVehicle::initTransientModelParams(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), MSAbstractLaneChangeModel::laneChangeOutput(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), GUIViewTraffic::onGamingClick(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), processNextStop(), rerouteParkingArea(), MSDevice_Bluelight::resetVehicle(), MSBaseVehicle::setCarFollowModelParameter(), GUIBaseVehicle::setFunctionalColor(), MSBaseVehicle::setJunctionModelParameter(), LIBSUMO_NAMESPACE::Vehicle::setLine(), LIBSUMO_NAMESPACE::Vehicle::setVia(), METriggeredCalibrator::tryEmit(), and LIBSUMO_NAMESPACE::TrafficLight::updateConstraints().
|
inherited |
get the valid parking access rights (vehicle settings override vehicle type settings)
Definition at line 1153 of file MSBaseVehicle.cpp.
References MSVehicleType::getParkingBadges(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::myParameter, SUMOVehicleParameter::parkingBadges, VEHPARS_PARKING_BADGES_SET, and SUMOVehicleParameter::wasSet().
Referenced by MSParkingArea::accepts(), and GUIVehicle::getParameterWindow().
|
inlineinherited |
Definition at line 1005 of file MSBaseVehicle.h.
References MSBaseVehicle::myParkingMemory.
Referenced by GUIBaseVehicle::drawParkingInfo(), and MSBaseVehicle::getPrefixedParameter().
const std::vector< const MSLane * > MSVehicle::getPastLanesUntil | ( | double | distance | ) | const |
Returns the sequence of past lanes (right-most on edge) based on the route starting at the current lane.
[in] | distance | The upstream distance to cover |
Definition at line 6421 of file MSVehicle.cpp.
References MSEdge::getInternalFollowingEdge(), MSEdge::getLanes(), MSLane::getLength(), MSLane::getLinkCont(), MSLane::getLogicalPredecessorLane(), MSLane::getOppositePos(), MSLane::getParallelOpposite(), getPositionOnLane(), MSBaseVehicle::getVClass(), MSLane::isInternal(), MSAbstractLaneChangeModel::isOpposite(), MSBaseVehicle::myCurrEdge, myLane, myLaneChangeModel, and MSBaseVehicle::myRoute.
Referenced by libsumo::Helper::applySubscriptionFilterLateralDistance(), and getUpstreamOppositeLanes().
|
inlineinherited |
Definition at line 711 of file MSBaseVehicle.h.
References MSBaseVehicle::myPastStops.
Referenced by MSVehicleTransfer::add(), LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), and LIBSUMO_NAMESPACE::Vehicle::getStops().
|
inlineinherited |
Definition at line 803 of file MSBaseVehicle.h.
References MSBaseVehicle::myPersonDevice.
Referenced by GUIBaseVehicle::getNumPassengers().
|
virtualinherited |
Returns the list of persons.
Implements SUMOVehicle.
Definition at line 2194 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getPersons().
Referenced by LIBSUMO_NAMESPACE::Vehicle::getPersonIDList().
|
virtualinherited |
Returns the number of persons.
Implements SUMOVehicle.
Definition at line 2173 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParameter, MSBaseVehicle::myPersonDevice, SUMOVehicleParameter::personNumber, and MSDevice_Transportable::size().
Referenced by MSBaseVehicle::allowsBoarding(), MEVehicle::checkStop(), GUIVehicle::getParameterWindow(), LIBSUMO_NAMESPACE::Vehicle::getPersonNumber(), leaveLane(), MEVehicle::mayProceed(), processNextStop(), MEVehicle::processStop(), and MSXMLRawOut::writeVehicle().
|
virtualinherited |
retrieve riding persons
Implements SUMOVehicle.
Definition at line 2223 of file MSBaseVehicle.cpp.
References MSDevice_Transportable::getTransportables(), MSBaseVehicle::myEmptyTransportableVector, and MSBaseVehicle::myPersonDevice.
Referenced by MSE3Collector::enter(), MSBaseVehicle::getLeavingPersonNumber(), MSBaseVehicle::getPersonIDList(), GUIBaseVehicle::getPopUpMenu(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSE2Collector::notifyEnter(), MSE2Collector::notifyMove(), MSInductLoop::notifyMove(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdSelectTransported(), rerouteParkingArea(), and MSXMLRawOut::writeVehicle().
|
virtual |
Return current position (x/y, cartesian)
If the vehicle's myLane is 0, Position::INVALID.
[in] | offset | optional offset in longitudinal direction |
Implements SUMOTrafficObject.
Definition at line 1250 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSNet::getInstance(), MSEdge::getLanes(), getLateralPositionOnLane(), getPositionOnLane(), MSGlobals::gLefthand, MSGlobals::gSublane, MSLane::interpolateLanePosToGeometryPos(), interpolateLateralZ(), Position::INVALID, MSAbstractLaneChangeModel::isChangingLanes(), MSBaseVehicle::isParking(), MSVehicle::Influencer::isRemoteAffected(), PositionVector::move2side(), myCachedPosition, myInfluencer, myLane, myLaneChangeModel, MSVehicle::State::myPos, myState, MSBaseVehicle::myStops, PositionVector::positionAtOffset(), SUMO_const_laneWidth, and validatePosition().
Referenced by MSCFModel_CC::_v(), MSLaneChanger::changeOpposite(), MSLink::checkWalkingAreaFoe(), computeAngle(), MSDevice_SSM::computeGlobalMeasures(), MSDevice_SSM::determineConflictPoint(), getBoundingBox(), getBoundingPoly(), MSLane::getLeadersOnConsecutive(), MSCFModel_CC::getParameter(), GUIVehicle::getPosition(), MSVTKExport::getPositions(), getSlope(), MSCFModel_CC::getVehicleInformation(), MSVehicle::Influencer::implicitDeltaPosRemote(), MSVehicle::Influencer::implicitSpeedRemote(), MSLink::isInFront(), MSLink::isOnComingPed(), MSAbstractLaneChangeModel::laneChangeOutput(), MSPModel_Striping::moveInDirection(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSDevice_Bluelight::notifyMove(), MSDevice_SSM::updateEncounter(), and MSBatteryExport::write().
Position MSVehicle::getPositionAlongBestLanes | ( | double | offset | ) | const |
Return the (x,y)-position, which the vehicle would reach if it continued along its best continuation lanes from the current for a distance of offset m.
offset |
Definition at line 1318 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), getBestLanesContinuation(), getLane(), getLateralPositionOnLane(), MSLane::getLength(), MSLane::getLinkCont(), MSLane::getLinkTo(), MSLane::getParallelOpposite(), MSLink::getViaLaneOrLane(), MSGlobals::gUsingInternalLanes, Position::INVALID, MSLane::isInternal(), isOnRoad(), MSAbstractLaneChangeModel::isOpposite(), myLane, myLaneChangeModel, MSVehicle::State::myPos, and myState.
Referenced by MSDevice_SSM::determineConflictPoint().
|
inlinevirtual |
Get the vehicle's position along the lane.
Implements SUMOTrafficObject.
Definition at line 374 of file MSVehicle.h.
References MSVehicle::State::myPos, and myState.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_LC2013::adaptSpeedToPedestrians(), adaptToLeaderDistance(), adaptToLeaders(), adaptToOncomingLeader(), MSLaneChangerSublane::addOutsideLeaders(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), MSLaneChanger::avoidDeadlock(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSDevice_ToC::checkDynamicToC(), MSVehicleTransfer::checkInsertions(), checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSDevice_SSM::classifyEncounter(), computeAngle(), MSTrainHelper::computeCarriages(), MSDevice_SSM::computeGlobalMeasures(), MSLaneChanger::computeSafeOppositeLength(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), estimateTimeToNextStop(), executeFractionalMove(), executeMove(), MSLane::executeMovements(), MSLaneChanger::findCandidate(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSLane::freeInsertion(), MSVehicle::Influencer::gapControlSpeed(), MSLane::getBruttoOccupancy(), MSLaneChanger::getCloserFollower(), MSLaneChanger::getColumnleader(), MSEdge::getDepartPosBound(), getDistanceToLeaveJunction(), getDistanceToPosition(), MSLane::getFirstAnyVehicle(), MSLane::getFirstVehicleInformation(), MSLane::getFollower(), getFollower(), MSLane::getFollowersOnConsecutive(), MSAbstractLaneChangeModel::getForwardPos(), MSEdge::getFreeLane(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), getLanePosAfterDist(), MSLane::getLastVehicleInformation(), MSLane::getLeader(), getLeader(), MSLaneChangerSublane::getLeaders(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLane::getNettoOccupancy(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSCFModel_CC::getParameter(), GUIVehicle::getParameterWindow(), MSLane::getPartialBehind(), getPastLanesUntil(), getPosition(), MSEdge::getProbableLane(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLCHelper::getRoundaboutDistBonus(), getSlope(), MSVTKExport::getSpeed(), getUpcomingLanesUntil(), GUIVehicle::getVisualAngle(), GUIVehicle::getVisualPosition(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), MSLane::insertVehicle(), MSCFModel_EIDM::internalspeedlimit(), MSLane::isInsertionSuccess(), joinTrainPart(), joinTrainPartFront(), MSAbstractLaneChangeModel::laneChangeOutput(), MSLane::loadState(), MSVehicleTransfer::loadState(), MSLeaderDistanceInfo::moveSamePosTo(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSLCM_SL2015::mustOvertakeStopped(), MSLane::AnyVehicleIterator::nextIsMyVehicles(), MSDevice_GLOSA::notifyEnter(), MSDevice_Bluelight::notifyMove(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), planMove(), planMoveInternal(), MSAbstractLaneChangeModel::primaryLaneChanged(), processNextStop(), MSCalibrator::remainingVehicleCapacity(), MSLaneChanger::resolveDeadlock(), MSLCM_LC2013::saveBlockerLength(), MSLCM_SL2015::saveBlockerLength(), GUIVehicle::selectBlockingFoes(), setBlinkerInformation(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLCM_SL2015::tieBrakeLeader(), unsafeLinkAhead(), MSLCM_SL2015::updateCFRelated(), MSDevice_SSM::updateEncounter(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSLane::updateLeaderInfo(), updateParkingState(), validatePosition(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSBatteryExport::write(), and MSQueueExport::writeLane().
double MSVehicle::getPositionOnLane | ( | const MSLane * | lane | ) | const |
Get the vehicle's front position relative to the given lane.
Definition at line 5085 of file MSVehicle.cpp.
References getBackPositionOnLane(), MSVehicleType::getLength(), and MSBaseVehicle::myType.
|
inherited |
retrieve parameters of devices, models and the vehicle itself
Definition at line 2446 of file MSBaseVehicle.cpp.
References StringUtils::endsWith(), StringTokenizer::get(), getCarFollowModel(), MSBaseVehicle::getDeviceParameter(), Named::getID(), getLaneChangeModel(), MSBaseVehicle::getNumberParkingReroutes(), MSBaseVehicle::getParameter(), MSCFModel::getParameter(), MSAbstractLaneChangeModel::getParameter(), Parameterised::getParameter(), MSBaseVehicle::getParkingMemory(), MSBaseVehicle::hasDevice(), StringTokenizer::size(), StringUtils::startsWith(), STEPS2TIME, TL, TLF, and toString().
Referenced by GUIBaseVehicle::drawOnPos(), GUIVehicle::getColorValue(), GUIBaseVehicle::getScaleValue(), and MSFCDExport::write().
Definition at line 8086 of file MSVehicle.cpp.
References MSNet::getInstance(), MSEdge::getLanes(), MSBaseVehicle::getRoutePosition(), MSGlobals::gUsingInternalLanes, MSLane::isInternal(), myFurtherLanes, myLane, and MSBaseVehicle::myRoute.
Referenced by MSTrainHelper::computeCarriages().
|
inlinevirtual |
Returns the vehicle's speed before the previous time step.
Reimplemented from MSBaseVehicle.
Definition at line 498 of file MSVehicle.h.
References MSVehicle::State::myPreviousSpeed, and myState.
Referenced by MSDevice_SSM::checkConflictEntryAndExit(), and checkReversal().
|
inherited |
Returns actual relative state of charge of battery (-)
Definition at line 2090 of file MSBaseVehicle.cpp.
References MSDevice_Battery::getActualBatteryCapacity(), MSDevice_ElecHybrid::getActualBatteryCapacity(), MSBaseVehicle::getDevice(), MSDevice_Battery::getMaximumBatteryCapacity(), and MSDevice_ElecHybrid::getMaximumBatteryCapacity().
Referenced by GUIVehicle::getColorValue(), and GUIVehicle::getParameterWindow().
|
inlinevirtualinherited |
Returns the end point for reroutes (usually the last edge of the route)
Implements SUMOTrafficObject.
Definition at line 275 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoute.
|
virtual |
Returns the starting point for reroutes (usually the current edge)
This differs from *myCurrEdge only if the vehicle is on an internal edge or very close to the junction
Reimplemented from MSBaseVehicle.
Definition at line 1414 of file MSVehicle.cpp.
References getCarFollowModel(), MSLane::getEdge(), MSLane::getIndex(), MSLane::getLength(), MSBaseVehicle::getVClass(), MSEdge::hasChangeProhibitions(), MSLane::isInternal(), MSBaseVehicle::myCurrEdge, myLane, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, and myState.
|
virtual |
Get the vehicle's lateral position on the edge of the given lane (or its current edge if lane == 0)
Reimplemented from MSBaseVehicle.
Definition at line 6740 of file MSVehicle.cpp.
References getCenterOnEdge(), MSBaseVehicle::getVehicleType(), and MSVehicleType::getWidth().
Referenced by MSLCM_SL2015::checkBlockingVehicles(), MSLane::detectCollisions(), GUIVehicle::getLeftSideOnEdge(), GUIVehicle::getRightSideOnEdge2(), GUIVehicle::getRightSublaneOnEdge(), and MSLCM_SL2015::outsideEdge().
double MSVehicle::getRightSideOnLane | ( | ) | const |
Get the lateral position of the vehicles right side on the lane:
Definition at line 6716 of file MSVehicle.cpp.
References MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), myLane, MSVehicle::State::myPosLat, and myState.
Referenced by MSLCM_LC2013::adaptSpeedToPedestrians(), MSLaneChangerSublane::addOutsideLeaders(), MSLaneChanger::checkChange(), MSLane::checkForPedestrians(), MSLane::getFollowersOnConsecutive(), MSLaneChangerSublane::getLeaders(), planMoveInternal(), and MSLaneChangerSublane::updateChanger().
double MSVehicle::getRightSideOnLane | ( | const MSLane * | lane | ) | const |
Get the lateral position of the vehicles right side on the lane:
Definition at line 6728 of file MSVehicle.cpp.
References MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), MSVehicle::State::myPosLat, and myState.
|
virtualinherited |
Implements SUMOTrafficObject.
Definition at line 2436 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getEdge(), SUMOTrafficObject::getLane(), MSEdge::getLanes(), and MSLane::getRNG().
Referenced by MSCFModel_Wiedemann::_v(), MSAbstractLaneChangeModel::avoidOvertakeRight(), betterContinuation(), checkLinkLeader(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_Kerner::finalizeSpeed(), MSCFModel_PWag2009::followSpeed(), MSCFModel_W99::followSpeed(), MSCFModel_Krauss::patchSpeedBeforeLC(), MSCFModel_KraussOrig1::patchSpeedBeforeLC(), MSCFModel_KraussX::patchSpeedBeforeLC(), MSCFModel_SmartSK::patchSpeedBeforeLC(), planMoveInternal(), MSBaseVehicle::replaceVehicleType(), setApproachingForAllLinks(), and MSCFModel_SmartSK::updateMyHeadway().
|
virtualinherited |
Implements SUMOTrafficObject.
Definition at line 2425 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getEdge(), SUMOTrafficObject::getLane(), MSEdge::getLanes(), and MSLane::getRNGIndex().
Referenced by MSBaseVehicle::getRouterTT(), GUIVehicle::rerouteDRTStop(), and LIBSUMO_NAMESPACE::Vehicle::rerouteEffort().
|
inlinevirtualinherited |
Returns the current route.
Implements SUMOVehicle.
Definition at line 139 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoute.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), GUIBaseVehicle::drawStopLabels(), MSDevice_SSM::findFoeConflictLane(), MSEdge::getDepartLane(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance2D(), MSLane::getLeaderOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), LIBSUMO_NAMESPACE::Vehicle::getRoute(), LIBSUMO_NAMESPACE::Vehicle::getRouteID(), MSIdling_Stop::idle(), MSBaseVehicle::insertStop(), MSLCHelper::isBidiFollower(), MSLane::isInsertionSuccess(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSVehicle::Influencer::postProcessRemoteControl(), processNextStop(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), rerouteParkingArea(), MSDevice_StationFinder::rerouteToChargingStation(), GUIBaseVehicle::setFunctionalColor(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSVehicle::Influencer::updateRemoteControlRoute(), and MSFCDExport::write().
|
virtualinherited |
return index of edge within route
Implements SUMOTrafficObject.
Definition at line 659 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
Referenced by computeFurtherLanes(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance2D(), MSLane::getLeaderOnConsecutive(), getPreviousLane(), LIBSUMO_NAMESPACE::Vehicle::getRouteIndex(), MEVehicle::hasArrived(), hasArrivedInternal(), joinTrainPartFront(), MEVehicle::moveRoutePointer(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), planMoveInternal(), processNextStop(), GUIVehicle::rerouteDRTStop(), and MSFCDExport::write().
|
inlinevirtualinherited |
Returns the current route.
Implements SUMOVehicle.
Definition at line 146 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoute.
Referenced by GUIBaseVehicle::drawRoute(), and MSCFModel_CC::getParameter().
|
inherited |
Definition at line 2374 of file MSBaseVehicle.cpp.
References MSNet::getInstance(), MSBaseVehicle::getRNGIndex(), MSNet::getRouterTT(), MSRoutingEngine::getRouterTT(), MSBaseVehicle::getVClass(), MSBaseVehicle::myRoutingMode, and libsumo::ROUTING_MODE_AGGREGATED.
Referenced by LIBSUMO_NAMESPACE::Vehicle::changeTarget(), MSBaseVehicle::insertStop(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), rerouteParkingArea(), and LIBSUMO_NAMESPACE::Vehicle::rerouteTraveltime().
|
virtualinherited |
check for route validity at first insertion attempt
Implements SUMOVehicle.
Definition at line 789 of file MSBaseVehicle.cpp.
References MSGlobals::gCheckRoutes, Named::getID(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::hasValidRouteStart(), MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myRouteValidity, MSBaseVehicle::ROUTE_INVALID, MSBaseVehicle::ROUTE_UNCHECKED, TLF, VEHPARS_FORCE_REROUTE, SUMOVehicleParameter::wasSet(), and WRITE_WARNING.
|
inlinevirtualinherited |
return routing mode (configures router choice but also handling of transient permission changes)
Implements SUMOTrafficObject.
Definition at line 926 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoutingMode.
Referenced by LIBSUMO_NAMESPACE::Vehicle::getRoutingMode(), MSNet::getTravelTime(), MSBaseVehicle::ignoreTransientPermissions(), and LIBSUMO_NAMESPACE::Vehicle::rerouteTraveltime().
|
inline |
Returns the signals.
Definition at line 1173 of file MSVehicle.h.
References mySignals.
Referenced by MSFCDExport::write().
|
inherited |
Replaces the current vehicle type with a new one used by this vehicle only.
If the currently used vehicle type is already marked as being used by this vehicle only, no new type is created.
Definition at line 2414 of file MSBaseVehicle.cpp.
References MSVehicleType::buildSingularType(), MSVehicleType::getID(), Named::getID(), MSVehicleType::isVehicleSpecific(), MSBaseVehicle::myType, and MSBaseVehicle::replaceVehicleType().
Referenced by joinTrainPart(), joinTrainPartFront(), processNextStop(), TraCIServerAPI_Vehicle::processSet(), setActionStepLength(), MSDevice_ToC::setState(), and MSDevice_ToC::triggerMRM().
|
virtual |
Returns the slope of the road at vehicle's position in degrees.
Implements SUMOTrafficObject.
Definition at line 1223 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), getBackPosition(), getPosition(), getPositionOnLane(), MSLane::getShape(), MSBaseVehicle::getStops(), MSLane::interpolateLanePosToGeometryPos(), Position::INVALID, MSBaseVehicle::isParking(), myFurtherLanes, myFurtherLanesPosLat, myLane, MSVehicle::State::myPosLat, myState, RAD2DEG, PositionVector::slopeDegreeAtOffset(), and Position::slopeTo2D().
Referenced by MSLaneChanger::changeOpposite(), GUIVehicle::getParameterWindow(), MSCFModel_KraussPS::maxNextSpeed(), MSCFModel_Rail::maxNextSpeed(), and MSCFModel_Rail::minNextSpeed().
|
inlinevirtual |
Returns the vehicle's current speed.
Implements SUMOTrafficObject.
Definition at line 490 of file MSVehicle.h.
References MSVehicle::State::mySpeed, and myState.
Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSCFModel_EIDM::_v(), MSCFModel_Wiedemann::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_GLOSA::adaptSpeed(), MSLCM_LC2013::adaptSpeedToPedestrians(), adaptToJunctionLeader(), adaptToLeader(), adaptToLeaders(), adaptToOncomingLeader(), MSPModel_Striping::addCrossingVehs(), MSCriticalFollowerDistanceInfo::addFollower(), MSAbstractLaneChangeModel::addLCSpeedAdvice(), MSLane::addLeaders(), MSLCM_LC2013::anticipateFollowSpeed(), MSCFModel::applyStartupDelay(), MSAbstractLaneChangeModel::calcAngleOffset(), MSLCHelper::canSaveBlockerLength(), MSLCM_SL2015::checkBlockingVehicles(), MSLaneChanger::checkChange(), MSDevice_SSM::checkConflictEntryAndExit(), MSDevice_ToC::checkDynamicToC(), GUIApplicationWindow::checkGamingEvents(), GUIApplicationWindow::checkGamingEventsDRT(), MSLaneChanger::checkOppositeStop(), checkReversal(), checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSLCM_SL2015::commitFollowSpeed(), MSLCM_SL2015::commitManoeuvre(), MSDevice_SSM::computeDRAC(), MSDevice_SSM::computeGlobalMeasures(), MSLaneChanger::computeOvertakingTime(), MSLaneChanger::computeSafeOppositeLength(), MSLCM_LC2013::computeSpeedLat(), MSLCM_SL2015::computeSpeedLat(), MSLink::couldBrakeForLeader(), MSLane::detectCollisions(), MSDevice_SSM::determineTTCandDRACandPPETandMDRAC(), MSDevice_GLOSA::earliest_arrival(), MSDevice_SSM::estimateConflictTimes(), estimateTimeToNextStop(), executeFractionalMove(), executeMove(), MSCFModel::finalizeSpeed(), MSCFModel_CC::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSCFModel_PWag2009::finalizeSpeed(), MSCFModel_Wiedemann::finalizeSpeed(), MSLane::forceVehicleInsertion(), MSLane::freeInsertion(), MSVehicle::Influencer::gapControlSpeed(), MSCFModel_CC::getACCAcceleration(), getBrakeGap(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSLane::getDepartSpeed(), MSLane::getFollowersOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), MSLCM_SL2015::getLateralDrift(), MSLane::getLeader(), getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLane::getMissingRearGap(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSCFModel_CC::getParameter(), GUIVehicle::getParameterWindow(), MSCFModel_CC::getRadarMeasurements(), MSLaneChanger::getRealLeader(), MSVTKExport::getSpeed(), MSLCHelper::getSpeedPreservingSecureGap(), getTimeGapOnLane(), MSCFModel_CC::getVehicleInformation(), MSPModel_Striping::getVehicleObstacles(), MSLink::getZipperSpeed(), MSLane::handleCollisionBetween(), handleCollisionStop(), MSLane::handleIntermodalCollisionBetween(), MSIdling_Stop::idle(), MSLCM_DK2008::informBlocker(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSLCM_SL2015::informLeaders(), MSLane::insertVehicle(), MSCFModel::interactionGap(), MSCFModel_EIDM::interactionGap(), MSCFModel_IDM::interactionGap(), MSLane::isInsertionSuccess(), isLeader(), keepStopping(), MSAbstractLaneChangeModel::laneChangeOutput(), MSLane::lastInsertion(), MSLane::loadState(), MSVehicleTransfer::loadState(), MSDevice_ToC::MRMExecutionStep(), MSDevice_Bluelight::notifyMove(), MSDevice_StationFinder::notifyMove(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop(), MSLCM_LC2013::overtakeDistance(), MSLCM_DK2008::patchSpeed(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), MSCFModel_Krauss::patchSpeedBeforeLC(), MSCFModel_KraussX::patchSpeedBeforeLC(), MSCFModel_SmartSK::patchSpeedBeforeLC(), planMove(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), MSAbstractLaneChangeModel::predInteraction(), MSLCM_LC2013::prepareStep(), MSLCM_SL2015::preventSliding(), processLinkApproaches(), processNextStop(), registerInsertionApproach(), MSAbstractLaneChangeModel::remainingTime(), MSLane::safeInsertionSpeed(), LIBSUMO_NAMESPACE::Vehicle::setAcceleration(), setBrakingSignals(), MSAbstractLaneChangeModel::setFollowerGaps(), MSAbstractLaneChangeModel::setLeaderGaps(), MSAbstractLaneChangeModel::setOrigLeaderGaps(), LIBSUMO_NAMESPACE::Vehicle::slowDown(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLCM_SL2015::tieBrakeLeader(), unsafeLinkAhead(), MSSimpleDriverState::updateAssumedGaps(), MSLCHelper::updateBlockerLength(), MSLCM_SL2015::updateCFRelated(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSLCM_SL2015::updateGaps(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSBatteryExport::write(), and MSQueueExport::writeLane().
double MSVehicle::getSpeedWithoutTraciInfluence | ( | ) | const |
Returns the uninfluenced velocity.
If no influencer exists (myInfluencer==0) the vehicle's current speed is returned. Otherwise the speed returned from myInfluencer->getOriginalSpeed().
Definition at line 7310 of file MSVehicle.cpp.
References MSVehicle::Influencer::getOriginalSpeed(), myInfluencer, MSVehicle::State::mySpeed, and myState.
|
inherited |
Returns actual state of charge of battery (Wh) RICE_CHECK: This may be a misnomer, SOC is typically percentage of the maximum battery capacity.
Definition at line 2075 of file MSBaseVehicle.cpp.
References MSDevice_Battery::getActualBatteryCapacity(), MSDevice_ElecHybrid::getActualBatteryCapacity(), and MSBaseVehicle::getDevice().
Referenced by GUIVehicle::getParameterWindow().
|
inherited |
returns the upcoming stop with the given index in the stop queue
Definition at line 1655 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops, and TLF.
Referenced by LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), MSIdling_TaxiStand::idle(), MSDevice_StationFinder::notifyMove(), and LIBSUMO_NAMESPACE::Vehicle::setStopParameter().
|
virtual |
Returns the estimated public transport stop arrival delay in seconds.
Reimplemented from MSBaseVehicle.
Definition at line 8049 of file MSVehicle.cpp.
References SUMOVehicleParameter::Stop::arrival, estimateTimeToNextStop(), MSNet::getInstance(), MSBaseVehicle::hasStops(), INVALID_DOUBLE, MSBaseVehicle::myStops, MSStop::pars, MSStop::reached, SUMOVehicleParameter::Stop::started, and STEPS2TIME.
Referenced by GUIVehicle::getColorValue().
|
virtual |
Returns the public transport stop delay in seconds.
Reimplemented from MSBaseVehicle.
Definition at line 8027 of file MSVehicle.cpp.
References DELTA_T, MSStop::duration, SUMOVehicleParameter::Stop::duration, estimateTimeToNextStop(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSBaseVehicle::hasStops(), MAX2(), MSBaseVehicle::myStops, MSStop::pars, MSStop::reached, STEPS2TIME, TIME2STEPS, and SUMOVehicleParameter::Stop::until.
Referenced by GUIVehicle::getColorValue().
|
inherited |
get remaining stop duration or 0 if the vehicle isn't stopped
Definition at line 1645 of file MSBaseVehicle.cpp.
References MSBaseVehicle::isStopped(), and MSBaseVehicle::myStops.
Referenced by MSLaneChanger::computeOvertakingTime().
|
inherited |
Returns the list of still pending stop edges also returns the first and last stop position.
Definition at line 1583 of file MSBaseVehicle.cpp.
References MSStop::edge, MSStop::getEndPos(), MSBaseVehicle::haveValidStopEdges(), INVALID_DOUBLE, MSStop::lane, MAX2(), and MSBaseVehicle::myStops.
Referenced by MSBaseVehicle::reroute().
|
virtualinherited |
return list of route indices for the remaining stops
Implements SUMOVehicle.
Definition at line 1627 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myRoute, and MSBaseVehicle::myStops.
|
inlinevirtualinherited |
returns the list of stops not yet reached in the stop queue
Implements SUMOVehicle.
Definition at line 707 of file MSBaseVehicle.h.
References MSBaseVehicle::myStops.
Referenced by GUIBaseVehicle::drawStopLabels(), MSCFModel_CC::finalizeSpeed(), LIBSUMO_NAMESPACE::TrafficLight::getFutureTripIds(), getSlope(), LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), LIBSUMO_NAMESPACE::Vehicle::getStops(), MSIdling_TaxiStand::idle(), MSDevice_StationFinder::teleportToChargingStation(), and LIBSUMO_NAMESPACE::TrafficLight::updateConstraints().
|
inherited |
Retrieve a string parameter for the traffic object.
paramName | the parameter name |
required | whether it is an error if the parameter is not set |
deflt | the default value to take if the parameter is not set (the default in the OptionsCont takes precedence) |
Definition at line 33 of file SUMOTrafficObject.cpp.
References OptionsCont::exists(), Named::getID(), OptionsCont::getOptions(), SUMOTrafficObject::getParameter(), Parameterised::getParameter(), OptionsCont::getValueString(), SUMOTrafficObject::getVTypeParameter(), SUMOTrafficObject::isPerson(), OptionsCont::isSet(), SUMOTrafficObject::isVehicle(), and TLF.
Referenced by MSDevice_ToC::buildVehicleDevices(), MSDevice_Battery::buildVehicleDevices(), SUMOTrafficObject::getBoolParam(), SUMOTrafficObject::getFloatParam(), MSDevice_Taxi::getParameter(), SUMOTrafficObject::getTimeParam(), MSBaseVehicle::initTransientModelParams(), MSDevice_Taxi::MSDevice_Taxi(), MSTransportableDevice_Routing::MSTransportableDevice_Routing(), and MSDevice_Taxi::prepareStop().
double MSVehicle::getTimeGapOnLane | ( | ) | const |
Returns the time gap in seconds to the leader of the vehicle on the same lane.
If the distance is too big -1 is returned. The gap returned takes the minGap into account.
Definition at line 6598 of file MSVehicle.cpp.
References getLeader(), getSpeed(), and MSBaseVehicle::getVehicleType().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), and GUIBaseVehicle::getScaleValue().
|
inlinevirtual |
Returns the SUMOTime lost (speed was lesser maximum speed)
Implements SUMOVehicle.
Definition at line 700 of file MSVehicle.h.
References myTimeLoss, and TIME2STEPS.
|
inlinevirtual |
Returns the time loss in seconds.
Reimplemented from MSBaseVehicle.
Definition at line 716 of file MSVehicle.h.
References myTimeLoss.
Referenced by GUIVehicle::getColorValue(), and GUIVehicle::getParameterWindow().
|
inherited |
Retrieve a time parameter for the traffic object.
paramName | the parameter name |
required | whether it is an error if the parameter is not set |
deflt | the default value to take if the parameter is not set (the default in the OptionsCont takes precedence) |
Definition at line 89 of file SUMOTrafficObject.cpp.
References Named::getID(), SUMOTrafficObject::getStringParam(), SUMOTrafficObject::isPerson(), SUMOTrafficObject::isVehicle(), string2time(), time2string(), TL, and WRITE_ERRORF.
Referenced by MSTransportableDevice_Routing::buildDevices(), and MSDevice_Routing::buildVehicleDevices().
|
inline |
Returns the SUMOTime spent driving since startup (speed was larger than 0.1m/s)
The value is reset if the vehicle halts (moves slower than 0.1m/s) Intentional stopping does not reset the time
Definition at line 683 of file MSVehicle.h.
References myTimeSinceStartup.
Referenced by MSCFModel::applyStartupDelay(), MSCFModel_EIDM::finalizeSpeed(), and MSCFModel_EIDM::slowToStartTerm().
|
inline |
Definition at line 687 of file MSVehicle.h.
References myTimeSinceStartup, and STEPS2TIME.
Referenced by GUIVehicle::getParameterWindow().
|
virtualinherited |
returns the numerical ids of edges to travel
Implements SUMOTrafficObject.
Definition at line 228 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
const std::vector< const MSLane * > MSVehicle::getUpcomingLanesUntil | ( | double | distance | ) | const |
Returns the upcoming (best followed by default 0) sequence of lanes to continue the route starting at the current lane.
[in] | distance | The downstream distance to cover |
Definition at line 6352 of file MSVehicle.cpp.
References getBestLanesContinuation(), MSLane::getEdge(), Named::getID(), MSLane::getInternalFollowingLane(), MSLane::getLength(), MSLane::getLinkCont(), MSLane::getOppositePos(), MSLane::getParallelOpposite(), getPositionOnLane(), hasArrived(), MSLane::isInternal(), MSAbstractLaneChangeModel::isOpposite(), MSBaseVehicle::myCurrEdge, myLane, myLaneChangeModel, and MSBaseVehicle::myRoute.
Referenced by libsumo::Helper::applySubscriptionFilterLateralDistance(), executeFractionalMove(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), getLanePosAfterDist(), and MSDevice_Bluelight::notifyMove().
const std::vector< MSLane * > MSVehicle::getUpstreamOppositeLanes | ( | ) | const |
Returns the sequence of opposite lanes corresponding to past lanes.
Definition at line 6479 of file MSVehicle.cpp.
References MSLane::getMaximumBrakeDist(), MSLane::getOpposite(), getPastLanesUntil(), and myLane.
Referenced by MSLane::addLeaders().
|
inlinevirtualinherited |
Returns the vehicle's access class.
Implements SUMOTrafficObject.
Definition at line 167 of file MSBaseVehicle.h.
References MSVehicleType::getParameter(), MSBaseVehicle::myType, and SUMOVTypeParameter::vehicleClass.
Referenced by MSBaseVehicle::addStop(), MSLaneChangerSublane::change(), MSLaneChanger::changeOpposite(), MELoop::checkCar(), GUIApplicationWindow::checkGamingEvents(), checkReversal(), MSLCM_SL2015::checkStrategicChange(), cleanupFurtherLanes(), MSTrainHelper::computeCarriages(), computeFurtherLanes(), GUIVehicle::drawRouteHelper(), enterLaneAtLaneChange(), enterLaneAtMove(), executeMove(), MSLane::executeMovements(), LIBSUMO_NAMESPACE::Simulation::findRoute(), getNextEdgePtr(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), GUIVehicle::getParameterWindow(), getPastLanesUntil(), getRerouteOrigin(), MSBaseVehicle::getRouterTT(), MSLane::getVehicleStopOffset(), MESegment::hasSpaceFor(), hasValidRouteStart(), MSLane::incorporateVehicle(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSPedestrianPushButton::isActiveForEdge(), MSLane::isInsertionSuccess(), leaveLane(), MSLaneChanger::mayChange(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSLCM_SL2015::mustOvertakeStopped(), MSDevice_Bluelight::notifyMove(), planMoveInternal(), processLaneAdvances(), processNextStop(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), GUIVehicle::rerouteDRTStop(), setApproachingForAllLinks(), setBlinkerInformation(), updateBestLanes(), and updateFurtherLanes().
|
inlinevirtualinherited |
Returns the vehicle's type definition.
Implements SUMOTrafficObject.
Definition at line 153 of file MSBaseVehicle.h.
References MSBaseVehicle::myType.
Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLCM_LC2013::adaptSpeedToPedestrians(), adaptToJunctionLeader(), adaptToLeaders(), MSPModel_Striping::addCrossingVehs(), MSLane::addLeaders(), MSLaneChangerSublane::addOutsideLeaders(), MSBaseVehicle::allowsBoarding(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilters(), MSLaneChanger::avoidDeadlock(), MSAbstractLaneChangeModel::avoidOvertakeRight(), MSBaseVehicle::basePos(), betterContinuation(), brakeForOverlap(), MSLaneChanger::change(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeToNewLane(), MSLane::checkFailure(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), checkLinkLeader(), MSLaneChanger::checkOppositeStop(), checkRewindLinkLanes(), MSLink::checkWalkingAreaFoe(), MSDevice_SSM::classifyEncounter(), MSLCM_SL2015::commitManoeuvre(), computeAngle(), MSTrainHelper::computeCarriages(), MSLaneChanger::computeOvertakingTime(), MSAbstractLaneChangeModel::computeSpeedLat(), MSLCM_SL2015::computeSpeedLat(), MSTrainHelper::computeTrainDimensions(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), GUIVehicle::drawAction_drawCarriageClass(), GUIVehicle::drawAction_drawLinkItems(), GUIVehicle::drawAction_drawVehicleBlinker(), GUIVehicle::drawAction_drawVehicleBrakeLight(), GUIEdge::drawMesoVehicles(), GUIBaseVehicle::drawOnPos(), MSLane::enteredByLaneChange(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), MSDevice_SSM::estimateConflictTimes(), MSDevice_StationFinder::estimateConsumption(), MSAbstractLaneChangeModel::estimateLCDuration(), MEVehicle::estimateLeaveSpeed(), estimateTimeToNextStop(), MSLane::executeMovements(), MSLaneChangerSublane::findClosestLeader(), MSCFModel_Rail::followSpeed(), MSLane::freeInsertion(), MSVehicle::Influencer::gapControlSpeed(), MEVehicle::getBackPositionOnLane(), MSLane::getBruttoOccupancy(), GUIBaseVehicle::getCenteringBoundary(), GUIMEVehicle::getCenteringBoundary(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSEdge::getDepartLane(), MSEdge::getDepartPosBound(), MSLane::getDepartPosLat(), MSAbstractLaneChangeModel::getDesiredAlignment(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance2D(), MSBaseVehicle::getEmissionParameters(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), MSBaseVehicle::getImpatience(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), getLateralOverlap(), MSLane::getLeader(), getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLane::getLeadersOnConsecutive(), GUIVehicle::getLeftSideOnEdge(), getLeftSideOnEdge(), getLeftSideOnLane(), getLeftSideOnLane(), MSLCM_SL2015::getLongest(), MSAbstractLaneChangeModel::getMaxSpeedLat2(), MSLane::getNettoOccupancy(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSBaseVehicle::getParkingBadges(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MEVehicle::getRightSideOnEdge(), getRightSideOnEdge(), getRightSideOnLane(), getRightSideOnLane(), MSLane::getSpaceTillLastStanding(), MSLeaderInfo::getSubLanes(), getTimeGapOnLane(), GUIVehicle::getTypeParameterWindow(), MSPModel_Striping::getVehicleObstacles(), libsumo::Helper::getVehicleType(), GUIBaseVehicle::getVType(), MSLCM_SL2015::getWidth(), MSLink::getZipperSpeed(), MSLane::handleCollisionBetween(), MESegment::hasSpaceFor(), ignoreRed(), MSLane::incorporateVehicle(), MSLCM_SL2015::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSLCM_SL2015::informLeaders(), MSLane::insertVehicle(), MSLink::isInFront(), MSLane::isInsertionSuccess(), isLeader(), MESegment::isOpen(), joinTrainPart(), joinTrainPartFront(), keepClear(), MSLCM_SL2015::keepLatGap(), MSAbstractLaneChangeModel::laneChangeOutput(), MSLane::lastInsertion(), MSLane::leftByLaneChange(), MESegment::loadState(), MEVehicle::mayProceed(), MSPModel_Striping::moveInDirection(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSLCM_SL2015::mustOvertakeStopped(), MSDevice_Bluelight::notifyMove(), MSDevice_GLOSA::notifyMove(), LIBSUMO_NAMESPACE::Vehicle::openGap(), overlap(), MSLCM_LC2013::overtakeDistance(), MSLCM_DK2008::patchSpeed(), MSCFModel_Krauss::patchSpeedBeforeLC(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), MSLCM_LC2013::prepareStep(), MSLCM_SL2015::preventSliding(), processLinkApproaches(), processNextStop(), processTraCISpeedControl(), MESegment::receive(), MSLaneChanger::ChangeElem::registerHop(), MSLaneChanger::registerUnchanged(), MSAbstractLaneChangeModel::remainingTime(), MESegment::Queue::remove(), MSLane::removeVehicle(), MSLaneChanger::resolveDeadlock(), MSLane::safeInsertionSpeed(), MSBaseVehicle::saveState(), GUIVehicle::selectBlockingFoes(), MESegment::send(), MSVehicleType::setActionStepLength(), MSAbstractLaneChangeModel::setFollowerGaps(), GUIBaseVehicle::setFunctionalColor(), MSAbstractLaneChangeModel::setLeaderGaps(), MSAbstractLaneChangeModel::setLeaderGaps(), MSAbstractLaneChangeModel::setOrigLeaderGaps(), MSAbstractLaneChangeModel::setOrigLeaderGaps(), setTentativeLaneAndPosition(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), slowDownForSchedule(), MSLaneChangerSublane::startChangeSublane(), unsafeLinkAhead(), updateBestLanes(), MSLCHelper::updateBlockerLength(), MSLCM_SL2015::updateCFRelated(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSFCDExport::write(), MSQueueExport::writeLane(), and MSLaneChanger::yieldToDeadlockOncoming().
|
inline |
Returns the vehicle's direction in radians.
Definition at line 739 of file MSVehicle.h.
References myAngle, myState, and MSVehicle::State::speed().
Referenced by MSCFModel_CC::_consensus(), MSCFModel_CC::getParameter(), and MSDevice_SSM::updateEncounter().
|
inlinevirtualinherited |
Returns the vehicle's type parameter.
Implements SUMOTrafficObject.
Definition at line 160 of file MSBaseVehicle.h.
References MSVehicleType::getParameter(), and MSBaseVehicle::myType.
|
inlineinherited |
Returns the number of seconds waited (speed was lesser than 0.1m/s)
The value is reset if the vehicle moves faster than 0.1m/s Intentional stopping does not count towards this time.
Definition at line 292 of file MSBaseVehicle.h.
References SUMOTrafficObject::getWaitingTime(), and STEPS2TIME.
Referenced by MSLaneChanger::avoidDeadlock(), MSLaneChanger::changeOpposite(), MSLaneChanger::computeSurplusGap(), GUIVehicle::getColorValue(), GUIMEVehicle::getColorValue(), GUIVehicle::getParameterWindow(), GUIMEVehicle::getParameterWindow(), GUIBaseVehicle::getScaleValue(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_LC2013::informLeader(), MSPedestrianPushButton::isActiveForEdge(), MSLaneChanger::resolveDeadlock(), workOnMoveReminders(), MSEmissionExport::write(), MSQueueExport::writeLane(), MSFullExport::writeVehicles(), MSLaneChanger::yieldToDeadlockOncoming(), and MSLaneChanger::yieldToOppositeWaiting().
|
inlinevirtual |
Returns the SUMOTime waited (speed was lesser than 0.1m/s)
The value is reset if the vehicle moves faster than 0.1m/s Intentional stopping does not count towards this time. If accumulated is true the time is aggregated over a configurable interval.
Implements SUMOTrafficObject.
Definition at line 670 of file MSVehicle.h.
References MSVehicle::WaitingTimeCollector::cumulatedWaitingTime(), MSGlobals::gWaitingTimeMemory, myWaitingTime, and myWaitingTimeCollector.
Referenced by checkLinkLeader(), checkRewindLinkLanes(), MSLane::executeMovements(), getAccumulatedWaitingSeconds(), MSLink::getLeaderInfo(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), MSPModel_Striping::getVehicleObstacles(), MSDevice_Bluelight::notifyMove(), planMoveInternal(), processLinkApproaches(), GUIVehicle::selectBlockingFoes(), setApproachingForAllLinks(), and MSLaneChanger::yieldToOppositeWaiting().
|
inherited |
Definition at line 2156 of file MSBaseVehicle.cpp.
References MSBaseVehicle::_getWeightsStorage().
|
inherited |
Returns the vehicle's internal edge travel times/efforts container.
If the vehicle does not have such a container, it is built.
Definition at line 2150 of file MSBaseVehicle.cpp.
References MSBaseVehicle::_getWeightsStorage().
Referenced by LIBSUMO_NAMESPACE::Vehicle::getAdaptedTraveltime(), MSNet::getEffort(), LIBSUMO_NAMESPACE::Vehicle::getEffort(), MSNet::getTravelTime(), LIBSUMO_NAMESPACE::Vehicle::setAdaptedTraveltime(), and LIBSUMO_NAMESPACE::Vehicle::setEffort().
|
inlineinherited |
Returns the vehicle's width.
Definition at line 561 of file MSBaseVehicle.h.
References MSVehicleType::getWidth(), and MSBaseVehicle::myType.
Referenced by MSDevice_SSM::classifyEncounter(), MSAbstractLaneChangeModel::determineTargetLane(), GUIVehicle::drawAction_drawCarriageClass(), GUIMEVehicle::drawAction_drawCarriageClass(), GUIVehicle::drawAction_drawVehicleBlinker(), GUIVehicle::drawAction_drawVehicleBrakeLight(), getLateralOverlap(), lateralDistanceToLane(), planMoveInternal(), MSLaneChangerSublane::startChangeSublane(), and MSDevice_SSM::updatePassedEncounter().
|
virtual |
Reimplemented from MSBaseVehicle.
Definition at line 7193 of file MSVehicle.cpp.
References ACCEL2SPEED, computeAngle(), computeFurtherLanes(), MSStop::edge, SUMOVehicleParameter::Stop::endPos, getCarFollowModel(), MSVehicleType::getLength(), getSpeed(), Position::INVALID, MSAbstractLaneChangeModel::isOpposite(), M_PI, MSCFModel::maximumSafeStopSpeed(), MIN2(), myAngle, myCachedPosition, MSBaseVehicle::myCurrEdge, myLane, myLaneChangeModel, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myType, and MSStop::pars.
|
virtual |
Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge)
Reimplemented from MSBaseVehicle.
Definition at line 1109 of file MSVehicle.cpp.
References hasArrivedInternal().
Referenced by MSLane::executeMovements(), and getUpcomingLanesUntil().
|
protected |
Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge) method is called in the context of excecuteMove where opposite-direction vehicles are transformed temporarily to their forward lane and additional opposite-direction driving checks do not apply.
Definition at line 1115 of file MSVehicle.cpp.
References SUMOVehicleParameter::arrivalEdge, MSLane::getLength(), MSBaseVehicle::getRoutePosition(), MSAbstractLaneChangeModel::isOpposite(), isRemoteControlled(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, myLane, myLaneChangeModel, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, myState, and MSBaseVehicle::myStops.
Referenced by executeMove(), hasArrived(), and processLaneAdvances().
|
inlinevirtualinherited |
Returns whether this vehicle has already departed.
Implements SUMOVehicle.
Definition at line 422 of file MSBaseVehicle.h.
References MSBaseVehicle::myDeparture, and MSBaseVehicle::NOT_YET_DEPARTED.
Referenced by MSBaseVehicle::abortNextStop(), adaptToJunctionLeader(), MSBaseVehicle::addStop(), MSBaseVehicle::createDevice(), LIBSUMO_NAMESPACE::Vehicle::dispatchTaxi(), enterLaneAtInsertion(), MSLane::forceVehicleInsertion(), MSBaseVehicle::getDepartDelay(), LIBSUMO_NAMESPACE::Vehicle::getDeparture(), LIBSUMO_NAMESPACE::Vehicle::getDistance(), LIBSUMO_NAMESPACE::Vehicle::getRouteIndex(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MEVehicle::loadState(), loadState(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), processNextStop(), LIBSUMO_NAMESPACE::Vehicle::remove(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), and MSBaseVehicle::setSkips().
|
inherited |
check whether the vehicle is equiped with a device of the given name
Definition at line 2263 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDevices.
Referenced by MSBaseVehicle::createDevice(), and MSBaseVehicle::getPrefixedParameter().
|
inline |
Whether this vehicle is equipped with a MSDriverState.
Definition at line 992 of file MSVehicle.h.
References myDriverState.
Referenced by MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), MSCFModel::applyOwnSpeedPerceptionError(), and planMove().
|
inlinevirtual |
whether the vehicle is individually influenced (via TraCI or special parameters)
Implements MSBaseVehicle.
Definition at line 1676 of file MSVehicle.h.
References myInfluencer.
Referenced by MSLaneChanger::changeOpposite(), MSLCM_SL2015::checkBlocking(), MSAbstractLaneChangeModel::checkTraCICommands(), LIBSUMO_NAMESPACE::Vehicle::deactivateGapControl(), MSLane::detectCollisionBetween(), GUIVehicle::drawRouteHelper(), GUIVehicle::getParameterWindow(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), influenceChangeDecision(), MSLCM_SL2015::keepLatGap(), and updateWaitingTime().
|
inherited |
check wether the vehicle has jump at the given part of its route
Definition at line 721 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops.
Referenced by MSBaseVehicle::hasValidRoute().
|
inlinevirtualinherited |
Returns whether the vehicle has to stop somewhere.
Implements SUMOVehicle.
Definition at line 653 of file MSBaseVehicle.h.
References MSBaseVehicle::myStops.
Referenced by MSBaseVehicle::abortNextStop(), MSBaseVehicle::basePos(), MSDevice_ToC::checkDynamicToC(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), estimateTimeToNextStop(), MSBaseVehicle::getNextStopParameter(), getStopArrivalDelay(), getStopDelay(), GUIVehicle::getStopInfo(), MSLaneChanger::hasOppositeStop(), MSIdling_TaxiStand::idle(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), MSBaseVehicle::isStoppedInRange(), MSDevice_StationFinder::notifyMove(), planMoveInternal(), processLaneAdvances(), processNextStop(), LIBSUMO_NAMESPACE::Vehicle::resume(), and setBlinkerInformation().
|
virtualinherited |
Validates the current or given route.
[out] | msg | Description why the route is not valid (if it is the case) |
[in] | route | The route to check (or 0 if the current route shall be checked) |
Implements SUMOVehicle.
Definition at line 734 of file MSBaseVehicle.cpp.
References MSVehicleType::getVehicleClass(), MSBaseVehicle::hasJump(), MSEdge::hasTransientPermissions(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, MSBaseVehicle::myRoutingMode, MSBaseVehicle::myType, libsumo::ROUTING_MODE_IGNORE_TRANSIENT_PERMISSIONS, and TLF.
Referenced by MSBaseVehicle::getRouteValidity(), MESegment::initialise(), LIBSUMO_NAMESPACE::Vehicle::isRouteValid(), MSBaseVehicle::replaceRouteEdges(), and LIBSUMO_NAMESPACE::Vehicle::setRouteID().
|
virtual |
checks wether the vehicle can depart on the first edge
Reimplemented from MSBaseVehicle.
Definition at line 1077 of file MSVehicle.cpp.
References SUMOVehicleParameter::departLane, SUMOVehicleParameter::departLaneProcedure, SUMOVehicleParameter::departSpeed, SUMOVehicleParameter::departSpeedProcedure, MSVehicleType::getID(), Named::getID(), MSVehicleType::getMaxSpeed(), MSBaseVehicle::getVClass(), GIVEN, MSBaseVehicle::myParameter, MSBaseVehicle::myRouteValidity, MSBaseVehicle::myType, MSBaseVehicle::ROUTE_START_INVALID_LANE, and MSBaseVehicle::ROUTE_START_INVALID_PERMISSIONS.
|
inherited |
check whether all stop.edge MSRouteIterators are valid and in order
Definition at line 1530 of file MSBaseVehicle.cpp.
References Named::getID(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, SIMSTEP, time2string(), toString(), and WRITE_ERRORF.
Referenced by enterLaneAtMove(), MSBaseVehicle::getStopEdges(), replaceRoute(), MSBaseVehicle::replaceRouteEdges(), and GUIVehicle::rerouteDRTStop().
bool MSVehicle::ignoreCollision | ( | ) | const |
whether this vehicle is except from collision checks
Definition at line 1625 of file MSVehicle.cpp.
References myCollisionImmunity.
Referenced by MSLane::handleCollisionBetween(), and MSLane::handleIntermodalCollisionBetween().
bool MSVehicle::ignoreFoe | ( | const SUMOTrafficObject * | foe | ) | const |
decide whether a given foe object may be ignored
Definition at line 7406 of file MSVehicle.cpp.
References MSVehicleType::getID(), Named::getID(), MSBaseVehicle::getParameter(), StringTokenizer::getVector(), SUMOTrafficObject::getVehicleType(), SUMO_ATTR_CF_IGNORE_IDS, SUMO_ATTR_CF_IGNORE_TYPES, toString(), and VEHPARS_CFMODEL_PARAMS_SET.
Referenced by adaptToJunctionLeader(), adaptToLeader(), and adaptToOncomingLeader().
bool MSVehicle::ignoreRed | ( | const MSLink * | link, |
bool | canBrake | ||
) | const |
decide whether a red (or yellow light) may be ignored
Definition at line 7363 of file MSVehicle.cpp.
References DEBUG_COND, MSVehicle::Influencer::getEmergencyBrakeRedLight(), Named::getID(), MSNet::getInstance(), SUMOVTypeParameter::getJMParam(), MSLink::getLastStateChange(), MSVehicleType::getParameter(), MSLink::getState(), MSLink::getTLLogic(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), MSLink::haveRed(), MSLink::haveYellow(), myInfluencer, SIMTIME, STEPS2TIME, SUMO_ATTR_JM_DRIVE_AFTER_RED_TIME, SUMO_ATTR_JM_DRIVE_AFTER_YELLOW_TIME, and toString().
Referenced by MSLaneChanger::changeOpposite(), MSLink::getLeaderInfo(), planMoveInternal(), processLaneAdvances(), and processLinkApproaches().
|
virtualinherited |
Returns whether this object is ignoring transient permission changes (during routing)
Reimplemented from SUMOTrafficObject.
Definition at line 201 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getRoutingMode(), and libsumo::ROUTING_MODE_IGNORE_TRANSIENT_PERMISSIONS.
int MSVehicle::influenceChangeDecision | ( | int | state | ) |
allow TraCI to influence a lane change decision
Definition at line 7320 of file MSVehicle.cpp.
References MSLane::getEdge(), getInfluencer(), MSNet::getInstance(), getLaneIndex(), hasInfluencer(), MSVehicle::Influencer::influenceChangeDecision(), and myLane.
Referenced by MSLCM_LC2013::_wantsChange(), MSAbstractLaneChangeModel::cancelRequest(), MSLaneChangerSublane::change(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), MSLCM_SL2015::checkStrategicChange(), MSAbstractLaneChangeModel::checkTraCICommands(), and MSLCM_SL2015::keepLatGap().
|
virtual |
Reimplemented from MSBaseVehicle.
Definition at line 1067 of file MSVehicle.cpp.
References MSAbstractLaneChangeModel::build(), MSBaseVehicle::getDevice(), MSVehicleType::getLaneChangeModel(), MSBaseVehicle::initDevices(), myDriverState, myFrictionDevice, myLaneChangeModel, and MSBaseVehicle::myType.
|
privateinherited |
init model parameters from generic params
Definition at line 2346 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getParameter(), Parameterised::getParametersMap(), SUMOTrafficObject::getStringParam(), libsumo::ROUTING_MODE_DEFAULT, MSBaseVehicle::setCarFollowModelParameter(), MSBaseVehicle::setJunctionModelParameter(), MSBaseVehicle::setRoutingMode(), StringUtils::startsWith(), TLF, and StringUtils::toInt().
Referenced by MSBaseVehicle::MSBaseVehicle().
|
privateinherited |
helper function
Definition at line 1920 of file MSBaseVehicle.cpp.
References MSStop::edge, SUMOVehicleParameter::Stop::edge, SUMOVehicleParameter::Stop::endPos, MSBaseVehicle::getVClass(), MSBaseVehicle::hasDeparted(), MSStop::initPars(), SUMOVehicleParameter::Stop::jump, MSStop::lane, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, SUMOVehicleParameter::Stop::parametersSet, MSStop::pars, SUMOVehicleParameter::Stop::speed, STOP_JUMP_SET, STOP_SPEED_SET, SUMOVehicleParameter::stops, and TL.
Referenced by MSBaseVehicle::replaceStop(), and MSBaseVehicle::rerouteBetweenStops().
|
inherited |
insert stop at the given index with the given stop parameters will wait for the given duration before continuing on its route The route will be adapted to pass the new stop edge but only from the previous stop (or start) to the new stop and only up to the next stop (or end).
[in] | nextStopIndex | The replacement index |
[in] | stop | Stop parameters |
[in] | info | The rerouting info |
[in] | teleport | Whether to cover the route to the new stop via teleporting |
[out] | errorMsg | returned error message |
Definition at line 1966 of file MSBaseVehicle.cpp.
References MSParkingArea::accepts(), MSLane::allowsVehicleClass(), SUMOAbstractRouter< E, V >::compute(), MSLane::dictionary(), MSStop::edge, SUMOVehicleParameter::Stop::edge, SUMOVehicleParameter::Stop::endPos, MSBaseVehicle::getArrivalPos(), MSBaseVehicle::getCurrentRouteEdge(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSRoute::getEdges(), MSStop::getEndPos(), Named::getID(), MSNet::getInstance(), SUMOTrafficObject::getLane(), SUMOTrafficObject::getPositionOnLane(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRouterTT(), MELoop::getSegmentForEdge(), MSNet::getStoppingPlace(), MSBaseVehicle::getVClass(), MSGlobals::gMesoNet, MSGlobals::gUseMesoSim, MSBaseVehicle::hasDeparted(), MSStop::initPars(), MSLane::isInternal(), MSBaseVehicle::isStopped(), MSStop::lane, SUMOVehicleParameter::Stop::lane, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myRoutingMode, MSBaseVehicle::myStops, SUMOVehicleParameter::Stop::parkingarea, SUMOAbstractRouter< E, V >::recomputeCosts(), MSBaseVehicle::replaceRouteEdges(), MSStop::segment, SUMOVehicleParameter::stops, SUMO_TAG_PARKING_AREA, TL, and TLF.
Referenced by MSIdling_TaxiStand::idle(), LIBSUMO_NAMESPACE::Vehicle::insertStop(), MSDevice_StationFinder::notifyMove(), MSDevice_StationFinder::rerouteToChargingStation(), and MSDevice_StationFinder::teleportToChargingStation().
|
protected |
perform lateral z interpolation in elevated networks
Definition at line 1287 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), MSAbstractLaneChangeModel::getShadowLane(), MSLane::getWidth(), Position::INVALID, MAX2(), myLane, myLaneChangeModel, Position::setz(), and Position::z().
Referenced by getBackPosition(), and getPosition().
|
staticinherited |
interpret stop lane on opposite side of the road
Definition at line 1175 of file MSBaseVehicle.cpp.
References MSEdge::dictionary(), SUMOVehicleParameter::Stop::edge, SUMOXMLDefinitions::getEdgeIDFromLane(), SUMOXMLDefinitions::getIndexFromLane(), MSEdge::getLanes(), MSEdge::getNumLanes(), MSEdge::getOppositeEdge(), and SUMOVehicleParameter::Stop::lane.
Referenced by MSRouteHandler::addStop(), and MSBaseVehicle::addStop().
|
inline |
Definition at line 421 of file MSVehicle.h.
References Position::INVALID, and myCachedPosition.
Referenced by MSVehicleTransfer::checkInsertions().
|
inline |
Returns whether the next simulation step will be an action point for the vehicle.
Definition at line 635 of file MSVehicle.h.
References getActionStepLength(), and myLastActionTime.
Referenced by checkActionStep(), GUIVehicle::getColorValue(), and loadState().
|
inline |
Returns whether the current simulation step is an action point for the vehicle.
Definition at line 628 of file MSVehicle.h.
References myActionStep.
Referenced by MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLaneChangerSublane::checkChangeToNewLane(), GUIVehicle::getColorValue(), MSLink::getZipperSpeed(), and MSLCM_SL2015::setOwnState().
bool MSVehicle::isBidiOn | ( | const MSLane * | lane | ) | const |
whether this vehicle is driving against lane
Definition at line 7098 of file MSVehicle.cpp.
References MSLane::getBidiLane(), MSLane::getEdge(), myLane, and onFurtherEdge().
Referenced by MSLane::detectCollisionBetween(), MSLane::getFollowersOnConsecutive(), and MSLink::getLeaderInfo().
|
inlinevirtualinherited |
Whether it is a container.
Reimplemented in MSTransportable.
Definition at line 81 of file SUMOTrafficObject.h.
|
virtual |
Returns the information whether the front of the vehicle is on the given lane.
Reimplemented from MSBaseVehicle.
Definition at line 5091 of file MSVehicle.cpp.
References MSLane::getBidiLane(), MSAbstractLaneChangeModel::getShadowLane(), myLane, and myLaneChangeModel.
Referenced by MSLaneChanger::findCandidate(), MSLane::getFirstVehicleInformation(), MSLane::getFollowersOnConsecutive(), MSLink::getLeaderInfo(), MSLane::getLeadersOnConsecutive(), MSLane::getPartialBehind(), MSLane::getPartialBeyond(), and MSLane::getSpaceTillLastStanding().
|
inlinevirtual |
Returns whether a sim vehicle is waiting to enter a lane (after parking has completed)
Implements SUMOVehicle.
Definition at line 621 of file MSVehicle.h.
References myAmIdling.
Referenced by updateWaitingTime().
|
inherited |
Returns whether the vehicle is perform a jump.
Definition at line 1057 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getEdge(), Named::getID(), MSBaseVehicle::myPastStops, and SIMSTEP.
Referenced by MSVehicleTransfer::add(), and MSLane::executeMovements().
whether the given vehicle must be followed at the given junction
Definition at line 7440 of file MSVehicle.cpp.
References ACCEL2SPEED, MSCFModel::brakeGap(), DEBUG_COND, MSLink::fromInternalLane(), getCarFollowModel(), MSLink::getCorrespondingEntryLink(), MSLane::getEdge(), MSLane::getEntryLink(), MSEdge::getFromJunction(), MSCFModel::getHeadwayTime(), Named::getID(), MSLane::getIncomingLanes(), MSLink::getIndex(), MSLink::getInternalLaneBefore(), MSLink::getJunction(), getLane(), getLaneChangeModel(), MSBaseVehicle::getLength(), MSJunction::getLogic(), MSLane::getLogicalPredecessorLane(), MSCFModel::getMaxAccel(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSLane::getNormalPredecessorLane(), MSJunctionLogic::getResponseFor(), getSpeed(), MSLink::getState(), MSEdge::getToJunction(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), MSAbstractLaneChangeModel::hasBlueLight(), MSLink::havePriority(), MSLink::haveRed(), MSLink::haveYellow(), MSLink::isExitLinkAfterInternalJunction(), MSLink::isIndirect(), MSLane::isInternal(), myJunctionConflictEntryTime, myJunctionEntryTime, myJunctionEntryTimeNeverYield, myLane, SIMTIME, SUMO_const_haltingSpeed, and toString().
Referenced by checkLinkLeader(), MSLane::detectCollisions(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), GUIVehicle::selectBlockingFoes(), and MSCFModel_CC::setLeader().
|
virtualinherited |
returns whether the vehicle serves a public transport line that serves the given stop
Implements SUMOVehicle.
Definition at line 2243 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::line, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, and SUMOVehicleParameter::stops.
|
inlinevirtual |
Returns the information whether the vehicle is on a road (is simulated)
Reimplemented from MSBaseVehicle.
Definition at line 605 of file MSVehicle.h.
References myAmOnNet.
Referenced by libsumo::Helper::applySubscriptionFilters(), GUIApplicationWindow::checkGamingEvents(), GUIApplicationWindow::checkGamingEventsDRT(), GUIVehicle::drawRouteHelper(), MSDevice_SSM::findSurroundingVehicles(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), getDistanceToPosition(), MSLane::getFollowersOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), getPositionAlongBestLanes(), MSVTKExport::getPositions(), MSVTKExport::getSpeed(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSVehicle::Influencer::postProcessRemoteControl(), processNextStop(), LIBSUMO_NAMESPACE::Vehicle::setType(), LIBSUMO_NAMESPACE::Vehicle::updateBestLanes(), MSBatteryExport::write(), and MSQueueExport::writeLane().
|
protected |
whether the give lane is reverse direction of the current route or not
Definition at line 5809 of file MSVehicle.cpp.
References MSLane::getEdge(), MSLane::getLinkCont(), MSLane::isInternal(), and MSBaseVehicle::myCurrEdge.
Referenced by updateBestLanes().
|
virtualinherited |
Returns whether the vehicle is parking.
Implements SUMOVehicle.
Definition at line 1049 of file MSBaseVehicle.cpp.
References SUMOTrafficObject::getSpeed(), MSBaseVehicle::isStopped(), MSBaseVehicle::myStops, OFFROAD, and SUMO_const_haltingSpeed.
Referenced by MSVehicleTransfer::add(), MELoop::changeSegment(), computeAngle(), MSTrainHelper::computeCarriages(), GUIBaseVehicle::drawAction_drawVehicleAsPolyWithCarriagges(), GUIVehicle::drawRouteHelper(), MSLane::executeMovements(), GUIVehicle::getColorValue(), MSBaseVehicle::getCurrentParkingArea(), LIBSUMO_NAMESPACE::Vehicle::getLanePosition(), getPosition(), GUIBaseVehicle::getScaleValue(), getSlope(), LIBSUMO_NAMESPACE::Vehicle::getSlope(), GUIVehicle::getStopInfo(), GUIMEVehicle::getStopInfo(), GUIVehicle::getVisualAngle(), GUIVehicle::getVisualPosition(), MESegment::receive(), workOnMoveReminders(), and MSBatteryExport::write().
|
inlinevirtualinherited |
Whether it is a person.
Reimplemented in MSTransportable.
Definition at line 74 of file SUMOTrafficObject.h.
Referenced by MSE3Collector::enter(), SUMOTrafficObject::getBoolParam(), SUMOTrafficObject::getFloatParam(), SUMOTrafficObject::getStringParam(), SUMOTrafficObject::getTimeParam(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSE2Collector::notifyEnter(), MSInductLoop::notifyEnter(), MSE2Collector::notifyLeave(), MSInductLoop::notifyLeave(), MSE2Collector::notifyMove(), MSInductLoop::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), and MSDetectorFileOutput::vehicleApplies().
|
virtual |
Returns the information whether the vehicle is fully controlled via TraCI.
Reimplemented from MSBaseVehicle.
Definition at line 7339 of file MSVehicle.cpp.
References MSVehicle::Influencer::isRemoteControlled(), and myInfluencer.
Referenced by hasArrivedInternal(), processLinkApproaches(), MSLaneChanger::startChange(), MSLaneChangerSublane::startChangeSublane(), updateState(), and MSBatteryExport::write().
|
inlineinherited |
Returns whether the logical state of the vehicle is reversed - for drawing.
Definition at line 632 of file MSBaseVehicle.h.
References MSBaseVehicle::myAmReversed.
Referenced by MSTrainHelper::computeCarriages(), GUIVehicle::drawAction_drawCarriageClass(), and GUIBaseVehicle::drawReversed().
|
inlinevirtualinherited |
whether this vehicle is selected in the GUI
Implements SUMOTrafficObject.
Reimplemented in GUIVehicle.
Definition at line 789 of file MSBaseVehicle.h.
Referenced by MSCFModel_EIDM::_v(), MSCFModel_Wiedemann::_v(), MSLink::checkWalkingAreaFoe(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), GUIBaseVehicle::drawOnPos(), MSCFModel_EIDM::finalizeSpeed(), MSCFModel_EIDM::followSpeed(), MSCFModel_EIDM::freeSpeed(), GUIBaseVehicle::getScaleValue(), MSLink::isInFront(), MSLink::isOnComingPed(), and MSCFModel_EIDM::stopSpeed().
|
virtualinherited |
Returns whether the vehicle is at a stop.
Implements SUMOVehicle.
Definition at line 1043 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops.
Referenced by MSBaseVehicle::abortNextStop(), MSBaseVehicle::allowsBoarding(), brokeDown(), MSLaneChanger::changeOpposite(), MELoop::checkCar(), GUIApplicationWindow::checkGamingEvents(), GUIApplicationWindow::checkGamingEventsDRT(), checkLinkLeader(), checkRewindLinkLanes(), MSLaneChanger::computeSafeOppositeLength(), MSLaneChanger::computeSurplusGap(), MSDriveWay::conflictLaneOccupied(), GUIBaseVehicle::drawAction_drawVehicleAsPolyWithCarriagges(), executeMove(), MSLane::executeMovements(), getArrivalTime(), GUIVehicle::getColorValue(), MSLink::getLeaderInfo(), GUIBaseVehicle::getPopUpMenu(), GUIBaseVehicle::getScaleValue(), MEVehicle::getSpeed(), MSBaseVehicle::getStopDuration(), GUIVehicle::getStopInfo(), GUIMEVehicle::getStopInfo(), LIBSUMO_NAMESPACE::Vehicle::getStopState(), MSLCM_LC2013::informLeader(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSBaseVehicle::isParking(), MSBaseVehicle::isStoppedInRange(), isStoppedOnLane(), MSBaseVehicle::isStoppedParking(), MSBaseVehicle::isStoppedTriggered(), joinTrainPart(), joinTrainPartFront(), keepStopping(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop(), planMoveInternal(), MEVehicle::processStop(), MESegment::receive(), remainingStopDuration(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), MSBaseVehicle::rerouteBetweenStops(), MEVehicle::resumeFromStopping(), resumeFromStopping(), saveState(), MESegment::send(), setBrakingSignals(), updateTimeLoss(), updateWaitingTime(), willStop(), and workOnMoveReminders().
|
virtualinherited |
return whether the given position is within range of the current stop
Implements SUMOVehicle.
Definition at line 1075 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::Stop::endPos, MSBaseVehicle::hasStops(), MSBaseVehicle::isStopped(), MSBaseVehicle::myStops, MSStop::pars, and SUMOVehicleParameter::Stop::startPos.
bool MSVehicle::isStoppedOnLane | ( | ) | const |
Definition at line 1585 of file MSVehicle.cpp.
References MSBaseVehicle::isStopped(), myLane, and MSBaseVehicle::myStops.
Referenced by MSLaneChanger::change(), and MSLaneChangerSublane::change().
|
virtualinherited |
Returns whether the vehicle is on a parking stop.
Implements SUMOVehicle.
Definition at line 1069 of file MSBaseVehicle.cpp.
References MSBaseVehicle::isStopped(), MSBaseVehicle::myStops, and OFFROAD.
|
virtualinherited |
Returns whether the vehicle is on a triggered stop.
Implements SUMOVehicle.
Definition at line 1063 of file MSBaseVehicle.cpp.
References MSBaseVehicle::isStopped(), and MSBaseVehicle::myStops.
Referenced by MELoop::changeSegment(), GUIBaseVehicle::drawStopLabels(), and keepStopping().
|
inlinevirtualinherited |
Whether it is a vehicle.
Reimplemented from SUMOTrafficObject.
Definition at line 99 of file MSBaseVehicle.h.
|
protected |
try joining the given vehicle to the rear of this one (to resolve joinTriggered)
Definition at line 1981 of file MSVehicle.cpp.
References DELTA_T, getBackPositionOnLane(), MSNet::getInstance(), getLane(), MSVehicleType::getLength(), getPositionOnLane(), MSBaseVehicle::getSingularType(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::isStopped(), MSBaseVehicle::myAmRegisteredAsWaiting, myFurtherLanes, myLane, MSBaseVehicle::myStops, MSBaseVehicle::myType, MSVehicleType::setLength(), and MSVehicleControl::unregisterOneWaiting().
Referenced by processNextStop().
|
protected |
try joining the given vehicle to the front of this one (to resolve joinTriggered)
Definition at line 2002 of file MSVehicle.cpp.
References DELTA_T, getBackPositionOnLane(), getCurrentEdge(), Named::getID(), MSNet::getInstance(), getLane(), MSLane::getLength(), MSVehicleType::getLength(), MSEdge::getNormalSuccessor(), getPositionOnLane(), MSBaseVehicle::getRoutePosition(), MSBaseVehicle::getSingularType(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSEdge::isInternal(), MSLane::isInternal(), MSBaseVehicle::isStopped(), MSBaseVehicle::myAmRegisteredAsWaiting, myFurtherLanes, myLane, MSVehicle::State::myPos, MSBaseVehicle::myRoute, myState, MSBaseVehicle::myStops, MSBaseVehicle::myType, MSVehicleType::setLength(), SIMSTEP, time2string(), TL, MSVehicleControl::unregisterOneWaiting(), and WRITE_WARNINGF.
Referenced by processNextStop().
|
protected |
decide whether the given link must be kept clear
Definition at line 7351 of file MSVehicle.cpp.
References getAccumulatedWaitingSeconds(), SUMOVTypeParameter::getJMParam(), MSVehicleType::getParameter(), MSBaseVehicle::getVehicleType(), MSLink::hasFoes(), MSLink::keepClear(), and SUMO_ATTR_JM_IGNORE_KEEPCLEAR_TIME.
Referenced by checkRewindLinkLanes().
bool MSVehicle::keepStopping | ( | bool | afterProcessing = false | ) | const |
Returns whether the vehicle is stopped and must continue to do so.
Definition at line 1590 of file MSVehicle.cpp.
References DELTA_T, getSpeed(), MSBaseVehicle::isStopped(), MSBaseVehicle::isStoppedTriggered(), MIN2(), MSVehicle::State::myPos, myState, MSBaseVehicle::myStops, ONROAD, and SUMO_const_haltingSpeed.
Referenced by MSVehicleTransfer::checkInsertions(), planMoveInternal(), processNextStop(), and processTraCISpeedControl().
double MSVehicle::lateralDistanceToLane | ( | const int | offset | ) | const |
Get the minimal lateral distance required to move fully onto the lane at given offset.
Definition at line 6882 of file MSVehicle.cpp.
References DEBUG_COND, Named::getID(), getLaneChangeModel(), getLateralPositionOnLane(), MSLane::getParallelLane(), MSLane::getParallelOpposite(), MSBaseVehicle::getWidth(), MSLane::getWidth(), MSAbstractLaneChangeModel::isOpposite(), myLane, and SIMTIME.
Referenced by MSLCM_SL2015::_wantsChangeSublane(), and MSAbstractLaneChangeModel::checkTraCICommands().
void MSVehicle::leaveLane | ( | const MSMoveReminder::Notification | reason, |
const MSLane * | approachedLane = 0 |
||
) |
Update of members if vehicle leaves a new lane in the lane change step or at arrival.
Definition at line 5673 of file MSVehicle.cpp.
References MSStopOut::active(), MSStop::busstop, MSStop::chargingStation, MSStop::containerstop, DEBUG_COND, MSStoppingPlace::enter(), MSLane::getBidiLane(), MSBaseVehicle::getContainerNumber(), MSLane::getEdge(), Named::getID(), MSNet::getInstance(), MSStopOut::getInstance(), getLane(), MSLane::getLength(), MSLane::getPermissions(), MSBaseVehicle::getPersonNumber(), MSBaseVehicle::getVClass(), isRailway(), myAmOnNet, MSBaseVehicle::myCurrEdge, myFurtherLanes, myFurtherLanesPosLat, myLane, MSBaseVehicle::myMoveReminders, MSBaseVehicle::myOdometer, MSBaseVehicle::myPastStops, MSVehicle::State::myPos, myState, myStopDist, MSBaseVehicle::myStops, myWaitingTime, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_LANE_CHANGE, MSMoveReminder::NOTIFICATION_PARKING, MSMoveReminder::NOTIFICATION_TELEPORT, MSMoveReminder::NOTIFICATION_TELEPORT_CONTINUATION, OFFROAD, SUMOVehicleParameter::Stop::parking, MSStop::pars, MSStop::reached, MSLane::resetPartialOccupation(), resumeFromStopping(), SIMTIME, MSStopOut::stopStarted(), SVC_RAIL_CLASSES, time2string(), TL, and WRITE_WARNINGF.
Referenced by MSVehicleTransfer::checkInsertions(), MSDevice_Bluelight::notifyMove(), onRemovalFromNet(), MSAbstractLaneChangeModel::primaryLaneChanged(), processLaneAdvances(), and MSLane::removeVehicle().
void MSVehicle::leaveLaneBack | ( | const MSMoveReminder::Notification | reason, |
const MSLane * | leftLane | ||
) |
Update of reminders if vehicle back leaves a lane during (during forward movement.
Definition at line 5767 of file MSVehicle.cpp.
References DEBUG_COND, Named::getID(), MSBaseVehicle::myMoveReminders, and SIMTIME.
Referenced by executeMove().
void MSVehicle::loadPreviousApproaching | ( | MSLink * | link, |
bool | setRequest, | ||
SUMOTime | arrivalTime, | ||
double | arrivalSpeed, | ||
double | arrivalSpeedBraking, | ||
double | dist, | ||
double | leaveSpeed | ||
) |
Definition at line 7690 of file MSVehicle.cpp.
References myLFLinkLanes.
Referenced by MSStateHandler::myStartElement().
|
virtual |
Loads the state of this vehicle from the given description.
Implements SUMOVehicle.
Definition at line 7629 of file MSVehicle.cpp.
References MSBaseVehicle::addStops(), MSBaseVehicle::calculateArrivalParams(), DELTA_T, GeomHelper::fromNaviDegree(), MSGlobals::gCheckRoutes, getActionStepLength(), SUMOSAXAttributes::getFloat(), Named::getID(), SUMOSAXAttributes::getString(), SUMOSAXAttributes::hasAttribute(), MSBaseVehicle::hasDeparted(), isActionStep(), MSAbstractLaneChangeModel::loadState(), myAcceleration, myAngle, MSVehicle::State::myBackPos, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myDepartPos, MSBaseVehicle::myDeparture, myLaneChangeModel, myLastActionTime, MSVehicle::State::myLastCoveredDist, MSBaseVehicle::myNumberReroutes, MSBaseVehicle::myOdometer, MSBaseVehicle::myParameter, MSBaseVehicle::myPastStops, MSVehicle::State::myPos, MSVehicle::State::myPosLat, MSVehicle::State::myPreviousSpeed, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, myStopDist, MSBaseVehicle::myStops, myTimeLoss, myWaitingTime, myWaitingTimeCollector, SUMOVehicleParameter::parametersSet, MSVehicle::WaitingTimeCollector::setState(), SIMSTEP, SPEED2ACCEL, SUMO_ATTR_ANGLE, SUMO_ATTR_DISTANCE, SUMO_ATTR_POSITION, SUMO_ATTR_POSITION_LAT, SUMO_ATTR_SPEED, SUMO_ATTR_STATE, SUMO_ATTR_WAITINGTIME, TL, VEHPARS_FORCE_REROUTE, SUMOVehicleParameter::wasSet(), and WRITE_WARNINGF.
bool MSVehicle::manoeuvreIsComplete | ( | ) | const |
accessor function to myManoeuvre equivalent
Definition at line 7926 of file MSVehicle.cpp.
References MSVehicle::Manoeuvre::manoeuvreIsComplete(), and myManoeuvre.
Referenced by computeAngle(), planMove(), and planMoveInternal().
|
static |
get a numerical value for the priority of the upcoming link
Definition at line 6286 of file MSVehicle.cpp.
References MSLink::havePriority().
Referenced by updateBestLanes().
|
inline |
return the distance to the next stop or doubleMax if there is none.
Definition at line 1031 of file MSVehicle.h.
References myStopDist.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkOppositeStop(), MSLaneChanger::computeSafeOppositeLength(), MSLaneChanger::getBestLanesOpposite(), and MSLaneChanger::hasOppositeStop().
|
virtualinherited |
Called when the vehicle is inserted into the network.
Sets optional information about departure time, informs the vehicle control about a further running vehicle.
Implements SUMOVehicle.
Definition at line 635 of file MSBaseVehicle.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), SUMOTrafficObject::getPositionOnLane(), MSNet::getVehicleControl(), MSBaseVehicle::myDepartPos, MSBaseVehicle::myDeparture, and MSVehicleControl::vehicleDeparted().
Referenced by enterLaneAtInsertion(), MSVehicle::Influencer::postProcessRemoteControl(), and MESegment::receive().
bool MSVehicle::onFurtherEdge | ( | const MSEdge * | edge | ) | const |
whether this vehicle has its back (and no its front) on the given edge
Definition at line 7087 of file MSVehicle.cpp.
References myFurtherLanes.
Referenced by MSLane::getFollowersOnConsecutive(), and isBidiOn().
|
virtual |
Called when the vehicle is removed from the network.
Moves along work reminders and informs all devices about quitting. Calls "leaveLane" then.
[in] | reason | why the vehicle leaves (reached its destination, parking, teleport) |
Reimplemented from MSBaseVehicle.
Definition at line 1051 of file MSVehicle.cpp.
References cleanupFurtherLanes(), DEBUG_COND, Named::getID(), MSVehicleTransfer::getInstance(), leaveLane(), myLFLinkLanes, MSMoveReminder::NOTIFICATION_VAPORIZED_COLLISION, MSVehicleTransfer::remove(), removeApproachingInformation(), SIMTIME, and toString().
Referenced by MSVehicleTransfer::add(), MSLane::detectCollisions(), MSLane::executeMovements(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdRemoveObject(), MSVehicle::Influencer::postProcessRemoteControl(), and MSCalibrator::removePending().
Returns true if the two vehicles overlap.
Definition at line 759 of file MSVehicle.h.
References MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), MSVehicle::State::myPos, and myState.
Referenced by brakeForOverlap(), and enterLaneAtMove().
bool MSVehicle::passingMinor | ( | ) | const |
decide whether the vehicle is passing a minor link or has comitted to do so
Definition at line 7424 of file MSVehicle.cpp.
References MSLane::getEdge(), MSLink::getFoeVisibilityDistance(), MSLane::getIncomingLanes(), MSLink::havePriority(), MSEdge::isInternal(), myLane, and myLFLinkLanes.
Referenced by MSCFModel_Krauss::patchSpeedBeforeLC().
void MSVehicle::planMove | ( | const SUMOTime | t, |
const MSLeaderInfo & | ahead, | ||
const double | lengthsInFront | ||
) |
Compute safe velocities for the upcoming lanes based on positions and speeds from the last time step. Also registers ApproachingVehicleInformation for all links.
This method goes through the best continuation lanes of the current lane and computes the safe velocities for passing/stopping at the next link as a DriveProcessItem
Afterwards it checks if any DriveProcessItem should be discarded to avoid blocking a junction (checkRewindLinkLanes).
Finally the ApproachingVehicleInformation is registered for all links that shall be passed
[in] | t | The current timeStep |
[in] | ahead | The leaders (may be 0) |
[in] | lengthsInFront | Sum of vehicle lengths in front of the vehicle |
Definition at line 2096 of file MSVehicle.cpp.
References checkActionStep(), checkRewindLinkLanes(), DEBUG_COND, MSDevice_DriverState::getDriverState(), Named::getID(), getLateralPositionOnLane(), getManoeuvreType(), getPositionOnLane(), getSpeed(), MSGlobals::gModelParkingManoeuver, gPrecision, hasDriverState(), MANOEUVRE_EXIT, MANOEUVRE_NONE, manoeuvreIsComplete(), myDriverState, myInfluencer, myLane, myLaneChangeModel, myLFLinkLanes, myLFLinkLanesPrev, myNextDriveItem, myNextTurn, myStopDist, planMoveInternal(), removePassedDriveItems(), MSAbstractLaneChangeModel::resetChanged(), setActionStepLength(), setManoeuvreType(), SIMTIME, STEPS2TIME, MSDevice_DriverState::update(), and MSVehicle::Influencer::updateRemoteControlRoute().
|
protected |
Definition at line 2201 of file MSVehicle.cpp.
References MSVehicle::DriveProcessItem::adaptLeaveSpeed(), adaptToLeaderDistance(), adaptToLeaders(), MSLeaderInfo::addLeader(), MSLeaderDistanceInfo::addLeader(), SUMOVehicleParameter::arrivalEdge, SUMOVehicleParameter::arrivalSpeed, SUMOVehicleParameter::arrivalSpeedProcedure, brakeForOverlap(), MSCFModel::brakeGap(), checkLinkLeaderCurrentAndParallel(), checkReversal(), MSLeaderInfo::clear(), MSVehicle::Influencer::considerSafeVelocity(), CRLL_LOOK_AHEAD, MSCFModel::CURRENT_WAIT, DEBUG_COND, DIST_TO_STOPLINE_EXPECT_PRIORITY, SUMOVehicleParameter::Stop::endPos, MSCFModel::estimateSpeedAfterDistance(), MSLeaderDistanceInfo::fixOppositeGaps(), MSLane::FOLLOW_NEVER, MSCFModel::freeSpeed(), MSCFModel::FUTURE, MSVehicle::Influencer::gapControlSpeed(), getArrivalTime(), getBestLanesContinuation(), MSLane::getBidiLane(), getBrakeGap(), getCarFollowModel(), MSAbstractLaneChangeModel::getCommittedSpeed(), MSLink::getCorrespondingEntryLink(), MSBaseVehicle::getDevice(), MSLane::getEdge(), MSCFModel::getEmergencyDecel(), MSStop::getEndPos(), MSLane::getFollowersOnConsecutive(), Named::getID(), MSBaseVehicle::getImpatience(), getLane(), MSAbstractLaneChangeModel::getLaneChangeCompletion(), MSParkingArea::getLastFreePosWithReservation(), MSLink::getLastStateChange(), MSLane::getLastVehicleInformation(), getLateralOverlap(), getLateralPositionOnLane(), getLeftSideOnLane(), MSBaseVehicle::getLength(), MSLane::getLength(), MSVehicleType::getLength(), MSLane::getLinkCont(), MSCFModel::getMaxAccel(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSCFModel::getMinimalArrivalSpeed(), MSCFModel::getMinimalArrivalSpeedEuler(), MSLane::getOppositePos(), MSLane::getParallelLane(), MSLane::getParallelOpposite(), MSBaseVehicle::getParameter(), MSVehicleType::getParameter(), MSEdge::getPersons(), getPositionOnLane(), MSLane::getRightSideOnEdge(), getRightSideOnLane(), MSBaseVehicle::getRNG(), MSBaseVehicle::getRoutePosition(), MSAbstractLaneChangeModel::getShadowDirection(), MSAbstractLaneChangeModel::getShadowLane(), MSStop::getSpeed(), getSpeed(), MSLane::getSpeedLimit(), MSLane::getStopWatch(), MSEdge::getToJunction(), MSStop::getUntil(), MSBaseVehicle::getVClass(), MSLane::getVehicleMaxSpeed(), MSLane::getVehicleNumber(), MSLane::getVehicleNumberWithPartials(), MSLane::getVehiclesSecure(), MSLane::getVehicleStopOffset(), MSBaseVehicle::getVehicleType(), getWaitingTime(), MSBaseVehicle::getWidth(), MSEdge::getWidth(), MSLane::getWidth(), GIVEN, MSGlobals::gLateralResolution, MSGlobals::gModelParkingManoeuver, MSGlobals::gSemiImplicitEulerUpdate, MSGlobals::gSublane, MSGlobals::gTLSYellowMinDecel, MSAbstractLaneChangeModel::hasBlueLight(), MSLane::hasPedestrians(), MSBaseVehicle::hasStops(), MSLeaderInfo::hasVehicles(), MSLink::haveRed(), ignoreRed(), MSVehicle::Influencer::influenceSpeed(), MSAbstractLaneChangeModel::isChangingLanes(), MSEdge::isFringe(), MSEdge::isInternal(), MSLane::isInternal(), MSLane::isLinkEnd(), MSAbstractLaneChangeModel::isOpposite(), isRailway(), MSBaseVehicle::isStopped(), keepStopping(), MSStop::lane, LEFT, LINKSTATE_EQUAL, manoeuvreIsComplete(), MAX2(), MSCFModel::maximumLaneSpeedCF(), MSCFModel::maximumSafeStopSpeed(), MSCFModel::maxNextSpeed(), MIN2(), MSCFModel::minNextSpeed(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, myFurtherLanes, myInfluencer, myLane, myLaneChangeModel, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myStops, MSVehicle::DriveProcessItem::myVLinkWait, myWaitingTime, MSLane::nextBlocking(), NODIR, NUMERICAL_EPS_SPEED, MSLeaderInfo::numSublanes(), MSStop::parkingarea, MSStop::pars, RAIL_SIGNAL, RandHelper::rand(), MSStop::reached, MSLane::releaseVehicles(), MSAbstractLaneChangeModel::remainingTime(), MSLeaderInfo::removeOpposite(), RIGHT, MSPModel::SAFETY_GAP, MSLeaderInfo::setSublaneOffset(), SIMTIME, slowDownForSchedule(), SPEED2DIST, SUMOVTypeParameter::speedFactorPremature, SUMOVehicleParameter::Stop::startPos, STEPS2TIME, MSCFModel::stopSpeed(), STRAIGHT, MSLane::succLinkSec(), SUMO_ATTR_JM_DRIVE_RED_SPEED, SUMO_ATTR_JM_STOPLINE_CROSSING_GAP, SUMO_ATTR_JM_STOPLINE_GAP, TIME2STEPS, TL, MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), toString(), TS, and WRITE_WARNINGF.
Referenced by planMove().
|
protected |
This method checks if the vehicle has advanced over one or several lanes along its route and triggers the corresponding actions for the lanes and the vehicle. and adapts the given in/out parameters to the appropriate values.
[out] | passedLanes | Lanes, which the vehicle touched at some moment of the executed simstep |
[out] | emergencyReason | Reason for a possible emergency stop |
Definition at line 4323 of file MSVehicle.cpp.
References MSEdgeControl::checkCollisionForInactive(), checkReversal(), DEBUG_COND, MSAbstractLaneChangeModel::endLaneChangeManeuver(), enterLaneAtMove(), MSLane::getBidiLane(), MSNet::getCurrentTimeStep(), MSLink::getDirection(), MSLane::getEdge(), MSNet::getEdgeControl(), MSVehicle::Influencer::getEmergencyBrakeRedLight(), Named::getID(), MSNet::getInstance(), MSLink::getLane(), MSLink::getLaneBefore(), MSLane::getLength(), MSVehicleType::getLength(), MSLane::getLinkCont(), MSLane::getLinkTo(), MSBaseVehicle::getNextStop(), MSBaseVehicle::getVClass(), MSLane::getVehicleStopOffset(), MSLink::getViaLane(), MSLink::getViaLaneOrLane(), hasArrivedInternal(), MSBaseVehicle::hasStops(), MSLink::haveRed(), ignoreRed(), MSAbstractLaneChangeModel::isChangingLanes(), MSLink::isConflictEntryLink(), MSLink::isEntryLink(), MSLink::isExitLink(), MSLane::isInternal(), MSEdge::isVaporizing(), leaveLane(), LEFT, MSLane::mustCheckJunctionCollisions(), MSBaseVehicle::myAmReversed, MSBaseVehicle::myCurrEdge, myFurtherLanes, myInfluencer, myJunctionConflictEntryTime, myJunctionEntryTime, myJunctionEntryTimeNeverYield, myLane, myLaneChangeModel, myLFLinkLanes, myNextDriveItem, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myType, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_VAPORIZED_VAPORIZER, RIGHT, SIMTIME, SUMOTime_MAX, SVC_RAIL_CLASSES, time2string(), and WRITE_WARNING.
Referenced by executeFractionalMove(), and executeMove().
|
protected |
This method iterates through the driveprocess items for the vehicle and adapts the given in/out parameters to the appropriate values.
[in/out] | vSafe The maximal safe (or admissible) velocity. |
[in/out] | vSafeMin The minimal safe (or admissible) velocity (used her for ensuring the clearing of junctions in time). |
[in/out] | vSafeMinDist The distance to the next link, which should either be crossed this step, or in front of which the vehicle need to stop. |
Definition at line 3610 of file MSVehicle.cpp.
References ACCEL2SPEED, MSCFModel::brakeGap(), DEBUG_COND, DIST2SPEED, gDebugFlag1, getBestLanesContinuation(), getCarFollowModel(), MSLane::getEdge(), MSLane::getFirstAnyVehicle(), MSLink::getFoeVisibilityDistance(), Named::getID(), MSBaseVehicle::getImpatience(), MSLink::getInternalLaneBefore(), MSLink::getJunction(), MSLink::getLaneBefore(), getLateralPositionOnLane(), MSVehicleType::getLength(), MSCFModel::getMaxDecel(), MSLink::getParallelLink(), MSVehicle::Influencer::getRespectJunctionPriority(), MSAbstractLaneChangeModel::getShadowDirection(), MSAbstractLaneChangeModel::getShadowLane(), getSpeed(), MSLink::getState(), MSLink::getTLLogic(), MSEdge::getToJunction(), MSLane::getVehicleStopOffset(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), getWaitingTime(), MSLane::getWidth(), MSLink::getZipperSpeed(), MSGlobals::gSemiImplicitEulerUpdate, MSLink::havePriority(), MSLink::haveYellow(), ignoreRed(), MSLink::isCont(), MSLane::isInternal(), isRemoteControlled(), MSEdge::isRoundabout(), MSLink::lastWasContMajor(), LINKSTATE_ZIPPER, MAX2(), MIN2(), MIN3(), myHaveToWaitOnNextLink, myInfluencer, myJunctionConflictEntryTime, myJunctionEntryTime, myLane, myLaneChangeModel, myLFLinkLanes, MSVehicle::State::mySpeed, myState, MSLink::opened(), SIMTIME, SUMO_const_haltingSpeed, SUMOTime_MAX, and updateBestLanes().
Referenced by executeMove().
double MSVehicle::processNextStop | ( | double | currentVelocity | ) |
Processes stops, returns the velocity needed to reach the stop.
Definition at line 1631 of file MSVehicle.cpp.
References MSStopOut::active(), MSInsertionControl::add(), MSEdge::addWaiting(), MSDevice_Transportable::anyLeavingAtStop(), boardTransportables(), MSStop::busstop, MSStop::chargingStation, MSStop::containerstop, MSStop::containerTriggered, DEBUG_COND, DELTA_T, SUMOVehicleParameter::departPosProcedure, MSStop::duration, MSStop::edge, MSStop::endBoarding, SUMOVehicleParameter::Stop::endPos, MSParkingArea::enter(), MSStoppingPlace::enter(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), SUMOVehicleParameter::Stop::extension, MSStoppingPlace::fits(), getActionStepLength(), MSStoppingPlace::getBeginLanePosition(), MSParkingArea::getCapacity(), getCarFollowModel(), MSNet::getContainerControl(), MSBaseVehicle::getContainerNumber(), MSNet::getCurrentTimeStep(), MSBaseVehicle::getDevice(), MSLane::getEdge(), MSStop::getEdge(), MSRoute::getEdges(), Named::getID(), Named::getIDSecure(), MSNet::getInsertionControl(), MSNet::getInstance(), MSStopOut::getInstance(), MSBaseVehicle::getLength(), MSVehicleType::getLength(), MSParkingArea::getLotIndex(), MSCFModel::getMaxDecel(), MSStop::getMinDuration(), MSVehicleType::getMinGap(), MSLane::getMoveReminders(), MSBaseVehicle::getNextStop(), MSParkingArea::getOccupancy(), MSParkingArea::getOccupancyIncludingBlocked(), MSBaseVehicle::getParameter(), MSVehicleType::getParameter(), MSNet::getPersonControl(), MSBaseVehicle::getPersonNumber(), getPositionOnLane(), MSStop::getReachedThreshold(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRoutePosition(), MSBaseVehicle::getSingularType(), MSStop::getSpeed(), getSpeed(), MSStop::getUntil(), MSBaseVehicle::getVClass(), MSVehicleControl::getVehicle(), MSNet::getVehicleControl(), MSLane::getVehicleMaxSpeed(), MSBaseVehicle::getVehicleType(), MSGlobals::gModelParkingManoeuver, MSGlobals::gSemiImplicitEulerUpdate, MSTransportableControl::hasAnyWaiting(), MSNet::hasContainers(), MSBaseVehicle::hasDeparted(), MSNet::hasPersons(), MSBaseVehicle::hasStops(), MSNet::informVehicleStateListener(), INVALID_DOUBLE, isOnRoad(), isRailway(), SUMOVehicleParameter::Stop::join, joinTrainPart(), joinTrainPartFront(), MSStop::joinTriggered, keepStopping(), MSStop::lane, SUMOVehicleParameter::Stop::line, SUMOVTypeParameter::locomotiveLength, MAX2(), MSBaseVehicle::myAmRegisteredAsWaiting, MSBaseVehicle::myArrivalPos, MSVehicle::State::myBackPos, myCollisionImmunity, MSBaseVehicle::myContainerDevice, MSBaseVehicle::myCurrEdge, myLane, myManoeuvre, MSBaseVehicle::myParameter, MSBaseVehicle::myPersonDevice, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, myStopDist, MSBaseVehicle::myStops, MSBaseVehicle::myType, MSMoveReminder::NOTIFICATION_PARKING_REROUTE, OFFROAD, SUMOVehicleParameter::Stop::onDemand, SUMOVehicleParameter::Stop::parking, MSStop::parkingarea, MSParkingArea::parkOnRoad(), MSStop::pars, MSVehicle::State::pos(), SUMOVehicleParameter::Stop::posLat, MSStop::reached, MSVehicleControl::registerOneWaiting(), MSVehicleControl::registerStopStarted(), resumeFromStopping(), MSVehicleType::setLength(), SIMSTEP, SIMTIME, MSStop::skipOnDemand, SUMOVehicleParameter::Stop::split, SPLIT_FRONT, SUMOVehicleParameter::Stop::started, MSStop::startedFromState, MSNet::STARTING_STOP, SUMOVehicleParameter::Stop::startPos, STEPS2TIME, STOPPING_PLACE_OFFSET, MSCFModel::stopSpeed(), MSStopOut::stopStarted(), SUMO_const_haltingSpeed, SUMOTime_MAX, TIME2STEPS, time2string(), TL, MSDevice_Transportable::transferAtSplitOrJoin(), MSStop::triggered, SUMOVehicleParameter::Stop::tripId, MSVehicleControl::unregisterOneWaiting(), SUMOVehicleParameter::Stop::waitUntil, and WRITE_WARNINGF.
Referenced by MSVehicleTransfer::checkInsertions(), MSCFModel::finalizeSpeed(), MSCFModel_CC::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSLane::loadState(), and MSVehicleTransfer::loadState().
|
protected |
Check for speed advices from the traci client and adjust the speed vNext in the current (euler) / after the current (ballistic) simstep accordingly.
[in] | vSafe | The maximal safe (or admissible) velocity as determined from stops, junction approaches, car following, lane changing, etc. |
[in] | vNext | The next speed (possibly subject to traci influence) |
Definition at line 3880 of file MSVehicle.cpp.
References DEBUG_COND2, MSVehicleType::getCarFollowModel(), Named::getID(), MSNet::getInstance(), MSVehicle::Influencer::getOriginalSpeed(), MSBaseVehicle::getVehicleType(), MSGlobals::gSemiImplicitEulerUpdate, MSVehicle::Influencer::implicitSpeedRemote(), MSVehicle::Influencer::influenceSpeed(), MSVehicle::Influencer::isRemoteControlled(), keepStopping(), MAX2(), MSCFModel::maxNextSpeed(), MSCFModel::minNextSpeed(), myInfluencer, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myStops, MSVehicle::Influencer::setOriginalSpeed(), and SIMTIME.
Referenced by executeMove(), and MSVehicle::Influencer::postProcessRemoteControl().
void MSVehicle::registerInsertionApproach | ( | MSLink * | link, |
double | dist | ||
) |
register approach on insertion
Definition at line 5395 of file MSVehicle.cpp.
References getCarFollowModel(), MSRailSignalControl::getInstance(), MSCFModel::getMinimalArrivalSpeedEuler(), getSpeed(), MSVehicle::DriveProcessItem::myDistance, myLFLinkLanes, MSVehicle::DriveProcessItem::myLink, MSRailSignalControl::notifyApproach(), MSLink::setApproaching(), and SUMOTime_MAX.
Referenced by MSLane::isInsertionSuccess().
|
virtual |
Returns the remaining stop duration for a stopped vehicle or 0.
Implements SUMOVehicle.
Definition at line 1604 of file MSVehicle.cpp.
References MSBaseVehicle::isStopped(), and MSBaseVehicle::myStops.
Referenced by MSVehicle::Manoeuvre::configureExitManoeuvre().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2577 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myChargingMemory, and StoppingPlaceMemory::rememberBlockedStoppingPlace().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2526 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParkingMemory, and StoppingPlaceMemory::rememberBlockedStoppingPlace().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2543 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myChargingMemory, and StoppingPlaceMemory::rememberStoppingPlaceScore().
|
virtualinherited |
score only needed when running with gui
Implements SUMOVehicle.
Definition at line 2560 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParkingMemory, and StoppingPlaceMemory::rememberStoppingPlaceScore().
|
protected |
unregister approach from all upcoming links
Definition at line 6944 of file MSVehicle.cpp.
References myLaneChangeModel, and MSAbstractLaneChangeModel::removeShadowApproachingInformation().
Referenced by cleanupFurtherLanes(), onRemovalFromNet(), and setApproachingForAllLinks().
|
protected |
Erase passed drive items from myLFLinkLanes (and unregister approaching information for corresponding links). Further, myNextDriveItem is reset.
Definition at line 3913 of file MSVehicle.cpp.
References DEBUG_COND, Named::getID(), myLFLinkLanes, myNextDriveItem, and SIMTIME.
Referenced by planMove().
|
inherited |
Removes a MoveReminder dynamically.
[in] | rem | the reminder to remove |
Definition at line 830 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
|
virtualinherited |
removes a person or container
Implements SUMOVehicle.
Definition at line 2211 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myContainerDevice, MSBaseVehicle::myPersonDevice, and MSDevice_Transportable::removeTransportable().
|
virtualinherited |
replace the vehicle parameter (deleting the old one)
Implements SUMOVehicle.
Definition at line 194 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParameter.
Referenced by rerouteParkingArea().
|
virtualinherited |
replace the current parking area stop with a new stop with merge duration
Implements SUMOVehicle.
Definition at line 1084 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::Stop::duration, MSStop::edge, SUMOVehicleParameter::Stop::endPos, MSStoppingPlace::getBeginLanePosition(), MSLane::getEdge(), MSStoppingPlace::getEndLanePosition(), Named::getID(), MSStoppingPlace::getLane(), MSStop::lane, SUMOVehicleParameter::Stop::lane, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, MSStop::parkingarea, SUMOVehicleParameter::Stop::parkingarea, MSStop::pars, SUMOVehicleParameter::Stop::startPos, and SUMOVehicleParameter::via.
Referenced by rerouteParkingArea().
|
virtual |
Replaces the current route by the given one.
It is possible that the new route is not accepted, if it does not contain the vehicle's current edge.
[in] | route | The new route to pass |
[in] | info | Information regarding the replacement |
[in] | removeStops | Whether stops should be removed if they do not fit onto the new route |
Reimplemented from MSBaseVehicle.
Definition at line 1124 of file MSVehicle.cpp.
References MSBaseVehicle::haveValidStopEdges(), myLastBestLanesEdge, myLastBestLanesInternalLane, myStopDist, MSBaseVehicle::myStops, MSBaseVehicle::replaceRoute(), and updateBestLanes().
|
virtualinherited |
Replaces the current route by the given edges.
It is possible that the new route is not accepted, if a) it does not contain the vehicle's current edge, or b) something fails on insertion into the routes container (see in-line comments).
[in] | edges | The new list of edges to pass |
[in] | onInit | Whether the vehicle starts with this route |
[in] | check | Whether the route should be checked for validity |
[in] | removeStops | Whether stops should be removed if they do not fit onto the new route |
Implements SUMOVehicle.
Definition at line 424 of file MSBaseVehicle.cpp.
References RGBColor::DEFAULT_COLOR, MSRoute::dictionary(), MSGlobals::gCheckRoutes, Named::getID(), MSBaseVehicle::getRerouteOrigin(), MSRoute::hasRoute(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::haveValidStopEdges(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, MSBaseVehicle::replaceRoute(), MSRoute::setCosts(), MSRoute::setSavings(), TL, toString(), and WRITE_WARNINGF.
Referenced by MSBaseVehicle::insertStop(), MSVehicle::Influencer::postProcessRemoteControl(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), MSBaseVehicle::rerouteBetweenStops(), GUIVehicle::rerouteDRTStop(), rerouteParkingArea(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), and MSVehicle::Influencer::updateRemoteControlRoute().
|
inherited |
replace the next stop at the given index with the given stop parameters will wait for the given duration before continuing on its route The route between start other stops and destination will be kept unchanged and only the part around the replacement index will be adapted according to the new stop location
[in] | nextStopIndex | The replacement index |
[in] | stop | Stop parameters |
[in] | info | The rerouting info |
[in] | teleport | Whether to cover the route to the replacement stop via teleporting |
[out] | errorMsg | returned error message |
Definition at line 1734 of file MSBaseVehicle.cpp.
References MSParkingArea::accepts(), MSLane::allowsVehicleClass(), SUMOAbstractRouter< E, V >::compute(), MSLane::dictionary(), MSStop::edge, SUMOVehicleParameter::Stop::edge, SUMOVehicleParameter::Stop::endPos, MSBaseVehicle::getArrivalPos(), MSBaseVehicle::getCurrentRouteEdge(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSRoute::getEdges(), MSStop::getEndPos(), Named::getID(), MSNet::getInstance(), SUMOTrafficObject::getLane(), SUMOTrafficObject::getPositionOnLane(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRouterTT(), MELoop::getSegmentForEdge(), MSNet::getStoppingPlace(), MSBaseVehicle::getVClass(), MSGlobals::gMesoNet, MSGlobals::gUseMesoSim, MSBaseVehicle::hasDeparted(), MSStop::initPars(), MSBaseVehicle::insertJump(), MSLane::isInternal(), MSBaseVehicle::isStopped(), MSStop::lane, SUMOVehicleParameter::Stop::lane, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myRoutingMode, MSBaseVehicle::myStops, SUMOVehicleParameter::Stop::parkingarea, MSStop::pars, SUMOAbstractRouter< E, V >::recomputeCosts(), MSBaseVehicle::replaceRouteEdges(), MSStop::segment, SUMOVehicleParameter::stops, SUMO_TAG_PARKING_AREA, TL, and TLF.
Referenced by LIBSUMO_NAMESPACE::Vehicle::replaceStop(), and MSDevice_StationFinder::rerouteToChargingStation().
|
virtual |
Replaces the current vehicle type by the one given.
[in] | type | The new vehicle type |
Reimplemented from MSBaseVehicle.
Definition at line 4883 of file MSVehicle.cpp.
References MSCFModel::createVehicleVariables(), MSVehicleType::getCarFollowModel(), myCFVariables, and MSBaseVehicle::replaceVehicleType().
Referenced by MSDevice_Bluelight::resetVehicle(), and MSDevice_ToC::switchHolderType().
|
virtualinherited |
Performs a rerouting using the given router.
Tries to find a new route between the current edge and the destination edge, first. Tries to replace the current route by the new one using replaceRoute.
[in] | t | The time for which the route is computed |
[in] | router | The router to use |
[in] | sink | (optionally) a new destination edge |
Implements SUMOVehicle.
Definition at line 265 of file MSBaseVehicle.cpp.
References MSEdge::allowedLanes(), SUMOVehicleParameter::arrivalPos, SUMOVehicleParameter::arrivalPosProcedure, MSBaseVehicle::calculateArrivalParams(), SUMOAbstractRouter< E, V >::compute(), SUMOAbstractRouter< E, V >::computeLooped(), DEBUG_COND, SUMOVehicleParameter::departPos, SUMOVehicleParameter::departPosProcedure, MSInsertionControl::descheduleDeparture(), MSEdge::dictionary(), SUMOVehicleParameter::Stop::endPos, SUMOVehicleParameter::fromTaz, MSGlobals::gCheckRoutes, SUMOVehicle::getBrakeGap(), MSBaseVehicle::getEdge(), Named::getID(), Named::getIDSecure(), MSNet::getInsertionControl(), MSNet::getInstance(), SUMOTrafficObject::getLane(), MSBaseVehicle::getNextStop(), SUMOTrafficObject::getPositionOnLane(), MSBaseVehicle::getRerouteOrigin(), MSBaseVehicle::getStopEdges(), MSBaseVehicle::getVClass(), GIVEN, MSGlobals::gUseMesoSim, INVALID_DOUBLE, MSBaseVehicle::isStopped(), MSEdge::isTazConnector(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, MSStop::pars, SUMOAbstractRouter< E, V >::recomputeCosts(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::setDepartAndArrivalEdge(), SIMTIME, TL, TLF, toString(), SUMOVehicleParameter::toTaz, SUMOVehicleParameter::via, WRITE_WARNING, and WRITE_WARNINGF.
Referenced by LIBSUMO_NAMESPACE::Vehicle::changeTarget(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), GUIVehicle::rerouteDRTStop(), LIBSUMO_NAMESPACE::Vehicle::rerouteEffort(), and LIBSUMO_NAMESPACE::Vehicle::rerouteTraveltime().
|
inherited |
reroute between stops nextStopIndex - 1 and nextStopIndex (defaults to current position / final edge) if the respective stops do not exist
[in] | nextStopIndex | The replacement index |
[in] | info | The rerouting info |
[in] | teleport | Whether to cover the route between stops via teleporting |
[out] | errorMsg | returned error message |
Definition at line 1857 of file MSBaseVehicle.cpp.
References SUMOAbstractRouter< E, V >::compute(), MSBaseVehicle::getArrivalPos(), MSBaseVehicle::getCurrentRouteEdge(), MSNet::getCurrentTimeStep(), MSRoute::getEdges(), MSNet::getInstance(), SUMOTrafficObject::getLane(), SUMOTrafficObject::getPositionOnLane(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRouterTT(), MSBaseVehicle::hasDeparted(), MSBaseVehicle::insertJump(), MSLane::isInternal(), MSBaseVehicle::isStopped(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myStops, SUMOAbstractRouter< E, V >::recomputeCosts(), MSBaseVehicle::replaceRouteEdges(), TL, and TLF.
Referenced by LIBSUMO_NAMESPACE::Vehicle::replaceStop().
bool MSVehicle::rerouteParkingArea | ( | const std::string & | parkingAreaID, |
std::string & | errorMsg | ||
) |
reroute the vehicle to the new parking area, updating routes and passengers/containers associated trips
parkingAreaID | id of the new parking area |
Definition at line 7106 of file MSVehicle.cpp.
References SUMOVehicleParameter::arrivalPos, SUMOVehicleParameter::arrivalPosProcedure, SUMOAbstractRouter< E, V >::compute(), MSBaseVehicle::getArrivalPos(), MSStoppingPlace::getBeginLanePosition(), MSBaseVehicle::getEdge(), MSLane::getEdge(), MSStoppingPlace::getEndLanePosition(), Named::getID(), MSNet::getInstance(), MSStoppingPlace::getLane(), MSRoute::getLastEdge(), MSBaseVehicle::getNextParkingArea(), MSBaseVehicle::getParameter(), MSBaseVehicle::getPersons(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRouterTT(), MSNet::getStoppingPlace(), GIVEN, MSBaseVehicle::myCurrEdge, myLane, MSBaseVehicle::myRoute, SUMOAbstractRouter< E, V >::recomputeCosts(), MSBaseVehicle::replaceParameter(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), SUMO_TAG_PARKING_AREA, SUMO_TAG_PARKING_AREA_REROUTE, time2string(), toString(), and WRITE_WARNING.
Referenced by LIBSUMO_NAMESPACE::Vehicle::rerouteParkingArea().
void MSVehicle::resetActionOffset | ( | const SUMOTime | timeUntilNextAction = 0 | ) |
Resets the action offset for the vehicle.
[in] | timeUntilNextAction | time interval from now for the next action, defaults to 0, which implies an immediate action point in the current step. |
Definition at line 2071 of file MSVehicle.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), and myLastActionTime.
Referenced by MSLane::loadState(), MSVehicleType::setActionStepLength(), setActionStepLength(), and updateActionOffset().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2552 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myChargingMemory, and StoppingPlaceMemory::resetStoppingPlaceScores().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2535 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParkingMemory, and StoppingPlaceMemory::resetStoppingPlaceScores().
|
inherited |
reset index of edge within route
Definition at line 665 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, and MSBaseVehicle::myRoute.
Referenced by MSCalibrator::execute(), and LIBSUMO_NAMESPACE::Vehicle::moveTo().
|
virtual |
resumes a vehicle from stopping
Implements MSBaseVehicle.
Definition at line 7220 of file MSVehicle.cpp.
References MSStopOut::active(), MSStop::busstop, MSStop::chargingStation, SUMOVehicleParameter::Stop::collision, MSLane::COLLISION_ACTION_WARN, MSStop::containerstop, MSStop::edge, SUMOVehicleParameter::Stop::ended, MSNet::ENDING_STOP, MSLane::getCollisionAction(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), Named::getID(), MSNet::getInstance(), MSStopOut::getInstance(), MSStop::getSpeed(), MSNet::getVehicleControl(), MSGlobals::gLateralResolution, MSNet::informVehicleStateListener(), INVALID_DOUBLE, MSBaseVehicle::isStopped(), MSStop::lane, MSParkingArea::leaveFrom(), MSStoppingPlace::leaveFrom(), MSBaseVehicle::myAmRegisteredAsWaiting, myCollisionImmunity, myLane, MSBaseVehicle::myMoveReminders, MSBaseVehicle::myPastStops, MSVehicle::State::myPosLat, MSBaseVehicle::myRoute, myState, myStopDist, MSBaseVehicle::myStops, myWaitingTime, MSStop::parkingarea, MSStop::pars, SUMOVehicleParameter::Stop::posLat, MSVehicleControl::registerStopEnded(), MSEdge::removeWaiting(), SUMOVehicleParameter::Stop::started, MSStopOut::stopEnded(), TIME2STEPS, MSVehicleControl::unregisterOneWaiting(), and updateBestLanes().
Referenced by MSLane::executeMovements(), leaveLane(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdToggleStop(), processNextStop(), and LIBSUMO_NAMESPACE::Vehicle::resume().
|
virtual |
Saves the states of a vehicle.
Reimplemented from MSBaseVehicle.
Definition at line 7583 of file MSVehicle.cpp.
References OutputDevice::closeTag(), MSVehicle::WaitingTimeCollector::getState(), MSBaseVehicle::isStopped(), myAngle, MSVehicle::State::myBackPos, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myDepartPos, MSBaseVehicle::myDeparture, MSBaseVehicle::myDevices, myLaneChangeModel, myLastActionTime, MSVehicle::State::myLastCoveredDist, MSBaseVehicle::myParameter, MSBaseVehicle::myPastStops, MSVehicle::State::myPos, MSVehicle::State::myPosLat, MSVehicle::State::myPreviousSpeed, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myStops, myTimeLoss, myWaitingTime, myWaitingTimeCollector, GeomHelper::naviDegree(), SUMOVehicleParameter::parametersSet, MSBaseVehicle::saveState(), MSAbstractLaneChangeModel::saveState(), STOP_ENDED_SET, STOP_STARTED_SET, SUMO_ATTR_ANGLE, SUMO_ATTR_ENDED, SUMO_ATTR_POSITION, SUMO_ATTR_POSITION_LAT, SUMO_ATTR_SPEED, SUMO_ATTR_STARTED, SUMO_ATTR_STATE, SUMO_ATTR_WAITINGTIME, time2string(), toString(), OutputDevice::writeAttr(), and Parameterised::writeParams().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2586 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myChargingMemory, and StoppingPlaceMemory::sawBlockedStoppingPlace().
|
virtualinherited |
Implements SUMOVehicle.
Definition at line 2569 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParkingMemory, and StoppingPlaceMemory::sawBlockedStoppingPlace().
void MSVehicle::setActionStepLength | ( | double | actionStepLength, |
bool | resetActionOffset = true |
||
) |
Sets the action steplength of the vehicle.
actionStepLength | New value |
resetActionOffset | whether the action offset should be reset to zero, i.e., the next action step should follow immediately. |
Definition at line 1455 of file MSVehicle.cpp.
References getActionStepLength(), MSBaseVehicle::getSingularType(), SUMOVehicleParserHelper::processActionStepLength(), resetActionOffset(), MSVehicleType::setActionStepLength(), and updateActionOffset().
Referenced by planMove().
void MSVehicle::setAngle | ( | double | angle, |
bool | straightenFurther = false |
||
) |
Set a custom vehicle angle in rad, optionally updates furtherLanePosLat.
Definition at line 1431 of file MSVehicle.cpp.
References DEBUG_COND, Named::getID(), getLateralPositionOnLane(), MSLink::getLateralShift(), MSLane::getLinkTo(), myAngle, myFurtherLanes, myFurtherLanesPosLat, myLane, and SIMTIME.
Referenced by MSLaneChangerSublane::abortLCManeuver(), MSVehicle::Influencer::postProcessRemoteControl(), and MSLaneChangerSublane::startChangeSublane().
void MSVehicle::setApproachingForAllLinks | ( | const SUMOTime | t | ) |
Register junction approaches for all link items in the current plan.
Definition at line 5335 of file MSVehicle.cpp.
References checkActionStep(), DEBUG_COND, Named::getID(), MSRailSignalControl::getInstance(), getLane(), getLaneChangeModel(), getLateralPositionOnLane(), MSLink::getOppositeDirectionLink(), MSLink::getParallelLink(), MSLane::getRightSideOnEdge(), MSBaseVehicle::getRNG(), MSAbstractLaneChangeModel::getShadowDirection(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getVClass(), getWaitingTime(), MSAbstractLaneChangeModel::isOpposite(), isRailway(), LINKSTATE_ALLWAY_STOP, myLaneChangeModel, myLFLinkLanes, myLFLinkLanesPrev, MSRailSignalControl::notifyApproach(), RAIL_SIGNAL, RandHelper::rand(), removeApproachingInformation(), MSLink::setApproaching(), MSAbstractLaneChangeModel::setShadowApproachingInformation(), and SIMTIME.
|
inlinevirtualinherited |
Sets this vehicle's desired arrivalPos for its current route.
Implements SUMOVehicle.
Definition at line 407 of file MSBaseVehicle.h.
References MSBaseVehicle::myArrivalPos.
|
protected |
sets the blue flashing light for emergency vehicles
Definition at line 6626 of file MSVehicle.cpp.
References getBestLanesContinuation(), getCarFollowModel(), getLane(), MSAbstractLaneChangeModel::getLaneChangeDirection(), MSLane::getLength(), MSLane::getLinkCont(), MSAbstractLaneChangeModel::getOwnState(), getPositionOnLane(), MSVehicle::Influencer::getSignals(), MSBaseVehicle::getVClass(), MSLane::getVehicleMaxSpeed(), MSGlobals::gLefthand, MSBaseVehicle::hasStops(), MSAbstractLaneChangeModel::isChangingLanes(), LCA_BLOCKED, LCA_KEEPRIGHT, LCA_LEFT, LCA_RIGHT, LCA_SUBLANE, LEFT, myInfluencer, myLane, myLaneChangeModel, mySignals, myStopDist, MSBaseVehicle::myStops, OFFROAD, PARTLEFT, PARTRIGHT, RIGHT, MSVehicle::Influencer::setSignals(), MSLane::succLinkSec(), std::swap(), switchOffSignal(), switchOnSignal(), TURN, VEH_SIGNAL_BLINKER_LEFT, and VEH_SIGNAL_BLINKER_RIGHT.
Referenced by executeMove().
|
protected |
sets the braking lights on/off
Definition at line 4127 of file MSVehicle.cpp.
References ACCEL2SPEED, getSpeed(), MSBaseVehicle::isStopped(), SUMO_const_haltingSpeed, switchOffSignal(), switchOnSignal(), and VEH_SIGNAL_BRAKELIGHT.
Referenced by executeMove(), and MSVehicle::Influencer::postProcessRemoteControl().
|
inherited |
set individual carFollow model parameters (not type related)
Definition at line 2328 of file MSBaseVehicle.cpp.
References getCarFollowModel(), MSBaseVehicle::getParameter(), SUMOVehicleParameter::parametersSet, MSCFModel::setParameter(), SUMO_ATTR_CF_IGNORE_IDS, SUMO_ATTR_CF_IGNORE_TYPES, toString(), and VEHPARS_CFMODEL_PARAMS_SET.
Referenced by MSBaseVehicle::initTransientModelParams().
|
inlinevirtualinherited |
Returns the precomputed factor by which the driver wants to be faster than the speed limit.
Implements SUMOVehicle.
Definition at line 576 of file MSBaseVehicle.h.
References MSBaseVehicle::myChosenSpeedFactor.
Referenced by MSDevice_GLOSA::adaptSpeed(), MSCFModel_CC::finalizeSpeed(), LIBSUMO_NAMESPACE::Simulation::findRoute(), MSDevice_GLOSA::notifyEnter(), MSDevice_GLOSA::notifyMove(), and GUISUMOViewParent::onCmdSpeedFactor().
|
inherited |
apply departEdge and arrivalEdge attributes
Definition at line 959 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::arrivalEdge, SUMOVehicleParameter::arrivalEdgeProcedure, DEFAULT, SUMOVehicleParameter::departEdge, SUMOVehicleParameter::departEdgeProcedure, Named::getID(), GIVEN, MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, RandHelper::rand(), RANDOM, TL, toString(), and WRITE_WARNINGF.
Referenced by MSBaseVehicle::MSBaseVehicle(), and MSBaseVehicle::reroute().
|
inherited |
try to set the given parameter from any of the vehicles devices, raise InvalidArgument if no device parameter by that name exists
Definition at line 2304 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDevices, and TLF.
|
protected |
sets the blue flashing light for emergency vehicles
Definition at line 6687 of file MSVehicle.cpp.
References signalSet(), switchOffSignal(), switchOnSignal(), and VEH_SIGNAL_EMERGENCY_BLUE.
Referenced by executeMove().
bool MSVehicle::setExitManoeuvre | ( | ) |
accessor function to myManoeuvre equivalent
Definition at line 7733 of file MSVehicle.cpp.
References MSVehicle::Manoeuvre::configureExitManoeuvre(), and myManoeuvre.
Referenced by MSVehicleTransfer::checkInsertions().
|
virtualinherited |
set the id (inherited from Named but forbidden for vehicles)
Reimplemented from Named.
Definition at line 183 of file MSBaseVehicle.cpp.
References TL.
|
inline |
access function for Idling flag used to record whether vehicle is waiting to enter lane (after parking)
Definition at line 613 of file MSVehicle.h.
References myAmIdling.
Referenced by MSVehicleTransfer::checkInsertions().
|
inherited |
set individual junction model paramete (not type related)
Definition at line 2316 of file MSBaseVehicle.cpp.
References Named::getID(), MSBaseVehicle::getParameter(), SUMOVehicleParameter::parametersSet, SUMO_ATTR_JM_IGNORE_IDS, SUMO_ATTR_JM_IGNORE_TYPES, TLF, toString(), and VEHPARS_JUNCTIONMODEL_PARAMS_SET.
Referenced by MSBaseVehicle::initTransientModelParams().
|
inline |
Definition at line 417 of file MSVehicle.h.
References MSVehicle::State::myPosLat, and myState.
Referenced by MSVehicleTransfer::checkInsertions(), MSLCM_LC2013::prepareStep(), and LIBSUMO_NAMESPACE::Vehicle::setLateralLanePosition().
void MSVehicle::setManoeuvreType | ( | const MSVehicle::ManoeuvreType | mType | ) |
accessor function to myManoeuvre equivalent
Definition at line 7794 of file MSVehicle.cpp.
References myManoeuvre, and MSVehicle::Manoeuvre::setManoeuvreType().
Referenced by planMove().
|
inlinevirtualinherited |
Implements SUMOVehicle.
Definition at line 1001 of file MSBaseVehicle.h.
References MSBaseVehicle::myNumberParkingReroutes.
void MSVehicle::setPreviousSpeed | ( | double | prevSpeed, |
double | prevAcceleration | ||
) |
Sets the influenced previous speed.
[in] | A | double value with the speed that overwrites the previous speed |
[in] | A | double value with the acceleration that overwrites the previous acceleration |
Definition at line 7714 of file MSVehicle.cpp.
References MAX2(), myAcceleration, MSVehicle::State::myPreviousSpeed, MSVehicle::State::mySpeed, myState, and SPEED2ACCEL.
Referenced by LIBSUMO_NAMESPACE::Vehicle::setPreviousSpeed().
void MSVehicle::setRemoteState | ( | Position | xyPos | ) |
sets position outside the road network
Definition at line 7333 of file MSVehicle.cpp.
References myCachedPosition.
Referenced by MSVehicle::Influencer::postProcessRemoteControl().
|
inlineinherited |
Sets routing behavior.
[in] | value | an enum value controlling the different modes |
Definition at line 933 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoutingMode.
Referenced by LIBSUMO_NAMESPACE::Simulation::findRoute(), MSBaseVehicle::initTransientModelParams(), LIBSUMO_NAMESPACE::Vehicle::rerouteTraveltime(), and LIBSUMO_NAMESPACE::Vehicle::setRoutingMode().
|
privateinherited |
patch stop.pars.index to record the number of skipped candidate edges before stop.edge (in a looped route)
Definition at line 1455 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::departEdge, MSStop::edge, SUMOVehicleParameter::Stop::endPos, MSBaseVehicle::hasDeparted(), MSBaseVehicle::myDepartPos, MSBaseVehicle::myParameter, MSBaseVehicle::myPastStops, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, MSStop::pars, and STOP_INDEX_END.
Referenced by MSBaseVehicle::addStop(), and MSBaseVehicle::replaceRoute().
void MSVehicle::setTentativeLaneAndPosition | ( | MSLane * | lane, |
double | pos, | ||
double | posLat = 0 |
||
) |
set tentative lane and position during insertion to ensure that all cfmodels work (some of them require veh->getLane() to return a valid lane) Once the vehicle is successfully inserted the lane is set again (see enterLaneAtInsertion)
Definition at line 6707 of file MSVehicle.cpp.
References MSVehicleType::getLength(), MSBaseVehicle::getVehicleType(), MSVehicle::State::myBackPos, myLane, MSVehicle::State::myPos, MSVehicle::State::myPosLat, and myState.
Referenced by MSLane::freeInsertion(), MSLane::isInsertionSuccess(), MSLane::lastInsertion(), MSVehicleTransfer::loadState(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSDevice_Bluelight::notifyMove(), and MSAbstractLaneChangeModel::primaryLaneChanged().
|
inline |
Returns whether the given signal is on.
[in] | signal | The signal to return the value of |
Definition at line 1182 of file MSVehicle.h.
References mySignals.
Referenced by MSVehicleTransfer::checkInsertions(), checkRewindLinkLanes(), GUIVehicle::drawAction_drawVehicleBlinker(), GUIVehicle::drawAction_drawVehicleBlueLight(), GUIVehicle::drawAction_drawVehicleBrakeLight(), and setEmergencyBlueLight().
|
protected |
optionally return an upper bound on speed to stay within the schedule
Definition at line 2992 of file MSVehicle.cpp.
References SUMOVehicleParameter::Stop::arrival, DEBUG_COND, estimateTimeToNextStop(), getCarFollowModel(), MSBaseVehicle::getChosenSpeedFactor(), Named::getID(), MSCFModel::getMaxDecel(), MSBaseVehicle::getMaxSpeed(), MSVehicleType::getParameter(), Parameterised::getParameter(), MSLane::getSpeedLimit(), MSBaseVehicle::getVehicleType(), MSGlobals::gUseStopStarted, Parameterised::hasParameter(), MAX2(), myLane, MSBaseVehicle::myStops, MSStop::pars, SIMSTEP, SIMTIME, SUMOVTypeParameter::speedFactorPremature, SUMOVehicleParameter::Stop::started, STEPS2TIME, string2time(), SUMO_ATTR_FLEX_ARRIVAL, and toString().
Referenced by planMoveInternal().
|
virtualinherited |
Returns whether the vehicle stops at the given stopping place.
Implements SUMOVehicle.
Definition at line 238 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myStops.
|
virtualinherited |
Returns whether the vehicle stops at the given edge.
Implements SUMOVehicle.
Definition at line 254 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myRoute, and MSBaseVehicle::myStops.
|
virtualinherited |
Returns the nSuccs'th successor of edge the vehicle is currently at.
If the rest of the route (counted from the current edge) has less than nSuccs edges, 0 is returned.
[in] | nSuccs | The number of edge to look forward |
Implements SUMOVehicle.
Definition at line 212 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
Referenced by MSVehicleTransfer::add(), MSLane::appropriate(), MELoop::checkCar(), MSVehicleTransfer::checkInsertions(), MSLane::executeMovements(), MESegment::getLink(), getNextEdgePtr(), MSBaseVehicle::hasArrived(), MESegment::hasSpaceFor(), MSPedestrianPushButton::isActiveForEdge(), and MELoop::nextSegment().
|
inline |
Switches the given signal off.
[in] | signal | The signal to mark as being switched off |
Definition at line 1165 of file MSVehicle.h.
References mySignals.
Referenced by MSAbstractLaneChangeModel::endLaneChangeManeuver(), setBlinkerInformation(), setBrakingSignals(), setEmergencyBlueLight(), LIBSUMO_NAMESPACE::Vehicle::setSignals(), and MSAbstractLaneChangeModel::startLaneChangeManeuver().
|
inline |
Switches the given signal on.
[in] | signal | The signal to mark as being switched on |
Definition at line 1157 of file MSVehicle.h.
References mySignals.
Referenced by MSVehicleTransfer::checkInsertions(), setBlinkerInformation(), setBrakingSignals(), setEmergencyBlueLight(), LIBSUMO_NAMESPACE::Vehicle::setSignals(), and MSAbstractLaneChangeModel::startLaneChangeManeuver().
|
virtualinherited |
mark vehicle as active
Implements SUMOVehicle.
Definition at line 1702 of file MSBaseVehicle.cpp.
References MSNet::getInstance(), MSNet::getVehicleControl(), MSBaseVehicle::myAmRegisteredAsWaiting, and MSVehicleControl::unregisterOneWaiting().
bool MSVehicle::unsafeLinkAhead | ( | const MSLane * | lane | ) | const |
whether the vehicle may safely move to the given lane with regard to upcoming links
Definition at line 6956 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), getBestLanesContinuation(), getCarFollowModel(), MSLane::getEdge(), MSBaseVehicle::getLength(), MSLane::getLength(), getPositionOnLane(), getSpeed(), MSBaseVehicle::getVehicleType(), MSEdge::isInternal(), MSLane::isLinkEnd(), LINKSTATE_ZIPPER, myLane, myLFLinkLanes, and MSLane::succLinkSec().
Referenced by MSLaneChanger::checkChange().
void MSVehicle::updateActionOffset | ( | const SUMOTime | oldActionStepLength, |
const SUMOTime | newActionStepLength | ||
) |
Process an updated action step length value (only affects the vehicle's action offset, The actionStepLength is stored in the (singular) vtype)
[in] | oldActionStepLength | The action step length previous to the update |
[in] | actionStepLength | The new action step length (stored in the vehicle's vtype). |
Definition at line 2077 of file MSVehicle.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), myLastActionTime, and resetActionOffset().
Referenced by MSVehicleType::setActionStepLength(), and setActionStepLength().
void MSVehicle::updateBestLanes | ( | bool | forceRebuild = false , |
const MSLane * | startLane = 0 |
||
) |
computes the best lanes to use in order to continue the route
The information is rebuilt if the vehicle is on a different edge than the one stored in "myLastBestLanesEdge" or "forceRebuild" is true.
Otherwise, only the density changes on the stored lanes are adapted to the container only.
A rebuild must be done if the vehicle leaves a stop; then, another lane may become the best one.
If no starting lane ("startLane") is given, the vehicle's current lane ("myLane") is used as start of best lanes building.
[in] | forceRebuild | Whether the best lanes container shall be rebuilt even if the vehicle's edge has not changed |
[in] | startLane | The lane the process shall start at ("myLane" will be used if ==0) |
Definition at line 5822 of file MSVehicle.cpp.
References MSEdge::allowedLanes(), MSVehicle::LaneQ::allowsContinuation, MSLane::allowsVehicleClass(), SUMOVehicleParameter::arrivalLaneProcedure, MSVehicle::LaneQ::bestContinuations, MSVehicle::LaneQ::bestLaneOffset, betterContinuation(), MSCFModel::brakeGap(), MSEdge::clear(), MSVehicle::LaneQ::currentLength, DEBUG_COND, MSStop::edge, getBestLanesContinuation(), getCarFollowModel(), MSBaseVehicle::getDevice(), MSLane::getEdge(), MSCFModel::getHeadwayTime(), Named::getID(), Named::getIDSecure(), MSNet::getInstance(), MSEdge::getLanes(), MSLane::getLength(), MSLane::getLinkCont(), MSLane::getLogicalPredecessorLane(), MSBaseVehicle::getMaxSpeed(), MSVehicleType::getMinGap(), MSLane::getNextNormal(), MSLane::getNormalPredecessorLane(), MSEdge::getOppositeEdge(), MSStop::getSpeed(), MSNet::getStoppingPlaceID(), MSBaseVehicle::getVClass(), MSVehicleType::getVehicleClass(), MSBaseVehicle::getVehicleType(), GIVEN, MSEdge::isInternal(), MSLane::isInternal(), MSAbstractLaneChangeModel::isOpposite(), MSStop::isOpposite, isOppositeLane(), isRailway(), MSStop::lane, MSVehicle::LaneQ::lane, MSVehicle::LaneQ::length, MAX2(), MIN2(), MSBaseVehicle::myArrivalLane, MSBaseVehicle::myArrivalPos, myBestLanes, MSBaseVehicle::myCurrEdge, myCurrentLaneInBestLanes, myLane, myLaneChangeModel, myLastBestLanesEdge, myLastBestLanesInternalLane, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::myStops, MSBaseVehicle::myType, nextLinkPriority(), MSVehicle::LaneQ::nextOccupation, MSVehicle::LaneQ::occupation, MSStop::pars, SIMTIME, SUMOVehicleParameter::Stop::startPos, SUMO_TAG_OVERHEAD_WIRE_SEGMENT, toString(), updateBestLanes(), and updateOccupancyAndCurrentBestLane().
Referenced by addTraciStop(), MSLaneChanger::change(), MSLaneChangerSublane::change(), enterLaneAtLaneChange(), executeMove(), MSLane::forceVehicleInsertion(), MSEdge::getDepartLane(), MSLane::isInsertionSuccess(), MSLane::lastInsertion(), MSLane::loadState(), MSDevice_GLOSA::notifyEnter(), MSVehicle::Influencer::postProcessRemoteControl(), processLinkApproaches(), replaceRoute(), LIBSUMO_NAMESPACE::Vehicle::replaceStop(), resumeFromStopping(), LIBSUMO_NAMESPACE::Vehicle::setType(), updateBestLanes(), LIBSUMO_NAMESPACE::Vehicle::updateBestLanes(), and MSVehicle::Influencer::updateRemoteControlRoute().
void MSVehicle::updateDriveItems | ( | ) |
Check whether the drive items (myLFLinkLanes) are up to date, and update them if required.
Definition at line 3967 of file MSVehicle.cpp.
References DEBUG_COND, getBestLanesContinuation(), Named::getID(), getLane(), MSLink::getLaneBefore(), MSLane::getLinkCont(), MSLink::getParallelLink(), MSLink::getViaLaneOrLane(), MSLane::isInternal(), myLane, myLFLinkLanes, myNextDriveItem, MSLink::removeApproaching(), MSLink::setApproaching(), and SIMTIME.
Referenced by MSAbstractLaneChangeModel::primaryLaneChanged().
double MSVehicle::updateFurtherLanes | ( | std::vector< MSLane * > & | furtherLanes, |
std::vector< double > & | furtherLanesPosLat, | ||
const std::vector< MSLane * > & | passedLanes | ||
) |
update a vector of further lanes and return the new backPos
Definition at line 4901 of file MSVehicle.cpp.
References DEBUG_COND, MSLane::getBidiLane(), Named::getID(), MSBaseVehicle::getLength(), MSLane::getPermissions(), MSBaseVehicle::getVClass(), isRailway(), myFurtherLanes, myFurtherLanesPosLat, MSVehicle::State::myPos, MSVehicle::State::myPosLat, myState, MSLane::resetPartialOccupation(), MSLane::setPartialOccupation(), SIMTIME, and toString().
Referenced by executeMove(), MSVehicle::Influencer::postProcessRemoteControl(), and MSAbstractLaneChangeModel::updateShadowLane().
void MSVehicle::updateLaneBruttoSum | ( | ) |
Update the lane brutto occupancy after a change in minGap.
Definition at line 6252 of file MSVehicle.cpp.
References MSLane::markRecalculateBruttoSum(), and myLane.
Referenced by LIBSUMO_NAMESPACE::Vehicle::setType().
|
protected |
updates LaneQ::nextOccupation and myCurrentLaneInBestLanes
Definition at line 6302 of file MSVehicle.cpp.
References DEBUG_COND, myBestLanes, and myCurrentLaneInBestLanes.
Referenced by updateBestLanes().
void MSVehicle::updateParkingState | ( | ) |
update state while parking
Definition at line 4867 of file MSVehicle.cpp.
References getPositionOnLane(), MSBaseVehicle::myContainerDevice, MSBaseVehicle::myDevices, MSBaseVehicle::myPersonDevice, MSDevice_Transportable::notifyMove(), and updateState().
Referenced by MSVehicleTransfer::checkInsertions().
|
protected |
updates the vehicles state, given a next value for its speed. This value can be negative in case of the ballistic update to indicate a stop within the next timestep. (You can call this a 'hack' to emulate reasoning based on accelerations: The assumed constant acceleration a within the next time step is then a = (vNext - vCurrent)/TS )
[in] | vNext | speed in the next time step |
Definition at line 4813 of file MSVehicle.cpp.
References DEBUG_COND, MSGlobals::gEmergencyDecelWarningThreshold, getCarFollowModel(), getDeltaPos(), Named::getID(), MSNet::getInstance(), MSCFModel::getMaxDecel(), MSNet::getVehicleControl(), MSGlobals::gSemiImplicitEulerUpdate, MSVehicle::Influencer::implicitDeltaPosRemote(), Position::INVALID, isRemoteControlled(), MAX2(), myAcceleration, myCachedPosition, myInfluencer, myLane, MSVehicle::State::myLastCoveredDist, myNextTurn, MSVehicle::State::myPos, MSVehicle::State::myPreviousSpeed, MSVehicle::State::mySpeed, myState, MSVehicleControl::registerEmergencyBraking(), SIMSTEP, SIMTIME, SPEED2ACCEL, SPEED2DIST, time2string(), TL, and WRITE_WARNINGF.
Referenced by executeMove(), and updateParkingState().
|
protected |
Updates the vehicle's time loss.
Definition at line 4161 of file MSVehicle.cpp.
References MSLane::getVehicleMaxSpeed(), MSBaseVehicle::isStopped(), myLane, myTimeLoss, and TS.
Referenced by executeMove().
|
protected |
Updates the vehicle's waiting time counters (accumulated and consecutive)
Definition at line 4146 of file MSVehicle.cpp.
References accelThresholdForWaiting(), DELTA_T, getInfluencer(), hasInfluencer(), isIdling(), MSBaseVehicle::isStopped(), myAcceleration, myWaitingTime, myWaitingTimeCollector, MSVehicle::WaitingTimeCollector::passTime(), MSBaseVehicle::BaseInfluencer::setExtraImpatience(), and SUMO_const_haltingSpeed.
Referenced by executeMove(), MSVehicle::Influencer::postProcessRemoteControl(), and workOnIdleReminders().
ensure that a vehicle-relative position is not invalid
Definition at line 1393 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), getLateralPositionOnLane(), MSLane::getLength(), getPositionOnLane(), Position::INVALID, and myFurtherLanes.
Referenced by getPosition().
Returns the information whether the vehicle is fully controlled via TraCI within the lookBack time.
Reimplemented from MSBaseVehicle.
Definition at line 7345 of file MSVehicle.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSVehicle::Influencer::getLastAccessTimeStep(), and myInfluencer.
bool MSVehicle::willStop | ( | ) | const |
Returns whether the vehicle will stop on the current edge.
Definition at line 1580 of file MSVehicle.cpp.
References MSLane::getEdge(), MSBaseVehicle::isStopped(), myLane, and MSBaseVehicle::myStops.
Referenced by MSLink::getLeaderInfo(), and MSDevice_StationFinder::notifyMove().
void MSVehicle::workOnIdleReminders | ( | ) |
cycle through vehicle devices invoking notifyIdle
This is only implemented on the emissions device implemented to allow capture of emissions when vehicle is not on net.
Definition at line 1185 of file MSVehicle.cpp.
References getLane(), MSLane::getMoveReminders(), MSBaseVehicle::myMoveReminders, and updateWaitingTime().
Referenced by MSVehicleTransfer::checkInsertions().
void MSVehicle::workOnMoveReminders | ( | double | oldPos, |
double | newPos, | ||
double | newSpeed | ||
) |
Processes active move reminder.
This method goes through all active move reminder, both those for the current lane, stored in "myMoveReminders" and those of prior lanes stored in "myOldLaneMoveReminders" calling "MSMoveReminder::notifyMove".
When processing move reminder from "myOldLaneMoveReminders", the offsets (prior lane lengths) are used, which are stored in "myOldLaneMoveReminderOffsets".
Each move reminder which is no longer active is removed from the container.
[in] | oldPos | The position the vehicle had before it has moved |
[in] | newPos | The position the vehicle has after it has moved |
[in] | newSpeed | The vehicle's speed within this move |
Definition at line 1142 of file MSVehicle.cpp.
References EnergyParams::getDouble(), MSBaseVehicle::getNextStop(), MSBaseVehicle::getWaitingSeconds(), MSBaseVehicle::isParking(), MSBaseVehicle::isStopped(), MAX2(), MSBaseVehicle::myEnergyParams, MSBaseVehicle::myMoveReminders, EnergyParams::setDouble(), STEPS2TIME, SUMO_ATTR_DURATION, SUMO_ATTR_PARKING, and SUMO_ATTR_WAITINGTIME.
Referenced by executeFractionalMove(), and executeMove().
|
friend |
the lane changer sets myLastLaneChangeOffset
Definition at line 81 of file MSVehicle.h.
|
friend |
Definition at line 82 of file MSVehicle.h.
|
protected |
The current acceleration after dawdling in m/s.
Definition at line 1898 of file MSVehicle.h.
Referenced by executeMove(), getAcceleration(), loadState(), MSVehicle::Influencer::postProcessRemoteControl(), setPreviousSpeed(), updateState(), and updateWaitingTime().
|
protected |
The flag myActionStep indicates whether the current time step is an action point for the vehicle.
Definition at line 1868 of file MSVehicle.h.
Referenced by checkActionStep(), executeMove(), and isActive().
|
protected |
Whether the vehicle is trying to enter the network (eg after parking so engine is running)
Definition at line 1916 of file MSVehicle.h.
Referenced by isIdling(), and setIdling().
|
protected |
Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived)
Definition at line 1913 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), isOnRoad(), and leaveLane().
|
protectedinherited |
Whether this vehicle is registered as waiting for a person or container (for deadlock-recognition)
Definition at line 1093 of file MSBaseVehicle.h.
Referenced by boardTransportables(), joinTrainPart(), joinTrainPartFront(), MEVehicle::mayProceed(), processNextStop(), MEVehicle::resumeFromStopping(), resumeFromStopping(), and MSBaseVehicle::unregisterWaiting().
|
protectedinherited |
Definition at line 1105 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::isReversed(), and processLaneAdvances().
|
protected |
the angle in radians (
Definition at line 1921 of file MSVehicle.h.
Referenced by MSLaneChanger::continueChange(), enterLaneAtInsertion(), enterLaneAtLaneChange(), executeMove(), getAngle(), getVelocityVector(), handleCollisionStop(), loadState(), saveState(), and setAngle().
|
protectedinherited |
The destination lane where the vehicle stops.
Definition at line 1073 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::calculateArrivalParams(), MSBaseVehicle::getArrivalLane(), and updateBestLanes().
|
protectedinherited |
The position on the destination lane where the vehicle stops.
Definition at line 1070 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::calculateArrivalParams(), MSBaseVehicle::getArrivalPos(), MSBaseVehicle::getOdometer(), MEVehicle::hasArrived(), hasArrivedInternal(), planMoveInternal(), processNextStop(), MSBaseVehicle::reroute(), MSBaseVehicle::resetRoutePosition(), MSBaseVehicle::setArrivalPos(), and updateBestLanes().
|
protected |
Definition at line 1888 of file MSVehicle.h.
Referenced by adaptBestLanesOccupation(), GUIVehicle::drawBestLanes(), getBestLaneDist(), getBestLaneOffset(), getBestLanes(), getBestLanesContinuation(), getBestLanesContinuation(), updateBestLanes(), and updateOccupancyAndCurrentBestLane().
|
mutableprotected |
Definition at line 1929 of file MSVehicle.h.
Referenced by MSLaneChanger::continueChange(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), executeFractionalMove(), executeMove(), getPosition(), handleCollisionStop(), invalidateCachedPosition(), setRemoteState(), MSLaneChangerSublane::startChangeSublane(), and updateState().
|
private |
The per vehicle variables of the car following model.
Definition at line 2142 of file MSVehicle.h.
Referenced by getCarFollowVariables(), MSVehicle(), replaceVehicleType(), and ~MSVehicle().
|
protectedinherited |
Definition at line 1089 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getChargingMemory(), MSBaseVehicle::rememberBlockedChargingStation(), MSBaseVehicle::rememberChargingStationScore(), MSBaseVehicle::resetChargingStationScores(), MSBaseVehicle::sawBlockedChargingStation(), and MSBaseVehicle::~MSBaseVehicle().
|
protectedinherited |
A precomputed factor by which the driver wants to be faster than the speed limit.
Definition at line 1028 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getChosenSpeedFactor(), MSBaseVehicle::getMaxSpeed(), MSBaseVehicle::replaceVehicleType(), MSBaseVehicle::saveState(), and MSBaseVehicle::setChosenSpeedFactor().
|
protected |
amount of time for which the vehicle is immune from collisions
Definition at line 1927 of file MSVehicle.h.
Referenced by collisionStopTime(), executeMove(), ignoreCollision(), processNextStop(), and resumeFromStopping().
|
protectedinherited |
The containers this vehicle may have.
Definition at line 1058 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addTransportable(), GUIBaseVehicle::drawAction_drawPersonsAndContainers(), MSBaseVehicle::getContainerDevice(), MSBaseVehicle::getContainerNumber(), MSBaseVehicle::getContainers(), processNextStop(), MSBaseVehicle::removeTransportable(), and updateParkingState().
|
protectedinherited |
Iterator to current route-edge.
Definition at line 1025 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addStop(), checkReversal(), MEVehicle::checkStop(), GUIVehicle::drawRouteHelper(), GUIMEVehicle::drawRouteHelper(), enterLaneAtMove(), estimateTimeToNextStop(), MSBaseVehicle::getCurrentRouteEdge(), MSBaseVehicle::getEdge(), getNextEdgePtr(), getPastLanesUntil(), MSBaseVehicle::getRerouteOrigin(), getRerouteOrigin(), MSBaseVehicle::getRoutePosition(), MSBaseVehicle::getUpcomingEdgeIDs(), getUpcomingLanesUntil(), handleCollisionStop(), MEVehicle::hasArrived(), hasArrivedInternal(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::haveValidStopEdges(), MSBaseVehicle::insertStop(), isOppositeLane(), leaveLane(), MEVehicle::loadState(), loadState(), MEVehicle::moveRoutePointer(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), processLaneAdvances(), processNextStop(), MEVehicle::processStop(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), MSBaseVehicle::rerouteBetweenStops(), rerouteParkingArea(), MSBaseVehicle::resetRoutePosition(), MEVehicle::saveState(), saveState(), MSBaseVehicle::setDepartAndArrivalEdge(), MSBaseVehicle::succEdge(), and updateBestLanes().
|
protected |
Definition at line 1893 of file MSVehicle.h.
Referenced by updateBestLanes(), and updateOccupancyAndCurrentBestLane().
|
staticprivateinherited |
Definition at line 1119 of file MSBaseVehicle.h.
|
protectedinherited |
The real depart position.
Definition at line 1067 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getDepartPos(), MSBaseVehicle::getOdometer(), MEVehicle::loadState(), loadState(), MSBaseVehicle::onDepart(), MEVehicle::saveState(), saveState(), and MSBaseVehicle::setSkips().
|
protectedinherited |
The real departure time.
Definition at line 1064 of file MSBaseVehicle.h.
Referenced by enterLaneAtInsertion(), MSBaseVehicle::getDeparture(), MSBaseVehicle::hasDeparted(), MEVehicle::loadState(), loadState(), MSBaseVehicle::onDepart(), MEVehicle::saveState(), and saveState().
|
protectedinherited |
The devices this vehicle has.
Definition at line 1052 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addTransportable(), MSBaseVehicle::createDevice(), MSBaseVehicle::getDevice(), MSBaseVehicle::getDeviceParameter(), MSBaseVehicle::getDevices(), GUIBaseVehicle::GUIBaseVehicle(), MSBaseVehicle::hasDevice(), MSBaseVehicle::initDevices(), MEVehicle::saveState(), saveState(), MSBaseVehicle::setDeviceParameter(), updateParkingState(), and MSBaseVehicle::~MSBaseVehicle().
|
protected |
This vehicle's driver state.
Definition at line 1862 of file MSVehicle.h.
Referenced by getDriverState(), hasDriverState(), initDevices(), and planMove().
|
mutableprivateinherited |
Definition at line 1115 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::_getWeightsStorage(), and MSBaseVehicle::~MSBaseVehicle().
|
staticprotected |
Definition at line 1895 of file MSVehicle.h.
Referenced by getBestLanesContinuation(), and getBestLanesContinuation().
|
staticprotectedinherited |
Definition at line 1100 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getContainers(), and MSBaseVehicle::getPersons().
|
mutableprotectedinherited |
The emission parameters this vehicle may have.
Definition at line 1061 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getEmissionParameters(), MSBaseVehicle::replaceVehicleType(), workOnMoveReminders(), and MSBaseVehicle::~MSBaseVehicle().
|
protected |
This vehicle's friction perception.
Definition at line 1865 of file MSVehicle.h.
Referenced by getFriction(), and initDevices().
|
protected |
The information into which lanes the vehicle laps into.
Definition at line 1905 of file MSVehicle.h.
Referenced by checkReversal(), cleanupFurtherLanes(), computeAngle(), computeFurtherLanes(), enterLaneAtLaneChange(), executeFractionalMove(), executeMove(), getBackLane(), GUIVehicle::getBackLaneIDs(), getBackPosition(), getBackPositionOnLane(), getBoundingBox(), getCenterOnEdge(), getFurtherLanes(), getLatOffset(), getPreviousLane(), getSlope(), joinTrainPart(), joinTrainPartFront(), leaveLane(), onFurtherEdge(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), processLaneAdvances(), setAngle(), updateFurtherLanes(), and validatePosition().
|
protected |
lateral positions on further lanes
Definition at line 1907 of file MSVehicle.h.
Referenced by cleanupFurtherLanes(), computeAngle(), computeFurtherLanes(), enterLaneAtLaneChange(), enterLaneAtMove(), executeFractionalMove(), executeMove(), getBackPosition(), getBackPositionOnLane(), getCenterOnEdge(), getFurtherLanesPosLat(), getLatOffset(), getSlope(), leaveLane(), MSVehicle::Influencer::postProcessRemoteControl(), setAngle(), MSLaneChangerSublane::startChangeSublane(), and updateFurtherLanes().
|
protected |
Definition at line 1918 of file MSVehicle.h.
Referenced by checkRewindLinkLanes(), and processLinkApproaches().
|
protectedinherited |
The name of the object.
Definition at line 125 of file Named.h.
Referenced by MSDriveWay::addBidiFoes(), MSE2Collector::addDetectorToLanes(), MSDriveWay::addFoes(), MSDriveWay::addParallelFoes(), MSDriveWay::addReversalFoes(), MSDriveWay::addSwitchFoes(), RODFDetector::buildDestinationDistribution(), MSDriveWay::buildDriveWay(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), NEMALogic::constructTimingAndPhaseDefs(), MSE2Collector::detectorUpdate(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), NEMALogic::getPhaseObj(), ROEdge::getStoredEffort(), GNEPOI::getSumoBaseObject(), MSLane::getSurroundingVehicles(), ROEdge::getTravelTime(), NBEdge::init(), MSSOTLTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), NEMALogic::init(), MSLane::isInsertionSuccess(), NBNode::NBNode(), NBNode::NBNode(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), NEMALogic::parseControllerType(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), NBEdge::setGeometry(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), Distribution_Parameterized::toStr(), MSChargingStation::writeAggregatedChargingStationOutput(), MSDriveWay::writeBlocks(), MSDriveWay::writeBlockVehicles(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSOverheadWire::writeOverheadWireSegmentOutput(), RODFDetector::writeSingleSpeedTrigger(), MSTractionSubstation::writeTractionSubstationOutput(), MEInductLoop::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
private |
An instance of a velocity/lane influencing instance; built in "getInfluencer".
Definition at line 2145 of file MSVehicle.h.
Referenced by checkLinkLeaderCurrentAndParallel(), checkRewindLinkLanes(), enterLaneAtMove(), getBaseInfluencer(), getInfluencer(), getInfluencer(), getPosition(), getSpeedWithoutTraciInfluence(), hasInfluencer(), ignoreRed(), isRemoteControlled(), planMove(), planMoveInternal(), processLaneAdvances(), processLinkApproaches(), processTraCISpeedControl(), setBlinkerInformation(), updateState(), wasRemoteControlled(), and ~MSVehicle().
|
protected |
Definition at line 1934 of file MSVehicle.h.
Referenced by checkLinkLeader(), isLeader(), processLaneAdvances(), and processLinkApproaches().
|
protected |
time at which the current junction was entered
Definition at line 1932 of file MSVehicle.h.
Referenced by checkLinkLeader(), isLeader(), processLaneAdvances(), and processLinkApproaches().
|
protected |
Definition at line 1933 of file MSVehicle.h.
Referenced by checkLinkLeader(), isLeader(), and processLaneAdvances().
|
protected |
The lane the vehicle is on.
Definition at line 1876 of file MSVehicle.h.
Referenced by adaptLaneEntering2MoveReminder(), adaptToJunctionLeader(), adaptToLeader(), adaptToLeaders(), adaptToOncomingLeader(), addTraciStop(), boardTransportables(), brakeForOverlap(), checkLinkLeader(), checkReversal(), checkRewindLinkLanes(), computeAngle(), computeFurtherLanes(), congested(), GUIVehicle::drawRouteHelper(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), estimateTimeToNextStop(), executeFractionalMove(), executeMove(), getBackLane(), getBackPosition(), getBackPositionOnLane(), getBackPositionOnLane(), getCenterOnEdge(), getCurrentEdge(), getDistanceToLeaveJunction(), getDistanceToPosition(), getFollower(), getLane(), GUIVehicle::getLaneID(), getLaneIndex(), getLanePosAfterDist(), getLateralOverlap(), getLatOffset(), getLeader(), getLeftSideOnLane(), GUIVehicle::getLeftSublaneOnEdge(), getMaxSpeedOnLane(), getMutableLane(), getNextEdgePtr(), getPastLanesUntil(), getPosition(), getPositionAlongBestLanes(), getPreviousLane(), getRerouteOrigin(), getRightSideOnLane(), GUIVehicle::getRightSublaneOnEdge(), getSlope(), getUpcomingLanesUntil(), getUpstreamOppositeLanes(), GUIVehicle::getVisualAngle(), GUIVehicle::getVisualPosition(), handleCollisionStop(), hasArrivedInternal(), influenceChangeDecision(), interpolateLateralZ(), isBidiOn(), isFrontOnLane(), isLeader(), isStoppedOnLane(), joinTrainPart(), joinTrainPartFront(), lateralDistanceToLane(), leaveLane(), passingMinor(), planMove(), planMoveInternal(), processLaneAdvances(), processLinkApproaches(), processNextStop(), rerouteParkingArea(), resumeFromStopping(), GUIVehicle::selectBlockingFoes(), setAngle(), setBlinkerInformation(), setTentativeLaneAndPosition(), slowDownForSchedule(), unsafeLinkAhead(), updateBestLanes(), updateDriveItems(), updateLaneBruttoSum(), updateState(), updateTimeLoss(), and willStop().
|
protected |
Definition at line 1878 of file MSVehicle.h.
Referenced by adaptToLeaders(), brakeForOverlap(), checkLinkLeader(), checkLinkLeaderCurrentAndParallel(), checkRewindLinkLanes(), cleanupFurtherLanes(), computeAngle(), computeFurtherLanes(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), executeMove(), fixPosition(), getBackPosition(), getBackPositionOnLane(), getCenterOnEdge(), getLaneChangeModel(), getLaneChangeModel(), getLatOffset(), getPastLanesUntil(), getPosition(), getPositionAlongBestLanes(), getUpcomingLanesUntil(), GUIVehicle::getVisualAngle(), handleCollisionStop(), hasArrivedInternal(), initDevices(), interpolateLateralZ(), isFrontOnLane(), loadState(), planMove(), planMoveInternal(), processLaneAdvances(), processLinkApproaches(), removeApproachingInformation(), saveState(), setApproachingForAllLinks(), setBlinkerInformation(), updateBestLanes(), and ~MSVehicle().
|
protected |
Action offset (actions are taken at time myActionOffset + N*getActionStepLength()) Initialized to 0, to be set at insertion.
Definition at line 1871 of file MSVehicle.h.
Referenced by checkActionStep(), enterLaneAtInsertion(), getLastActionTime(), isActionStep(), loadState(), resetActionOffset(), saveState(), and updateActionOffset().
|
protected |
Definition at line 1880 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), enterLaneAtMove(), replaceRoute(), and updateBestLanes().
|
protected |
Definition at line 1881 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), replaceRoute(), and updateBestLanes().
|
protected |
container for the planned speeds in the current step
Definition at line 2005 of file MSVehicle.h.
Referenced by cleanupFurtherLanes(), GUIVehicle::drawAction_drawLinkItems(), executeFractionalMove(), loadPreviousApproaching(), MSVehicle(), onRemovalFromNet(), passingMinor(), planMove(), processLaneAdvances(), processLinkApproaches(), registerInsertionApproach(), removePassedDriveItems(), GUIVehicle::selectBlockingFoes(), setApproachingForAllLinks(), unsafeLinkAhead(), and updateDriveItems().
|
protected |
planned speeds from the previous step for un-registering from junctions after the new container is filled
Definition at line 2008 of file MSVehicle.h.
Referenced by planMove(), and setApproachingForAllLinks().
Manoeuvre MSVehicle::myManoeuvre |
Definition at line 1330 of file MSVehicle.h.
Referenced by computeAngle(), getManoeuvreType(), manoeuvreIsComplete(), processNextStop(), setExitManoeuvre(), and setManoeuvreType().
|
protectedinherited |
Currently relevant move reminders.
Definition at line 1048 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::activateReminders(), adaptLaneEntering2MoveReminder(), MSBaseVehicle::addReminder(), MSBaseVehicle::addTransportable(), GUIVehicle::getDriveWays(), GUIBaseVehicle::GUIBaseVehicle(), MSBaseVehicle::initDevices(), leaveLane(), leaveLaneBack(), MSBaseVehicle::removeReminder(), MEVehicle::resumeFromStopping(), resumeFromStopping(), MEVehicle::updateDetectorForWriting(), MEVehicle::updateDetectors(), workOnIdleReminders(), and workOnMoveReminders().
|
protected |
iterator pointing to the next item in myLFLinkLanes
Definition at line 2015 of file MSVehicle.h.
Referenced by MSVehicle(), planMove(), processLaneAdvances(), removePassedDriveItems(), and updateDriveItems().
|
protected |
the upcoming turn for the vehicle
Definition at line 1902 of file MSVehicle.h.
Referenced by getNextTurn(), planMove(), and updateState().
|
protectedinherited |
Definition at line 1090 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getNumberParkingReroutes(), and MSBaseVehicle::setNumberParkingReroutes().
|
protectedinherited |
The number of reroutings.
Definition at line 1076 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getNumberReroutes(), MEVehicle::loadState(), loadState(), MSBaseVehicle::replaceRoute(), and MSBaseVehicle::saveState().
|
privateinherited |
Definition at line 1111 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getNumericalID().
|
protectedinherited |
A simple odometer to keep track of the length of the route already driven.
Definition at line 1082 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addToOdometer(), MSBaseVehicle::getOdometer(), leaveLane(), MEVehicle::loadState(), loadState(), MSVehicle::Influencer::postProcessRemoteControl(), MSBaseVehicle::saveState(), and MEVehicle::updateDetectors().
|
protectedinherited |
This vehicle's parameter.
Definition at line 1016 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::abortNextStop(), MSBaseVehicle::addStop(), MSBaseVehicle::addStops(), MSBaseVehicle::addTraciStop(), MSBaseVehicle::addTransportable(), MSBaseVehicle::calculateArrivalParams(), MSBaseVehicle::createDevice(), enterLaneAtMove(), GUIVehicle::getColorValue(), MSBaseVehicle::getContainerNumber(), MSBaseVehicle::getParameter(), GUIVehicle::getParameterWindow(), GUIMEVehicle::getParameterWindow(), MSBaseVehicle::getParkingBadges(), MSBaseVehicle::getPersonNumber(), MSBaseVehicle::getRouteValidity(), MEVehicle::hasArrived(), hasArrivedInternal(), MSBaseVehicle::hasValidRouteStart(), hasValidRouteStart(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSBaseVehicle::isLineStop(), MEVehicle::loadState(), loadState(), MEVehicle::moveRoutePointer(), planMoveInternal(), processNextStop(), MSBaseVehicle::replaceParameter(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), GUIVehicle::rerouteDRTStop(), MSBaseVehicle::resetRoutePosition(), MEVehicle::saveState(), MSBaseVehicle::saveState(), saveState(), MSBaseVehicle::setDepartAndArrivalEdge(), MSBaseVehicle::setSkips(), updateBestLanes(), and MSBaseVehicle::~MSBaseVehicle().
|
protectedinherited |
memory for parking search
Definition at line 1088 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getParkingMemory(), MSBaseVehicle::rememberBlockedParkingArea(), MSBaseVehicle::rememberParkingAreaScore(), MSBaseVehicle::resetParkingAreaScores(), MSBaseVehicle::sawBlockedParkingArea(), and MSBaseVehicle::~MSBaseVehicle().
|
protectedinherited |
The list of stops that the vehicle has already reached.
Definition at line 1034 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getPastStops(), MSBaseVehicle::isJumping(), leaveLane(), loadState(), MSBaseVehicle::replaceRoute(), MEVehicle::resumeFromStopping(), resumeFromStopping(), MEVehicle::saveState(), saveState(), and MSBaseVehicle::setSkips().
|
protectedinherited |
The passengers this vehicle may have.
Definition at line 1055 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addTransportable(), GUIBaseVehicle::drawAction_drawPersonsAndContainers(), MSBaseVehicle::getPersonDevice(), MSBaseVehicle::getPersonNumber(), MSBaseVehicle::getPersons(), processNextStop(), MSBaseVehicle::removeTransportable(), and updateParkingState().
|
protectedinherited |
This vehicle's route.
Definition at line 1019 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addStop(), MSBaseVehicle::addStops(), MSBaseVehicle::basePos(), MSBaseVehicle::calculateArrivalParams(), checkReversal(), MSBaseVehicle::checkRouteRemoval(), computeFurtherLanes(), GUIVehicle::drawRouteHelper(), estimateTimeToNextStop(), getDistanceToPosition(), getNextEdgePtr(), getPastLanesUntil(), getPreviousLane(), MSBaseVehicle::getRerouteDestination(), getRerouteOrigin(), MSBaseVehicle::getRoute(), MSBaseVehicle::getRoutePosition(), MSBaseVehicle::getRoutePtr(), MSBaseVehicle::getRouteValidity(), MSBaseVehicle::getStopIndices(), MSBaseVehicle::getUpcomingEdgeIDs(), getUpcomingLanesUntil(), MEVehicle::hasArrived(), hasArrivedInternal(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::hasValidRouteStart(), MSBaseVehicle::haveValidStopEdges(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSBaseVehicle::isLineStop(), joinTrainPartFront(), MEVehicle::loadState(), loadState(), MEVehicle::moveRoutePointer(), MSBaseVehicle::MSBaseVehicle(), planMoveInternal(), processLaneAdvances(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), GUIVehicle::rerouteDRTStop(), rerouteParkingArea(), MSBaseVehicle::resetRoutePosition(), MEVehicle::resumeFromStopping(), resumeFromStopping(), MEVehicle::saveState(), MSBaseVehicle::saveState(), saveState(), MSBaseVehicle::setDepartAndArrivalEdge(), MSBaseVehicle::setSkips(), MSBaseVehicle::stopsAtEdge(), MSBaseVehicle::succEdge(), and updateBestLanes().
|
protectedinherited |
status of the current vehicle route
Definition at line 1085 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getRouteValidity(), MSBaseVehicle::hasValidRouteStart(), and hasValidRouteStart().
|
protectedinherited |
routing mode (see TraCIConstants.h)
Definition at line 1108 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getRouterTT(), MSBaseVehicle::getRoutingMode(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::insertStop(), MSBaseVehicle::replaceStop(), and MSBaseVehicle::setRoutingMode().
|
protected |
State of things of the vehicle that can be on or off.
Definition at line 1910 of file MSVehicle.h.
Referenced by getSignals(), setBlinkerInformation(), signalSet(), switchOffSignal(), and switchOnSignal().
|
protected |
This Vehicles driving state (pos and speed)
Definition at line 1859 of file MSVehicle.h.
Referenced by adaptToLeaders(), MSLaneChangerSublane::checkChangeToNewLane(), checkReversal(), checkRewindLinkLanes(), computeAngle(), computeFurtherLanes(), congested(), MSLaneChanger::continueChange(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), executeFractionalMove(), executeMove(), fixPosition(), getArrivalTime(), getBackPosition(), getBackPositionOnLane(), getCenterOnEdge(), getDeltaPos(), getLastStepDist(), getLateralPositionOnLane(), getLatOffset(), getLeftSideOnLane(), getLeftSideOnLane(), getPosition(), getPositionAlongBestLanes(), getPositionOnLane(), getPreviousSpeed(), getRerouteOrigin(), getRightSideOnLane(), getRightSideOnLane(), getSlope(), getSpeed(), getSpeedWithoutTraciInfluence(), getVelocityVector(), handleCollisionStop(), hasArrivedInternal(), joinTrainPartFront(), keepStopping(), leaveLane(), loadState(), overlap(), planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), processLaneAdvances(), processLinkApproaches(), processNextStop(), processTraCISpeedControl(), resumeFromStopping(), saveState(), setLateralPositionOnLane(), setPreviousSpeed(), setTentativeLaneAndPosition(), MSLaneChangerSublane::startChangeSublane(), updateFurtherLanes(), and updateState().
|
protected |
distance to the next stop or doubleMax if there is none
Definition at line 1924 of file MSVehicle.h.
Referenced by executeMove(), leaveLane(), loadState(), nextStopDist(), planMove(), processNextStop(), replaceRoute(), resumeFromStopping(), and setBlinkerInformation().
|
protectedinherited |
The vehicle's list of stops.
Definition at line 1031 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::abortNextStop(), MSBaseVehicle::addStop(), MSBaseVehicle::addTraciStop(), addTraciStop(), addTransportable(), MSBaseVehicle::allowsBoarding(), MSBaseVehicle::basePos(), brokeDown(), checkReversal(), MEVehicle::checkStop(), collisionStopTime(), computeAngle(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), estimateTimeToNextStop(), getArrivalTime(), MSBaseVehicle::getCurrentParkingArea(), MEVehicle::getCurrentStoppingTimeSeconds(), MSBaseVehicle::getLeavingPersonNumber(), MSBaseVehicle::getNextParkingArea(), MSBaseVehicle::getNextStop(), MSBaseVehicle::getNextStopParameter(), getPosition(), MSBaseVehicle::getStop(), getStopArrivalDelay(), getStopDelay(), MSBaseVehicle::getStopDuration(), MSBaseVehicle::getStopEdges(), MSBaseVehicle::getStopIndices(), GUIVehicle::getStopInfo(), MSBaseVehicle::getStops(), GUIVehicle::getVisualAngle(), GUIVehicle::getVisualPosition(), hasArrivedInternal(), MSBaseVehicle::hasJump(), MSBaseVehicle::hasStops(), MSBaseVehicle::haveValidStopEdges(), MSBaseVehicle::insertJump(), MSBaseVehicle::insertStop(), MSBaseVehicle::isParking(), MSBaseVehicle::isStopped(), MSBaseVehicle::isStoppedInRange(), isStoppedOnLane(), MSBaseVehicle::isStoppedParking(), MSBaseVehicle::isStoppedTriggered(), joinTrainPart(), joinTrainPartFront(), keepStopping(), leaveLane(), MEVehicle::loadState(), loadState(), MEVehicle::mayProceed(), planMoveInternal(), processNextStop(), MEVehicle::processStop(), processTraCISpeedControl(), remainingStopDuration(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), replaceRoute(), MSBaseVehicle::replaceStop(), MSBaseVehicle::reroute(), MSBaseVehicle::rerouteBetweenStops(), GUIVehicle::rerouteDRTStop(), MEVehicle::resumeFromStopping(), resumeFromStopping(), MEVehicle::saveState(), saveState(), setBlinkerInformation(), MSBaseVehicle::setSkips(), slowDownForSchedule(), MSBaseVehicle::stopsAt(), MSBaseVehicle::stopsAtEdge(), updateBestLanes(), and willStop().
|
protectedinherited |
The offset when adding route stops with 'until' on route replacement.
Definition at line 1079 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::replaceRoute().
|
protected |
the time loss in seconds due to driving with less than maximum speed
Definition at line 1856 of file MSVehicle.h.
Referenced by getTimeLoss(), getTimeLossSeconds(), loadState(), saveState(), and updateTimeLoss().
|
protected |
duration of driving (speed > SUMO_const_haltingSpeed) after the last halting episode
Definition at line 1937 of file MSVehicle.h.
Referenced by executeMove(), getTimeSinceStartup(), and getTimeSinceStartupSeconds().
|
protectedinherited |
This vehicle's type.
Definition at line 1022 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::addStop(), MSBaseVehicle::calculateArrivalParams(), computeFurtherLanes(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), executeMove(), getActionStepLength(), getActionStepLengthSecs(), getBackPosition(), getBackPositionOnLane(), MEVehicle::getBoundingBox(), getBoundingBox(), getBoundingPoly(), getCarFollowModel(), GUIVehicle::getDynamicAlignment(), MSBaseVehicle::getEmissions(), MSBaseVehicle::getHarmonoise_NoiseEmissions(), MSBaseVehicle::getLength(), MSBaseVehicle::getMaxSpeed(), getMaxSpeedOnLane(), getPositionOnLane(), MSBaseVehicle::getSingularType(), GUIVehicle::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), MSBaseVehicle::getVClass(), MSBaseVehicle::getVehicleType(), GUIVehicle::getVisualAngle(), MSBaseVehicle::getVTypeParameter(), MSBaseVehicle::getWidth(), handleCollisionStop(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::hasValidRouteStart(), hasValidRouteStart(), initDevices(), joinTrainPart(), joinTrainPartFront(), processLaneAdvances(), processNextStop(), MSBaseVehicle::replaceVehicleType(), updateBestLanes(), and ~MSVehicle().
|
protected |
The time the vehicle waits (is not faster than 0.1m/s) in seconds.
Definition at line 1852 of file MSVehicle.h.
Referenced by getWaitingTime(), leaveLane(), loadState(), planMoveInternal(), resumeFromStopping(), saveState(), and updateWaitingTime().
|
protected |
Definition at line 1853 of file MSVehicle.h.
Referenced by getWaitingTime(), loadState(), saveState(), and updateWaitingTime().
|
staticprotectedinherited |
Definition at line 1098 of file MSBaseVehicle.h.
Referenced by enterLaneAtInsertion(), MSBaseVehicle::hasDeparted(), and MSVehicle::Influencer::postProcessRemoteControl().