SUMO - Simulation of Urban MObility
|
Representation of a vehicle in the micro simulation. More...
#include <MSVehicle.h>
Data Structures | |
struct | DriveProcessItem |
class | Influencer |
Changes the wished vehicle speed / lanes. More... | |
struct | LaneQ |
A structure representing the best lanes for continuing the route. More... | |
class | State |
Container that holds the vehicles driving state (position+speed). More... | |
struct | Stop |
Definition of vehicle stop (position and duration) More... |
Public Types | |
enum | ChangeRequest { REQUEST_NONE, REQUEST_LEFT, REQUEST_RIGHT, REQUEST_HOLD } |
Requests set via TraCI. More... |
Public Member Functions | |
void | activateReminders (const MSMoveReminder::Notification reason) |
"Activates" all current move reminder | |
void | addReminder (MSMoveReminder *rem) |
Adds a MoveReminder dynamically. | |
bool | addTraciStop (MSLane *lane, SUMOReal pos, SUMOReal radius, SUMOTime duration, bool parking, bool triggered) |
bool | congested () const |
void | enterLaneAtInsertion (MSLane *enteredLane, SUMOReal pos, SUMOReal speed, MSMoveReminder::Notification notification) |
Update when the vehicle enters a new lane in the emit step. | |
void | enterLaneAtLaneChange (MSLane *enteredLane) |
Update when the vehicle enters a new lane in the laneChange step. | |
bool | enterLaneAtMove (MSLane *enteredLane, bool onTeleporting=false) |
Update when the vehicle enters a new lane in the move step. | |
bool | executeMove () |
Executes planned vehicle movements with regards to right-of-way. | |
bool | fixPosition () |
repair errors in vehicle position after changing between internal edges | |
virtual SUMOReal | getArrivalPos () const |
Returns this vehicle's desired arrivalPos for its current route (may change on reroute) | |
const MSCFModel & | getCarFollowModel () const |
Returns the vehicle's car following model definition. | |
MSCFModel::VehicleVariables * | getCarFollowVariables () const |
Returns the vehicle's car following model variables. | |
SUMOReal | getChosenSpeedFactor () const |
Returns the precomputed factor by which the driver wants to be faster than the speed limit. | |
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 or 0. | |
const std::vector< MSDevice * > & | getDevices () const |
Returns this vehicle's devices. | |
SUMOReal | getDistanceToPosition (SUMOReal destPos, const MSEdge *destEdge) |
const MSEdge * | getEdge () const |
Returns the edge the vehicle is currently at. | |
const std::string & | getID () const |
Returns the name of the vehicle. | |
SUMOReal | getImpatience () const |
Returns this vehicles impatience. | |
Influencer & | getInfluencer () |
Returns the velocity/lane influencer. | |
MSAbstractLaneChangeModel & | getLaneChangeModel () |
const MSAbstractLaneChangeModel & | getLaneChangeModel () const |
unsigned int | getLaneIndex () const |
std::pair< const MSVehicle *const, SUMOReal > | getLeader (SUMOReal dist=0) const |
Returns the leader of the vehicle looking for a fixed distance. | |
SUMOReal | getMaxSpeed () const |
Returns the maximum speed. | |
Stop & | getNextStop () |
unsigned int | getNumberReroutes () const |
Returns the number of new routes this vehicle got. | |
const SUMOVehicleParameter & | getParameter () const |
Returns the vehicle's parameter (including departure definition) | |
const MSRoute & | getRoute () const |
Returns the current route. | |
SUMOReal | getSpeedWithoutTraciInfluence () const |
Returns the uninfluenced velocity. | |
SUMOReal | getTimeGap () const |
Returns the time gap in seconds to the leader of the vehicle looking for a fixed distance. | |
const MSVehicleType & | getVehicleType () const |
Returns the vehicle's type definition. | |
bool | hasDeparted () const |
Returns whether this vehicle has already departed. | |
bool | hasInfluencer () const |
bool | hasValidRoute (std::string &msg) const |
Validates the current route. | |
int | influenceChangeDecision (int state) |
allow TraCI to influence a lane change decision | |
bool | knowsEdgeTest (MSEdge &edge) const |
void | leaveLane (const MSMoveReminder::Notification reason) |
Update of members if vehicle leaves a new lane in the lane change step or at arrival. | |
MSVehicle (SUMOVehicleParameter *pars, const MSRoute *route, const MSVehicleType *type, SUMOReal speedFactor) | |
Constructor. | |
void | onDepart () |
Called when the vehicle is inserted into the network. | |
void | planMove (const SUMOTime t, const MSVehicle *pred, const SUMOReal lengthsInFront) |
Compute safe velocities for the upcoming lanes based on positions and speeds from the last time step. Also registers ApproachingVehicleInformation for all links. | |
SUMOReal | processNextStop (SUMOReal currentVelocity) |
Processes stops, returns the velocity needed to reach the stop. | |
void | removeReminder (MSMoveReminder *rem) |
Removes a MoveReminder dynamically. | |
bool | replaceRouteEdges (MSEdgeVector &edges, bool onInit=false) |
Replaces the current route by the given edges. | |
void | replaceVehicleType (MSVehicleType *type) |
Replaces the current vehicle type by the one given. | |
void | reroute (SUMOTime t, SUMOAbstractRouter< MSEdge, SUMOVehicle > &router, bool withTaz=false) |
Performs a rerouting using the given router. | |
bool | resumeFromStopping () |
void | setChosenSpeedFactor (SUMOReal factor) |
Returns the precomputed factor by which the driver wants to be faster than the speed limit. | |
const MSEdge * | succEdge (unsigned int nSuccs) const |
Returns the nSuccs'th successor of edge the vehicle is currently at. | |
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 (const MSRoute *route, bool onInit=false, int offset=0) |
Replaces the current route by the given one. | |
bool | willPass (const MSEdge *const edge) const |
Returns whether the vehicle wil pass the given edge. | |
unsigned int | getRoutePosition () const |
void | resetRoutePosition (unsigned int index) |
const MSEdgeWeightsStorage & | getWeightsStorage () const |
Returns the vehicle's internal edge travel times/efforts container. | |
MSEdgeWeightsStorage & | getWeightsStorage () |
state setter/getter | |
SUMOReal | getPositionOnLane () const |
Get the vehicle's position along the lane. | |
SUMOReal | getSpeed () const |
Returns the vehicle's current speed. | |
SUMOReal | getAcceleration () const |
Returns the vehicle's acceleration in m/s. | |
Other getter methods | |
SUMOReal | getSlope () const |
Returns the slope of the road at vehicle's position. | |
Position | getPosition (const SUMOReal offset=0) const |
Return current position (x/y, cartesian) | |
MSLane * | getLane () const |
Returns the lane the vehicle is on. | |
bool | isOnRoad () const |
Returns the information whether the vehicle is on a road (is simulated) | |
const MSEdge * | getRerouteOrigin () const |
Returns the starting point for reroutes (usually the current edge) | |
SUMOTime | getWaitingTime () const |
Returns the SUMOTime waited (speed was lesser than 0.1m/s) | |
SUMOReal | getWaitingSeconds () const |
Returns the number of seconds waited (speed was lesser than 0.1m/s) | |
SUMOReal | getAngle () const |
Returns the vehicle's direction in degrees. | |
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 | |
const std::vector< MSLane * > & | getBestLanesContinuation () const |
Returns the subpart of best lanes that describes the vehicle's current lane and their successors. | |
const std::vector< MSLane * > & | getBestLanesContinuation (const MSLane *const l) const |
Returns the subpart of best lanes that describes the given lane and their successors. | |
int | getBestLaneOffset () const |
returns the current offset from the best lane | |
void | adaptBestLanesOccupation (int laneIndex, SUMOReal density) |
update occupation from MSLaneChanger | |
vehicle stops definitions and i/o | |
bool | addStop (const SUMOVehicleParameter::Stop &stopPar, SUMOTime untilOffset=0) |
Adds a stop. | |
bool | hasStops () const |
Returns whether the vehicle has to stop somewhere. | |
bool | isStopped () const |
Returns whether the vehicle is at a stop. | |
bool | isParking () const |
Returns whether the vehicle is parking. | |
bool | isStoppedTriggered () const |
Returns whether the vehicle is on a triggered stop. | |
Emission retrieval | |
SUMOReal | getCO2Emissions () const |
Returns CO2 emission of the current state. | |
SUMOReal | getCOEmissions () const |
Returns CO emission of the current state. | |
SUMOReal | getHCEmissions () const |
Returns HC emission of the current state. | |
SUMOReal | getNOxEmissions () const |
Returns NOx emission of the current state. | |
SUMOReal | getPMxEmissions () const |
Returns PMx emission of the current state. | |
SUMOReal | getFuelConsumption () const |
Returns fuel consumption of the current state. | |
SUMOReal | getHarmonoise_NoiseEmissions () const |
Returns noise emissions of the current state. | |
Interaction with persons | |
void | addPerson (MSPerson *person) |
Adds a passenger. | |
unsigned int | getPersonNumber () const |
Returns the number of persons. | |
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. |
Static Public Member Functions | |
static SUMOReal | gap (SUMOReal predPos, SUMOReal predLength, SUMOReal pos) |
Uses the given values to compute the brutto-gap. | |
static bool | overlap (const MSVehicle *veh1, const MSVehicle *veh2) |
Protected Types | |
typedef std::vector < DriveProcessItem > | DriveItemVector |
Protected Member Functions | |
void | adaptToLeader (const std::pair< const MSVehicle *, SUMOReal > leaderInfo, const SUMOReal seen, DriveProcessItem *const lastLink, const MSLane *const lane, SUMOReal &v, SUMOReal &vLinkPass, SUMOReal distToCrossing=-1) const |
void | calculateArrivalPos () |
(Re-)Calculates the arrival position from the vehicle parameters | |
void | checkRewindLinkLanes (const SUMOReal lengthsInFront, DriveItemVector &lfLinks) const |
SUMOReal | estimateLeaveSpeed (const MSLink *const link, const SUMOReal vLinkPass) const |
estimate leaving speed when accelerating across a link | |
SUMOReal | estimateSpeedAfterDistance (const SUMOReal dist, const SUMOReal v, const SUMOReal accel) const |
SUMOReal | getSpaceTillLastStanding (const MSLane *l, bool &foundStopped) const |
void | planMoveInternal (const SUMOTime t, const MSVehicle *pred, DriveItemVector &lfLinks) const |
void | setBlinkerInformation () |
void | updateOccupancyAndCurrentBestLane (const MSLane *startLane) |
updates LaneQ::nextOccupation and myCurrentLaneInBestLanes |
Protected Attributes | |
SUMOReal | myAcceleration |
The current acceleration after dawdling in m/s. | |
bool | myAmOnNet |
Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived) | |
bool | myAmRegisteredAsWaitingForPerson |
Whether this vehicle is registered as waiting for a person (for deadlock-recognition) | |
SUMOReal | myArrivalPos |
the position on the destination lane where the vehicle stops | |
std::vector< std::vector< LaneQ > > | myBestLanes |
Position | myCachedPosition |
SUMOReal | myChosenSpeedFactor |
A precomputed factor by which the driver wants to be faster than the speed limit. | |
MSRouteIterator | myCurrEdge |
Iterator to current route-edge. | |
std::vector< LaneQ >::iterator | myCurrentLaneInBestLanes |
SUMOTime | myDeparture |
The real departure time. | |
std::vector< MSDevice * > | myDevices |
The devices this vehicle has. | |
std::vector< MSLane * > | myFurtherLanes |
The information into which lanes the vehicle laps into. | |
bool | myHaveToWaitOnNextLink |
MSLane * | myLane |
The lane the vehicle is on. | |
MSAbstractLaneChangeModel * | myLaneChangeModel |
const MSEdge * | myLastBestLanesEdge |
const MSLane * | myLastBestLanesInternalLane |
DriveItemVector | myLFLinkLanes |
Container for used Links/visited Lanes during lookForward. | |
unsigned int | myNumberReroutes |
The number of reroutings. | |
const SUMOVehicleParameter * | myParameter |
This Vehicle's parameter. | |
MSDevice_Person * | myPersonDevice |
The passengers this vehicle may have. | |
const MSRoute * | myRoute |
This Vehicle's route. | |
int | mySignals |
State of things of the vehicle that can be on or off. | |
State | myState |
This Vehicles driving state (pos and speed) | |
std::list< Stop > | myStops |
The vehicle's list of stops. | |
const MSVehicleType * | myType |
This Vehicle's type. | |
SUMOTime | myWaitingTime |
The time the vehicle waits (is not faster than 0.1m/s) in seconds. |
Static Protected Attributes | |
static std::vector< MSLane * > | myEmptyLaneVector |
Private Member Functions | |
MSEdgeWeightsStorage & | _getWeightsStorage () const |
MSVehicle () | |
invalidated default constructor | |
MSVehicle (const MSVehicle &) | |
invalidated copy constructor | |
MSVehicle & | operator= (const MSVehicle &) |
invalidated assignment operator |
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". |
Friends | |
class | MSLaneChanger |
the lane changer sets myLastLaneChangeOffset |
Move reminder structures | |
typedef std::vector< std::pair < MSMoveReminder *, SUMOReal > > | MoveReminderCont |
Definition of a move reminder container. | |
MoveReminderCont | myMoveReminders |
Current lane's move reminder. |
Interaction with move reminders | |
void | workOnMoveReminders (SUMOReal oldPos, SUMOReal newPos, SUMOReal newSpeed) |
Processes active move reminder. | |
void | adaptLaneEntering2MoveReminder (const MSLane &enteredLane) |
Adapts the vehicle's entering of a new lane. |
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. |
Representation of a vehicle in the micro simulation.
Definition at line 77 of file MSVehicle.h.
|
protected |
Definition at line 1192 of file MSVehicle.h.
|
protectedinherited |
Definition of a move reminder container.
Definition at line 320 of file MSBaseVehicle.h.
Requests set via TraCI.
Definition at line 125 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
Definition at line 763 of file MSVehicle.h.
Some boolean values which describe the state of some vehicle parts.
Definition at line 725 of file MSVehicle.h.
modes for prioritizing traci lane change requests
Definition at line 771 of file MSVehicle.h.
MSVehicle::MSVehicle | ( | SUMOVehicleParameter * | pars, |
const MSRoute * | route, | ||
const MSVehicleType * | type, | ||
SUMOReal | 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 390 of file MSVehicle.cpp.
References addStop(), MSAbstractLaneChangeModel::build(), MSVehicleType::computeChosenSpeedDeviation(), MSCFModel::createVehicleVariables(), DEPART_SPEED_GIVEN, SUMOVehicleParameter::departSpeed, SUMOVehicleParameter::departSpeedProcedure, MSVehicleType::getCarFollowModel(), MSVehicleType::getID(), MSVehicleType::getLaneChangeModel(), MSVehicleType::getMaxSpeed(), MSVehicleType::getSpeedDeviation(), MSVehicleType::getSpeedFactor(), MSRoute::getStops(), SUMOVehicleParameter::id, myCFVariables, MSBaseVehicle::myChosenSpeedFactor, myLaneChangeModel, MSVehicleControl::myVehicleParamsRNG, SUMOVehicleParameter::stops, updateBestLanes(), and WRITE_WARNING.
|
virtual |
Destructor.
Definition at line 367 of file MSVehicle.cpp.
References MSVehicleType::amVehicleSpecific(), myEdgeWeights, myFurtherLanes, myInfluencer, myLaneChangeModel, myLFLinkLanes, and MSBaseVehicle::myType.
|
private |
invalidated default constructor
|
private |
invalidated copy constructor
|
private |
Definition at line 551 of file MSVehicle.cpp.
References myEdgeWeights.
Referenced by getWeightsStorage().
|
virtual |
"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 |
Reimplemented from MSBaseVehicle.
Definition at line 1563 of file MSVehicle.cpp.
References getLane(), and MSBaseVehicle::myMoveReminders.
Referenced by enterLaneAtInsertion(), enterLaneAtLaneChange(), and enterLaneAtMove().
update occupation from MSLaneChanger
Definition at line 2073 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLaneChanger::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 585 of file MSVehicle.cpp.
References MSBaseVehicle::addReminder(), MSLane::getLength(), MSLane::getMoveReminders(), myLane, MSBaseVehicle::myMoveReminders, and SUMOReal.
Referenced by enterLaneAtMove().
|
protected |
Definition at line 1101 of file MSVehicle.cpp.
References MSVehicle::DriveProcessItem::adaptLeaveSpeed(), MSCFModel::followSpeed(), getCarFollowModel(), MSLane::getLength(), getSpeed(), MAX2(), MIN2(), POSITION_EPS, MSCFModel::stopSpeed(), and SUMOReal.
Referenced by planMoveInternal().
|
virtual |
Adds a passenger.
[in] | person | The person to add |
Reimplemented from MSBaseVehicle.
Definition at line 2189 of file MSVehicle.cpp.
References MSDevice_Person::addPerson(), MSDevice_Person::buildVehicleDevices(), MSPerson::getID(), MSBaseVehicle::myDevices, MSBaseVehicle::myMoveReminders, myPersonDevice, and myStops.
Referenced by MSPersonControl::boardAnyWaiting().
|
inherited |
Adds a MoveReminder dynamically.
[in] | rem | the reminder to add |
Definition at line 244 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
Referenced by adaptLaneEntering2MoveReminder(), enterLaneAtInsertion(), and enterLaneAtLaneChange().
|
virtual |
Adds a stop.
The stop is put into the sorted list.
[in] | stop | The stop to add |
Implements SUMOVehicle.
Definition at line 673 of file MSVehicle.cpp.
References SUMOVehicleParameter::Stop::awaitedPersons, MSVehicle::Stop::awaitedPersons, MSCFModel::brakeGap(), SUMOVehicleParameter::Stop::busstop, MSVehicle::Stop::busstop, DEPART_POS_BASE, DEPART_POS_DEFAULT, DEPART_POS_GIVEN, SUMOVehicleParameter::departPos, SUMOVehicleParameter::departPosProcedure, MSLane::dictionary(), SUMOVehicleParameter::Stop::duration, MSVehicle::Stop::duration, MSVehicle::Stop::edge, MSRoute::end(), SUMOVehicleParameter::Stop::endPos, MSVehicle::Stop::endPos, MSNet::getBusStop(), getCarFollowModel(), MSLane::getEdge(), MSNet::getInstance(), MSLane::getLength(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::hasDeparted(), SUMOVehicleParameter::Stop::index, SUMOVehicleParameter::Stop::lane, MSVehicle::Stop::lane, MIN2(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, myStops, SUMOVehicleParameter::Stop::parking, MSVehicle::Stop::parking, POSITION_EPS, MSVehicle::Stop::reached, SUMOVehicleParameter::Stop::startPos, MSVehicle::Stop::startPos, STOP_INDEX_END, STOP_INDEX_FIT, SUMOReal, SUMOVehicleParameter::Stop::triggered, MSVehicle::Stop::triggered, SUMOVehicleParameter::Stop::until, and MSVehicle::Stop::until.
Referenced by addTraciStop(), MSVehicle(), and replaceRoute().
bool MSVehicle::addTraciStop | ( | MSLane * | lane, |
SUMOReal | pos, | ||
SUMOReal | radius, | ||
SUMOTime | duration, | ||
bool | parking, | ||
bool | triggered | ||
) |
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
lane | lane on wich to stop |
pos | position on the given lane at wich to stop |
radius | the vehicle will stop if it is within the range [pos-radius, pos+radius] |
duration | after waiting for the time period duration, the vehicle will |
parking | a flag indicating whether the traci stop is used for parking or not |
triggered | a flag indicating whether the traci stop is triggered or not |
Definition at line 2266 of file MSVehicle.cpp.
References addStop(), SUMOVehicleParameter::Stop::busstop, SUMOVehicleParameter::Stop::duration, SUMOVehicleParameter::Stop::endPos, MSNet::getBusStopID(), Named::getID(), MSNet::getInstance(), SUMOVehicleParameter::Stop::index, SUMOVehicleParameter::Stop::lane, myStops, SUMOVehicleParameter::Stop::parking, POSITION_EPS, SUMOVehicleParameter::Stop::startPos, STOP_INDEX_FIT, SUMOVehicleParameter::Stop::triggered, and SUMOVehicleParameter::Stop::until.
Referenced by TraCIServerAPI_Vehicle::processSet().
|
protectedinherited |
(Re-)Calculates the arrival position from the vehicle parameters
Definition at line 293 of file MSBaseVehicle.cpp.
References ARRIVAL_POS_GIVEN, ARRIVAL_POS_RANDOM, SUMOVehicleParameter::arrivalPos, SUMOVehicleParameter::arrivalPosProcedure, MSBaseVehicle::getID(), MSEdge::getLanes(), MSRoute::getLastEdge(), MAX2(), MIN2(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, RandHelper::rand(), SUMOReal, and WRITE_WARNING.
Referenced by MSBaseVehicle::MSBaseVehicle(), and replaceRoute().
|
protected |
Definition at line 1401 of file MSVehicle.cpp.
References ACCEL2SPEED, MSVehicle::DriveProcessItem::availableSpace, bla, MSCFModel::brakeGap(), MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getBruttoVehLenSum(), getCarFollowModel(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSCFModel::getHeadwayTime(), MSBaseVehicle::getImpatience(), MSNet::getInstance(), MSLink::getLane(), MSLane::getLastVehicle(), MSVehicle::DriveProcessItem::getLeaveSpeed(), MSVehicleType::getLength(), MSLane::getLength(), MSVehicleType::getLengthWithGap(), MSCFModel::getMaxDecel(), MSLane::getPartialOccupator(), MSLane::getPartialOccupatorEnd(), getPositionOnLane(), MSEdge::getPurpose(), MSVehicle::Influencer::getRespectJunctionPriority(), getSpaceTillLastStanding(), getSpeed(), MSLane::getVehicleNumber(), MSBaseVehicle::getVehicleType(), getWaitingTime(), GLO_VEHICLE, gSelected, MSGlobals::gUsingInternalLanes, MSVehicle::DriveProcessItem::hadVehicle, MSLink::hasFoes(), MSLink::havePriority(), MSLink::isCont(), MSEdge::isRoundabout(), GUISelectedStorage::isSelected(), LINKSTATE_ALLWAY_STOP, MAX2(), MSVehicle::DriveProcessItem::myArrivalSpeed, MSVehicle::DriveProcessItem::myArrivalTime, myHaveToWaitOnNextLink, myInfluencer, myLane, MSVehicle::DriveProcessItem::myLink, MSVehicle::State::mySpeed, myState, MSLink::opened(), RandHelper::rand(), signalSet(), SUMOReal, UNUSED_PARAMETER, and VEH_SIGNAL_BRAKELIGHT.
Referenced by planMove().
|
inline |
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 396 of file MSVehicle.h.
References MSVehicle::State::mySpeed, myState, and SUMOReal.
Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSAbstractLaneChangeModel::congested(), MSLCM_JE2013::informLeader(), and MSLCM_LC2013::informLeader().
void MSVehicle::enterLaneAtInsertion | ( | MSLane * | enteredLane, |
SUMOReal | pos, | ||
SUMOReal | speed, | ||
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] | notification | The cause of insertion (i.e. departure, teleport, parking) |
Definition at line 1678 of file MSVehicle.cpp.
References activateReminders(), MSBaseVehicle::addReminder(), MSGlobals::gCheckRoutes, MSBaseVehicle::getID(), MSVehicleType::getLength(), MSLane::getLogicalPredecessorLane(), MSLane::getMoveReminders(), MSBaseVehicle::hasValidRoute(), Position::INVALID, myAmOnNet, myCachedPosition, myFurtherLanes, myLane, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, MSBaseVehicle::myType, myWaitingTime, and SUMOReal.
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 1626 of file MSVehicle.cpp.
References activateReminders(), MSBaseVehicle::addReminder(), MSRoute::begin(), MSVehicleType::getLength(), MSLane::getLogicalPredecessorLane(), MSLane::getMoveReminders(), MSBaseVehicle::getRoute(), MSBaseVehicle::getVehicleType(), myAmOnNet, MSBaseVehicle::myCurrEdge, myFurtherLanes, myLane, MSVehicle::State::myPos, myState, MSMoveReminder::NOTIFICATION_LANE_CHANGE, SUMOReal, and updateBestLanes().
Referenced by MSLaneChanger::change(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), and MSAbstractLaneChangeModel::startLaneChangeManeuver().
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 1594 of file MSVehicle.cpp.
References activateReminders(), adaptLaneEntering2MoveReminder(), MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getEdge(), MSEdge::getPurpose(), hasArrived(), Position::INVALID, myAmOnNet, myCachedPosition, MSBaseVehicle::myCurrEdge, myLane, MSVehicle::State::myPos, myState, MSMoveReminder::NOTIFICATION_JUNCTION, and MSMoveReminder::NOTIFICATION_TELEPORT.
Referenced by MSVehicleTransfer::add(), MSVehicleTransfer::checkInsertions(), executeMove(), and TraCIServerAPI_Vehicle::processSet().
|
inlineprotected |
estimate leaving speed when accelerating across a link
Definition at line 1201 of file MSVehicle.h.
References estimateSpeedAfterDistance(), MSVehicleType::getCarFollowModel(), MSLink::getLength(), MSCFModel::getMaxAccel(), MSLane::getVehicleMaxSpeed(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), and MIN2().
Referenced by planMoveInternal().
|
inlineprotected |
Definition at line 1214 of file MSVehicle.h.
References MSBaseVehicle::getMaxSpeed(), MSBaseVehicle::getVehicleType(), MIN2(), and SUMOReal.
Referenced by estimateLeaveSpeed(), and planMoveInternal().
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 1129 of file MSVehicle.cpp.
References ACCEL2SPEED, bla, MSCFModel::brakeGap(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), DELTA_T, DIST2SPEED, MSRoute::end(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), enterLaneAtMove(), MSVehicleType::getCarFollowModel(), getCarFollowModel(), MSLink::getDirection(), MSLane::getEdge(), MSVehicle::Influencer::getEmergencyBrakeRedLight(), MSCFModel::getHeadwayTime(), Named::getID(), MSBaseVehicle::getID(), MSBaseVehicle::getImpatience(), MSNet::getInstance(), getLaneChangeModel(), MSVehicleType::getLength(), MSLane::getLength(), MSCFModel::getMaxDecel(), getPositionOnLane(), MSVehicle::Influencer::getRespectJunctionPriority(), getSpeed(), MSLink::getState(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), getWaitingTime(), GLO_VEHICLE, gSelected, hasArrived(), MSLink::havePriority(), MSVehicle::Influencer::influenceSpeed(), Position::INVALID, MSEdge::isRoundabout(), GUISelectedStorage::isSelected(), MSEdge::isVaporizing(), MSVehicle::Influencer::isVTDControlled(), MSLink::lastWasContMajor(), leaveLane(), LINKDIR_LEFT, LINKDIR_RIGHT, LINKSTATE_EQUAL, LINKSTATE_TL_RED, LINKSTATE_TL_YELLOW_MAJOR, LINKSTATE_TL_YELLOW_MINOR, MAX2(), MSCFModel::maxNextSpeed(), MIN2(), myAcceleration, myCachedPosition, MSBaseVehicle::myCurrEdge, myFurtherLanes, myHaveToWaitOnNextLink, myInfluencer, myLane, myLFLinkLanes, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, myWaitingTime, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_VAPORIZED, NUMERICAL_EPS, MSLink::opened(), POSITION_EPS, MSAbstractLaneChangeModel::prepareStep(), MSVehicleControl::registerEmergencyStop(), MSLink::removeApproaching(), setBlinkerInformation(), SPEED2ACCEL, SPEED2DIST, SUMO_const_haltingSpeed, SUMOReal, switchOffSignal(), switchOnSignal(), time2string(), toString(), updateBestLanes(), VEH_SIGNAL_BRAKELIGHT, workOnMoveReminders(), and WRITE_WARNING.
Referenced by MSLane::executeMovements().
bool MSVehicle::fixPosition | ( | ) |
repair errors in vehicle position after changing between internal edges
Definition at line 2081 of file MSVehicle.cpp.
References MSLane::getLength(), getPositionOnLane(), Position::INVALID, myCachedPosition, myLane, MSVehicle::State::myPos, and myState.
Referenced by MSAbstractLaneChangeModel::continueLaneChangeManeuver().
Uses the given values to compute the brutto-gap.
[in] | predPos | Position of the leader |
[in] | predLength | Length of the leader |
[in] | pos | Position of the follower |
Definition at line 212 of file MSVehicle.h.
Referenced by MSLane::isInsertionSuccess(), and planMoveInternal().
|
inlinevirtual |
Returns the vehicle's acceleration in m/s.
Reimplemented from MSBaseVehicle.
Definition at line 299 of file MSVehicle.h.
References myAcceleration.
Referenced by GUIVehicle::getColorValue().
SUMOReal MSVehicle::getAngle | ( | ) | const |
Returns the vehicle's direction in degrees.
Definition at line 643 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), MSAbstractLaneChangeModel::getLaneChangeCompletion(), MSAbstractLaneChangeModel::getLaneChangeDirection(), getLaneChangeModel(), MSVehicleType::getLength(), MSLane::getLengthGeometryFactor(), getPosition(), getPositionOnLane(), MSLane::getShape(), MSGlobals::gLaneChangeDuration, MSLane::interpolateLanePosToGeometryPos(), MSAbstractLaneChangeModel::isChangingLanes(), MSAbstractLaneChangeModel::isLaneChangeMidpointPassed(), M_PI, myFurtherLanes, myLane, MSVehicle::State::myPos, myState, MSBaseVehicle::myType, PositionVector::positionAtOffset(), PositionVector::rotationDegreeAtOffset(), STEPS2TIME, SUMOReal, Position::x(), and Position::y().
Referenced by GUIVehicle::drawGL(), MSPerson::MSPersonStage_Driving::getAngle(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSFCDExport::write(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
|
inlinevirtualinherited |
Returns this vehicle's desired arrivalPos for its current route (may change on reroute)
Implements SUMOVehicle.
Definition at line 197 of file MSBaseVehicle.h.
References MSBaseVehicle::myArrivalPos.
int MSVehicle::getBestLaneOffset | ( | ) | const |
returns the current offset from the best lane
Definition at line 2063 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLCM_JE2013::changed(), MSLCM_LC2013::changed(), and GUIVehicle::getColorValue().
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 1762 of file MSVehicle.cpp.
References myBestLanes.
Referenced by MSLane::appropriate(), MSLaneChanger::change(), MSEdge::getDepartLane(), and TraCIServerAPI_Vehicle::processGet().
const std::vector< MSLane * > & MSVehicle::getBestLanesContinuation | ( | ) | const |
Returns the subpart of best lanes that describes the vehicle's current lane and their successors.
Definition at line 2035 of file MSVehicle.cpp.
References myBestLanes, and myEmptyLaneVector.
Referenced by MSLane::appropriate(), GUIVehicle::drawRouteHelper(), MSLane::executeMovements(), getLeader(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), MSLane::isInsertionSuccess(), planMoveInternal(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), setBlinkerInformation(), and TraCIServerAPI_Vehicle::vtdMap_matchingRoutePosition().
Returns the subpart of best lanes that describes the given lane and their successors.
Definition at line 2044 of file MSVehicle.cpp.
References MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getEdge(), MSLane::getLinkCont(), MSEdge::getPurpose(), myBestLanes, and myEmptyLaneVector.
|
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 538 of file MSVehicle.h.
References MSVehicleType::getCarFollowModel(), and MSBaseVehicle::myType.
Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), adaptToLeader(), addStop(), MSLaneChanger::checkChange(), MSLane::checkFailure(), checkRewindLinkLanes(), executeMove(), MSLane::freeInsertion(), MSLane::getFollowerOnConsecutive(), getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getMissingRearGap(), GUIVehicle::getParameterWindow(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLCM_DK2008::informBlocker(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_JE2013::informLeader(), MSLCM_LC2013::informLeader(), MSLane::isInsertionSuccess(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), MSLCM_DK2008::patchSpeed(), planMoveInternal(), processNextStop(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSLCM_JE2013::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), GUIVehicle::selectBlockingFoes(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_DK2008::wantsChangeToLeft(), and MSLCM_DK2008::wantsChangeToRight().
|
inline |
Returns the vehicle's car following model variables.
Definition at line 547 of file MSVehicle.h.
References myCFVariables.
Referenced by MSCFModel_Kerner::_v(), MSCFModel_Wiedemann::_v(), MSCFModel_IDM::_v(), MSCFModel_SmartSK::_vsafe(), MSCFModel_SmartSK::followSpeed(), MSCFModel_PWag2009::followSpeed(), MSCFModel_Kerner::moveHelper(), MSCFModel_PWag2009::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel_Wiedemann::moveHelper(), MSCFModel_IDM::moveHelper(), MSCFModel_SmartSK::stopSpeed(), and MSCFModel_SmartSK::updateMyHeadway().
|
inlinevirtualinherited |
Returns the precomputed factor by which the driver wants to be faster than the speed limit.
Implements SUMOVehicle.
Definition at line 271 of file MSBaseVehicle.h.
References MSBaseVehicle::myChosenSpeedFactor.
Referenced by GUIVehicle::getParameterWindow(), and TraCIServerAPI_Vehicle::processGet().
SUMOReal MSVehicle::getCO2Emissions | ( | ) | const |
Returns CO2 emission of the current state.
Definition at line 2147 of file MSVehicle.cpp.
References PollutantsInterface::CO2, PollutantsInterface::compute(), MSVehicleType::getEmissionClass(), getSlope(), myAcceleration, myState, MSBaseVehicle::myType, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
SUMOReal MSVehicle::getCOEmissions | ( | ) | const |
Returns CO emission of the current state.
Definition at line 2153 of file MSVehicle.cpp.
References PollutantsInterface::CO, PollutantsInterface::compute(), MSVehicleType::getEmissionClass(), getSlope(), myAcceleration, myState, MSBaseVehicle::myType, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
|
inlinevirtualinherited |
Returns this vehicle's real departure time.
Implements SUMOVehicle.
Definition at line 189 of file MSBaseVehicle.h.
References MSBaseVehicle::myDeparture.
|
virtualinherited |
Returns a device of the given type if it exists or 0.
Implements SUMOVehicle.
Definition at line 324 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDevices.
|
inlinevirtualinherited |
Returns this vehicle's devices.
Implements SUMOVehicle.
Definition at line 224 of file MSBaseVehicle.h.
References MSBaseVehicle::myDevices.
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 |
destEdge,: | destination edge that shall be reached |
Definition at line 2092 of file MSVehicle.cpp.
References MSRoute::getDistanceBetween(), MSLane::getEdge(), MSLane::getLength(), getPositionOnLane(), isOnRoad(), max, MSBaseVehicle::myCurrEdge, myLane, MSBaseVehicle::myRoute, and SUMOReal.
|
virtualinherited |
Returns the edge the vehicle is currently at.
Implements SUMOVehicle.
Definition at line 127 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge.
Referenced by MSVehicleTransfer::add(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), TraCIServerAPI_Vehicle::commandDistanceRequest(), and TraCIServerAPI_Vehicle::processSet().
SUMOReal MSVehicle::getFuelConsumption | ( | ) | const |
Returns fuel consumption of the current state.
Definition at line 2177 of file MSVehicle.cpp.
References PollutantsInterface::compute(), PollutantsInterface::FUEL, MSVehicleType::getEmissionClass(), getSlope(), myAcceleration, myState, MSBaseVehicle::myType, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), and MSEmissionExport::write().
SUMOReal MSVehicle::getHarmonoise_NoiseEmissions | ( | ) | const |
Returns noise emissions of the current state.
Definition at line 2183 of file MSVehicle.cpp.
References HelpersHarmonoise::computeNoise(), MSVehicleType::getEmissionClass(), myAcceleration, myState, MSBaseVehicle::myType, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
SUMOReal MSVehicle::getHCEmissions | ( | ) | const |
Returns HC emission of the current state.
Definition at line 2159 of file MSVehicle.cpp.
References PollutantsInterface::compute(), MSVehicleType::getEmissionClass(), getSlope(), PollutantsInterface::HC, myAcceleration, myState, MSBaseVehicle::myType, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
|
virtualinherited |
Returns the name of the vehicle.
Implements SUMOVehicle.
Definition at line 99 of file MSBaseVehicle.cpp.
References SUMOVehicleParameter::id, and MSBaseVehicle::myParameter.
Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSVehicleTransfer::add(), MSBaseVehicle::calculateArrivalPos(), MSLane::checkFailure(), MSVehicleTransfer::checkInsertions(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSLane::detectCollisions(), GUIEdge::drawGL(), enterLaneAtInsertion(), MSCalibrator::execute(), MSVTypeProbe::execute(), executeMove(), MSLane::executeMovements(), MSE2Collector::getCurrentVehicleIDs(), MSLCM_JE2013::inform(), MSLCM_JE2013::informFollower(), MSLCM_JE2013::informLeader(), MSLane::isInsertionSuccess(), leaveLane(), MSCFModel_Daniel1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCalibrator::VehicleRemover::notifyEnter(), MSLCM_JE2013::patchSpeed(), planMoveInternal(), TraCIServerAPI_Vehicle::processSet(), replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::reroute(), MSLCM_JE2013::saveBlockerLength(), MSCalibrator::scheduleRemoval(), GUIVehicle::selectBlockingFoes(), TraCIServer::setVTDControlled(), MSLCM_JE2013::slowDownForBlocked(), tryID(), MSLCM_JE2013::wantsChange(), MSEmissionExport::write(), MSFCDExport::write(), MSXMLRawOut::writeVehicle(), and MSFullExport::writeVehicles().
|
virtualinherited |
Returns this vehicles impatience.
Implements SUMOVehicle.
Definition at line 317 of file MSBaseVehicle.cpp.
References MSBaseVehicle::getVehicleType(), SUMOVehicle::getWaitingTime(), MSGlobals::gTimeToGridlock, MAX2(), MIN2(), and SUMOReal.
Referenced by checkRewindLinkLanes(), executeMove(), MSLane::getLeaderOnConsecutive(), GUIVehicle::getParameterWindow(), MSLane::isInsertionSuccess(), and GUIVehicle::selectBlockingFoes().
MSVehicle::Influencer & MSVehicle::getInfluencer | ( | ) |
Returns the velocity/lane influencer.
If no influencer was existing before, one is built, first
Definition at line 2328 of file MSVehicle.cpp.
References myInfluencer.
Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSLaneChanger::change(), MSLane::executeMovements(), influenceChangeDecision(), TraCIServerAPI_Vehicle::processSet(), and TraCIServer::setVTDControlled().
|
inline |
Returns the lane the vehicle is on.
Definition at line 328 of file MSVehicle.h.
References myLane.
Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), activateReminders(), MSVehicleTransfer::add(), MSLaneChanger::change(), MSVehicleTransfer::checkInsertions(), MSAbstractLaneChangeModel::congested(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSCFModel_IDM::desiredSpeed(), MSLane::detectCollisions(), MSE2Collector::detectorUpdate(), MSVTypeProbe::execute(), MSLane::executeMovements(), GUIVehicle::getColorValue(), MSVTKExport::getSpeed(), MSCFModel::interactionGap(), MSCFModel_KraussPS::maxNextSpeed(), MSCFModel_Daniel1::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel::moveHelper(), MSLCM_DK2008::patchSpeed(), MSLCM_JE2013::patchSpeed(), MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), MSCalibrator::removePending(), setBlinkerInformation(), TraCIServerAPI_Vehicle::vtdMap_matchingNearest(), TraCIServerAPI_Vehicle::vtdMap_matchingRoutePosition(), MSLCM_JE2013::wantsChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSEmissionExport::write(), MSFCDExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
MSAbstractLaneChangeModel & MSVehicle::getLaneChangeModel | ( | ) |
Definition at line 1750 of file MSVehicle.cpp.
References myLaneChangeModel.
Referenced by MSVehicleTransfer::add(), MSLaneChanger::change(), MSLaneChanger::checkChange(), MSLane::detectCollisions(), executeMove(), MSLane::executeMovements(), getAngle(), GUIVehicle::getLastLaneChangeOffset(), getPosition(), MSAbstractLaneChangeModel::MSLCMessager::informLeader(), MSAbstractLaneChangeModel::MSLCMessager::informNeighFollower(), MSAbstractLaneChangeModel::MSLCMessager::informNeighLeader(), MSCFModel_Daniel1::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel::moveHelper(), planMove(), planMoveInternal(), MSLaneChanger::registerUnchanged(), MSLCM_JE2013::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), setBlinkerInformation(), and MSLaneChanger::startChange().
const MSAbstractLaneChangeModel & MSVehicle::getLaneChangeModel | ( | ) | const |
Definition at line 1756 of file MSVehicle.cpp.
References myLaneChangeModel.
unsigned int MSVehicle::getLaneIndex | ( | ) | const |
Definition at line 2258 of file MSVehicle.cpp.
References MSLane::getEdge(), MSEdge::getLanes(), and myLane.
Referenced by MSLane::appropriate(), and influenceChangeDecision().
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 for a leader |
Definition at line 2113 of file MSVehicle.cpp.
References MSCFModel::brakeGap(), getBestLanesContinuation(), getCarFollowModel(), MSLane::getLeaderOnConsecutive(), MSVehicleType::getLength(), MSLane::getLength(), MSVehicleType::getMinGap(), getPositionOnLane(), getSpeed(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), myLane, MSLane::releaseVehicles(), and SUMOReal.
Referenced by getTimeGap(), and TraCIServerAPI_Vehicle::processGet().
|
virtualinherited |
Returns the maximum speed.
Implements SUMOVehicle.
Definition at line 111 of file MSBaseVehicle.cpp.
References MSVehicleType::getMaxSpeed(), and MSBaseVehicle::myType.
Referenced by MSCFModel_Wiedemann::_v(), MSVehicleTransfer::checkInsertions(), estimateSpeedAfterDistance(), GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), and MSLane::insertVehicle().
MSVehicle::Stop & MSVehicle::getNextStop | ( | ) |
returns the next imminent stop in the stop queue
Definition at line 2322 of file MSVehicle.cpp.
References myStops.
SUMOReal MSVehicle::getNOxEmissions | ( | ) | const |
Returns NOx emission of the current state.
Definition at line 2165 of file MSVehicle.cpp.
References PollutantsInterface::compute(), MSVehicleType::getEmissionClass(), getSlope(), myAcceleration, myState, MSBaseVehicle::myType, PollutantsInterface::NO_X, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
|
inlinevirtualinherited |
Returns the number of new routes this vehicle got.
Implements SUMOVehicle.
Definition at line 213 of file MSBaseVehicle.h.
References MSBaseVehicle::myNumberReroutes.
Referenced by GUIVehicle::drawGLAdditional(), GUIVehicle::getColorValue(), and MSBaseVehicle::replaceRouteEdges().
|
virtualinherited |
Returns the vehicle's parameter (including departure definition)
Implements SUMOVehicle.
Definition at line 105 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myParameter.
Referenced by MSPersonControl::boardAnyWaiting(), MSEdge::getDepartLane(), GUIVehicle::getParameterWindow(), MSLane::insertVehicle(), MSLane::isInsertionSuccess(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), and GUIVehicle::setFunctionalColor().
unsigned int MSVehicle::getPersonNumber | ( | ) | const |
Returns the number of persons.
Definition at line 2212 of file MSVehicle.cpp.
References MSBaseVehicle::myParameter, myPersonDevice, SUMOVehicleParameter::personNumber, and MSDevice_Person::size().
Referenced by TraCIServerAPI_Vehicle::processGet().
SUMOReal MSVehicle::getPMxEmissions | ( | ) | const |
Returns PMx emission of the current state.
Definition at line 2171 of file MSVehicle.cpp.
References PollutantsInterface::compute(), MSVehicleType::getEmissionClass(), getSlope(), myAcceleration, myState, MSBaseVehicle::myType, PollutantsInterface::PM_X, and MSVehicle::State::speed().
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
Return current position (x/y, cartesian)
If the vehicle's myLane is 0, Position::INVALID.
[in] | offset | optional offset in longitudinal direction |
Definition at line 616 of file MSVehicle.cpp.
References MSLane::geometryPositionAtOffset(), MSLane::getEdge(), getLaneChangeModel(), MSEdge::getLanes(), Line::getPositionAtDistance(), getPositionOnLane(), MSAbstractLaneChangeModel::getShadowLane(), MSLane::interpolateLanePosToGeometryPos(), Position::INVALID, MSAbstractLaneChangeModel::isChangingLanes(), MSAbstractLaneChangeModel::isLaneChangeMidpointPassed(), isParking(), Line::length(), PositionVector::move2side(), myCachedPosition, myLane, MSVehicle::State::myPos, myState, PositionVector::positionAtOffset(), and SUMO_const_laneWidth.
Referenced by TraCIServerAPI_Vehicle::commandDistanceRequest(), GUIVehicle::drawGL(), getAngle(), GUIVehicle::getCenteringBoundary(), TraCIServerAPI_Vehicle::getPosition(), MSVTKExport::getPositions(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), and MSFCDExport::write().
|
inlinevirtual |
Get the vehicle's position along the lane.
Implements SUMOVehicle.
Definition at line 283 of file MSVehicle.h.
References MSVehicle::State::myPos, and myState.
Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSLaneChanger::change(), MSVehicleTransfer::checkInsertions(), checkRewindLinkLanes(), TraCIServerAPI_Vehicle::commandDistanceRequest(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSE2Collector::detectorUpdate(), MSVTypeProbe::execute(), executeMove(), MSLane::executeMovements(), fixPosition(), MSLane::freeInsertion(), getAngle(), MSLane::getBruttoOccupancy(), getDistanceToPosition(), MSLane::getFollowerOnConsecutive(), MSLane::getLastVehicleInformation(), getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getMissingRearGap(), MSLane::getNettoOccupancy(), GUIVehicle::getParameterWindow(), getPosition(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), getSlope(), MSVTKExport::getSpeed(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSCFModel_KraussPS::maxNextSpeed(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), MSLane::VehPosition::operator()(), MSLane::vehicle_position_sorter::operator()(), MSLCM_JE2013::patchSpeed(), planMoveInternal(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSCalibrator::remainingVehicleCapacity(), GUIVehicle::selectBlockingFoes(), setBlinkerInformation(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_JE2013::wantsChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSFCDExport::write(), MSEmissionExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
|
inlinevirtual |
Returns the starting point for reroutes (usually the current edge)
This differs from *myCurrEdge only if the vehicle is on an internal edge
Reimplemented from MSBaseVehicle.
Definition at line 346 of file MSVehicle.h.
References MSLane::getInternalFollower(), MSBaseVehicle::myCurrEdge, and myLane.
Referenced by TraCIServerAPI_Vehicle::processSet().
|
inlinevirtualinherited |
Returns the current route.
Implements SUMOVehicle.
Definition at line 87 of file MSBaseVehicle.h.
References MSBaseVehicle::myRoute.
Referenced by TraCIServerAPI_Vehicle::commandDistanceRequest(), enterLaneAtLaneChange(), MSEdge::getDepartLane(), MSLane::isInsertionSuccess(), TraCIServerAPI_Vehicle::processGet(), GUIVehicle::setFunctionalColor(), TraCIServerAPI_Vehicle::vtdMap_matchingEdgeLane(), TraCIServerAPI_Vehicle::vtdMap_matchingNearest(), MSEmissionExport::write(), and MSFullExport::writeVehicles().
unsigned int MSVehicle::getRoutePosition | ( | ) | const |
Definition at line 524 of file MSVehicle.cpp.
References MSRoute::begin(), MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
Referenced by TraCIServerAPI_Vehicle::vtdMap_matchingEdgeLane(), and TraCIServerAPI_Vehicle::vtdMap_matchingNearest().
|
inline |
Returns the signals.
Definition at line 798 of file MSVehicle.h.
References mySignals.
Referenced by TraCIServerAPI_Vehicle::processGet(), and MSFCDExport::write().
|
virtual |
Returns the slope of the road at vehicle's position.
Reimplemented from MSBaseVehicle.
Definition at line 605 of file MSVehicle.cpp.
References getPositionOnLane(), MSLane::getShape(), MSLane::interpolateLanePosToGeometryPos(), myLane, PositionVector::slopeDegreeAtOffset(), and SUMOReal.
Referenced by getCO2Emissions(), getCOEmissions(), getFuelConsumption(), getHCEmissions(), getNOxEmissions(), and getPMxEmissions().
|
protected |
Definition at line 1383 of file MSVehicle.cpp.
References MSLane::getLength(), MSLane::getVehiclesSecure(), MSLane::releaseVehicles(), SUMO_const_haltingSpeed, and SUMOReal.
Referenced by checkRewindLinkLanes().
|
inlinevirtual |
Returns the vehicle's current speed.
Implements SUMOVehicle.
Definition at line 291 of file MSVehicle.h.
References MSVehicle::State::mySpeed, and myState.
Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSCFModel_Wiedemann::_v(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), adaptToLeader(), MSLaneChanger::change(), MSLaneChanger::checkChange(), GUIApplicationWindow::checkGamingEvents(), checkRewindLinkLanes(), MSE2Collector::detectorUpdate(), MSVTypeProbe::execute(), executeMove(), MSLane::executeMovements(), MSLane::forceVehicleInsertion(), MSLane::freeInsertion(), GUIVehicle::getColorValue(), MSLane::getFollowerOnConsecutive(), getLeader(), MSLane::getMissingRearGap(), GUIVehicle::getParameterWindow(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSVTKExport::getSpeed(), getTimeGap(), MSLCM_DK2008::informBlocker(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_JE2013::informLeader(), MSLCM_LC2013::informLeader(), MSCFModel_IDM::interactionGap(), MSCFModel::interactionGap(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), MSCFModel_Daniel1::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel_PWag2009::moveHelper(), MSCFModel_Wiedemann::moveHelper(), MSCFModel::moveHelper(), MSLCM_DK2008::patchSpeed(), MSLCM_JE2013::patchSpeed(), planMoveInternal(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), processNextStop(), TraCIServerAPI_Vehicle::processSet(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSLCM_JE2013::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_JE2013::wantsChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSEmissionExport::write(), MSFCDExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
SUMOReal 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 2337 of file MSVehicle.cpp.
References MSVehicle::Influencer::getOriginalSpeed(), myInfluencer, MSVehicle::State::mySpeed, and myState.
Referenced by TraCIServerAPI_Vehicle::processGet().
SUMOReal MSVehicle::getTimeGap | ( | ) | const |
Returns the time gap in seconds to the leader of the vehicle looking for a fixed distance.
If the distance is too big -1 is returned. The gap returned takes the minGap into account.
Definition at line 2137 of file MSVehicle.cpp.
References getLeader(), getSpeed(), and MSBaseVehicle::getVehicleType().
Referenced by GUIVehicle::getColorValue(), and GUIVehicle::getParameterWindow().
|
inlinevirtualinherited |
Returns the vehicle's type definition.
Implements SUMOVehicle.
Definition at line 95 of file MSBaseVehicle.h.
References MSBaseVehicle::myType.
Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), addStop(), MSLaneChanger::change(), MSLane::checkFailure(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), checkRewindLinkLanes(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSLane::detectCollisions(), MSE2Collector::detectorUpdate(), GUIVehicle::drawAction_drawRailCarriages(), GUIVehicle::drawAction_drawVehicleAsBoxPlus(), GUIVehicle::drawAction_drawVehicleAsImage(), GUIVehicle::drawAction_drawVehicleAsPoly(), GUIVehicle::drawAction_drawVehicleAsTrianglePlus(), drawAction_drawVehicleBlinker(), drawAction_drawVehicleBrakeLight(), GUIVehicle::drawGL(), GUIVehicle::drawGLAdditional(), MSLane::enteredByLaneChange(), enterLaneAtLaneChange(), estimateLeaveSpeed(), estimateSpeedAfterDistance(), MSVTypeProbe::execute(), executeMove(), MSLane::executeMovements(), MSLane::freeInsertion(), MSLane::getBruttoOccupancy(), MSEdge::getDepartLane(), MSLane::getFollowerOnConsecutive(), MSBaseVehicle::getImpatience(), MSLane::getLastVehicleInformation(), getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getMissingRearGap(), MSLane::getNettoOccupancy(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), getTimeGap(), MSLane::incorporateVehicle(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_JE2013::informLeader(), MSLCM_LC2013::informLeader(), MSLane::insertVehicle(), MSLane::integrateNewVehicle(), MSLane::isInsertionSuccess(), MSLane::leftByLaneChange(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), overlap(), MSLCM_DK2008::patchSpeed(), planMoveInternal(), MSLane::planMovements(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), processNextStop(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSLaneChanger::registerUnchanged(), MSLane::removeVehicle(), MSLCM_JE2013::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), GUIVehicle::selectBlockingFoes(), GUIVehicle::setFunctionalColor(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLaneChanger::startChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSEmissionExport::write(), MSFCDExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
|
inline |
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 373 of file MSVehicle.h.
References myWaitingTime, and STEPS2TIME.
Referenced by GUIVehicle::getColorValue(), GUIVehicle::getParameterWindow(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
|
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.
Implements SUMOVehicle.
Definition at line 362 of file MSVehicle.h.
References myWaitingTime.
Referenced by checkRewindLinkLanes(), executeMove(), MSLane::executeMovements(), and GUIVehicle::selectBlockingFoes().
const MSEdgeWeightsStorage & MSVehicle::getWeightsStorage | ( | ) | const |
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 539 of file MSVehicle.cpp.
References _getWeightsStorage().
Referenced by MSNet::getEffort(), MSNet::getTravelTime(), TraCIServerAPI_Vehicle::processGet(), and TraCIServerAPI_Vehicle::processSet().
MSEdgeWeightsStorage & MSVehicle::getWeightsStorage | ( | ) |
Definition at line 545 of file MSVehicle.cpp.
References _getWeightsStorage().
|
virtual |
Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge)
Reimplemented from MSBaseVehicle.
Definition at line 462 of file MSVehicle.cpp.
References MSRoute::end(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, MSVehicle::State::myPos, MSBaseVehicle::myRoute, myState, myStops, and POSITION_EPS.
Referenced by enterLaneAtMove(), executeMove(), and MSLane::executeMovements().
|
virtualinherited |
Returns whether this vehicle has already departed.
Implements SUMOVehicle.
Definition at line 206 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myDeparture, and MSBaseVehicle::NOT_YET_DEPARTED.
Referenced by addStop(), loadState(), and TraCIServerAPI_Vehicle::processSet().
|
inline |
Definition at line 1043 of file MSVehicle.h.
References myInfluencer.
Referenced by MSLaneChanger::change(), MSLane::executeMovements(), and influenceChangeDecision().
|
inline |
Returns whether the vehicle has to stop somewhere.
Definition at line 596 of file MSVehicle.h.
References myStops.
|
inherited |
Validates the current route.
[out] | msg | Description why the route is not valid (if it is the case) |
Definition at line 222 of file MSBaseVehicle.cpp.
References MSRoute::end(), MSVehicleType::getVehicleClass(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, and MSBaseVehicle::myType.
Referenced by enterLaneAtInsertion(), and TraCIServerAPI_Vehicle::processGet().
allow TraCI to influence a lane change decision
Definition at line 2346 of file MSVehicle.cpp.
References MSLane::getEdge(), getInfluencer(), MSNet::getInstance(), getLaneIndex(), hasInfluencer(), MSVehicle::Influencer::influenceChangeDecision(), and myLane.
Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSAbstractLaneChangeModel::cancelRequest(), and MSLaneChanger::checkChange().
|
inlinevirtual |
Returns the information whether the vehicle is on a road (is simulated)
Reimplemented from MSBaseVehicle.
Definition at line 336 of file MSVehicle.h.
References myAmOnNet.
Referenced by GUIApplicationWindow::checkGamingEvents(), TraCIServerAPI_Vehicle::commandDistanceRequest(), MSVTypeProbe::execute(), getDistanceToPosition(), MSVTKExport::getPositions(), MSVTKExport::getSpeed(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), MSFCDExport::write(), MSEmissionExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().
bool MSVehicle::isParking | ( | ) | const |
Returns whether the vehicle is parking.
Definition at line 761 of file MSVehicle.cpp.
References isStopped(), and myStops.
Referenced by MSVehicleTransfer::add(), MSLane::executeMovements(), getPosition(), GUIVehicle::getStopInfo(), and TraCIServerAPI_Vehicle::processGet().
|
virtual |
Returns whether the vehicle is at a stop.
Implements SUMOVehicle.
Definition at line 755 of file MSVehicle.cpp.
References myStops.
Referenced by MSLane::executeMovements(), GUIVehicle::getStopInfo(), isParking(), isStoppedTriggered(), TraCIServerAPI_Vehicle::processGet(), and resumeFromStopping().
bool MSVehicle::isStoppedTriggered | ( | ) | const |
Returns whether the vehicle is on a triggered stop.
Definition at line 767 of file MSVehicle.cpp.
References isStopped(), and myStops.
Referenced by TraCIServerAPI_Vehicle::processGet().
void MSVehicle::leaveLane | ( | const MSMoveReminder::Notification | reason | ) |
Update of members if vehicle leaves a new lane in the lane change step or at arrival.
Definition at line 1710 of file MSVehicle.cpp.
References MSBaseVehicle::getID(), myAmOnNet, MSBaseVehicle::myCurrEdge, myFurtherLanes, MSBaseVehicle::myMoveReminders, MSVehicle::State::myPos, myState, myStops, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_LANE_CHANGE, MSMoveReminder::NOTIFICATION_PARKING, MSMoveReminder::NOTIFICATION_TELEPORT, resumeFromStopping(), and WRITE_WARNING.
Referenced by MSLaneChanger::change(), MSVehicleTransfer::checkInsertions(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), executeMove(), onRemovalFromNet(), MSLane::removeVehicle(), and MSAbstractLaneChangeModel::startLaneChangeManeuver().
|
virtual |
Loads the state of this vehicle from the given description.
Implements SUMOVehicle.
Definition at line 2374 of file MSVehicle.cpp.
References SUMOSAXAttributes::getFloat(), SUMOSAXAttributes::getString(), SUMOSAXAttributes::hasAttribute(), MSBaseVehicle::hasDeparted(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myDeparture, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, SUMO_ATTR_POSITION, SUMO_ATTR_SPEED, and SUMO_ATTR_STATE.
|
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 199 of file MSBaseVehicle.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSNet::getVehicleControl(), MSBaseVehicle::myDeparture, and MSVehicleControl::vehicleDeparted().
Referenced by MSCalibrator::execute().
void MSVehicle::onRemovalFromNet | ( | const MSMoveReminder::Notification | reason | ) |
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) |
Definition at line 448 of file MSVehicle.cpp.
References MSVehicleTransfer::getInstance(), leaveLane(), myLFLinkLanes, MSVehicle::State::myPos, MSVehicle::State::mySpeed, myState, MSVehicleTransfer::remove(), SPEED2DIST, and workOnMoveReminders().
Referenced by MSVehicleTransfer::add(), MSLane::executeMovements(), MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processSet(), and MSCalibrator::removePending().
Returns true if the two vehicles overlap.
Definition at line 386 of file MSVehicle.h.
References MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), MSVehicle::State::myPos, and myState.
void MSVehicle::planMove | ( | const SUMOTime | t, |
const MSVehicle * | pred, | ||
const SUMOReal | 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 discared to avoid blocking a junction (checkRewindLinkLanes).
Finally the ApproachingVehicleInformation is registered for all links that shall be passed
[in] | t | The current timeStep |
[in] | pred | The leader (may be 0) |
[in] | lengthsInFront | Sum of vehicle lengths in front of the vehicle |
Definition at line 851 of file MSVehicle.cpp.
References checkRewindLinkLanes(), getLaneChangeModel(), myLFLinkLanes, planMoveInternal(), and MSAbstractLaneChangeModel::resetMoved().
|
protected |
Definition at line 859 of file MSVehicle.cpp.
References MSVehicle::DriveProcessItem::adaptLeaveSpeed(), adaptToLeader(), ARRIVAL_SPEED_GIVEN, SUMOVehicleParameter::arrivalSpeed, SUMOVehicleParameter::arrivalSpeedProcedure, bla, MSCFModel::brakeGap(), MSVehicle::Stop::busstop, CRLL_LOOK_AHEAD, DIST_TO_STOPLINE_EXPECT_PRIORITY, MSEdge::EDGEFUNCTION_INTERNAL, MSRoute::end(), MSVehicle::Stop::endPos, estimateLeaveSpeed(), estimateSpeedAfterDistance(), MSCFModel::freeSpeed(), gap(), getBestLanesContinuation(), MSVehicleType::getCarFollowModel(), getCarFollowModel(), MSLane::getEdge(), MSCFModel::getHeadwayTime(), MSBaseVehicle::getID(), MSNet::getInstance(), getLaneChangeModel(), MSBusStop::getLastFreePos(), MSLane::getLastVehicleInformation(), MSVehicleType::getLength(), MSLane::getLength(), MSCFModel::getMaxAccel(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSLane::getPartialOccupator(), MSLane::getPartialOccupatorEnd(), getPositionOnLane(), MSEdge::getPurpose(), getSpeed(), MSCFModel::getSpeedAfterMaxDecel(), MSLane::getVehicleMaxSpeed(), MSBaseVehicle::getVehicleType(), MSGlobals::gLaneChangeDuration, GLO_VEHICLE, gSelected, MSVehicle::Influencer::influenceSpeed(), MSAbstractLaneChangeModel::isLaneChangeMidpointPassed(), MSLane::isLinkEnd(), GUISelectedStorage::isSelected(), MSVehicle::Influencer::isVTDControlled(), LINKDIR_LEFT, LINKDIR_RIGHT, LINKSTATE_TL_RED, LINKSTATE_TL_YELLOW_MAJOR, LINKSTATE_TL_YELLOW_MINOR, MAX2(), MSCFModel::maxNextSpeed(), MIN2(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, myInfluencer, myLane, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, myStops, MSVehicle::DriveProcessItem::myVLinkWait, NUMERICAL_EPS, POSITION_EPS, SPEED2DIST, STEPS2TIME, MSCFModel::stopSpeed(), MSLane::succLinkSec(), SUMOReal, SUMOTime_MAX, and TIME2STEPS.
Referenced by planMove().
Processes stops, returns the velocity needed to reach the stop.
Definition at line 773 of file MSVehicle.cpp.
References MSVehicleControl::addWaiting(), MSVehicle::Stop::awaitedPersons, MSPersonControl::boardAnyWaiting(), BUS_STOP_OFFSET, MSVehicle::Stop::busstop, DELTA_T, MSVehicle::Stop::duration, MSVehicle::Stop::edge, MSVehicle::Stop::endPos, MSBusStop::enter(), MSBusStop::getBeginLanePosition(), getCarFollowModel(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSNet::getInstance(), MSBusStop::getLastFreePos(), MSVehicleType::getLength(), MSVehicleType::getMinGap(), MSNet::getPersonControl(), MSDevice_Person::getPersons(), getSpeed(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSNet::informVehicleStateListener(), MSVehicle::Stop::lane, MAX2(), myAmRegisteredAsWaitingForPerson, MSBaseVehicle::myCurrEdge, myLane, myPersonDevice, myState, myStops, MSBaseVehicle::myType, MSVehicle::State::pos(), MSVehicle::Stop::reached, MSVehicleControl::registerOneWaitingForPerson(), MSBusStop::removePerson(), resumeFromStopping(), MSCFModel::stopSpeed(), SUMOReal, MSVehicle::Stop::triggered, MSVehicleControl::unregisterOneWaitingForPerson(), MSVehicle::Stop::until, and MSNet::VEHICLE_STATE_STARTING_STOP.
Referenced by MSVehicleTransfer::checkInsertions(), MSCFModel_Daniel1::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), MSCFModel_SmartSK::moveHelper(), and MSCFModel::moveHelper().
|
inherited |
Removes a MoveReminder dynamically.
[in] | rem | the reminder to remove |
Definition at line 255 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
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 |
Implements SUMOVehicle.
Definition at line 469 of file MSVehicle.cpp.
References MSRoute::addReference(), addStop(), MSRoute::begin(), MSBaseVehicle::calculateArrivalPos(), MSRoute::contains(), MSRoute::getEdges(), MSBaseVehicle::getID(), MSNet::getInstance(), MSRoute::getStops(), MSNet::informVehicleStateListener(), MSBaseVehicle::myCurrEdge, myLastBestLanesEdge, myLastBestLanesInternalLane, MSBaseVehicle::myNumberReroutes, MSBaseVehicle::myRoute, myStops, MSRoute::release(), updateBestLanes(), MSNet::VEHICLE_STATE_NEWROUTE, and WRITE_WARNING.
Referenced by TraCIServerAPI_Vehicle::processSet().
|
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] | simTime | The time at which the route was replaced |
Implements SUMOVehicle.
Definition at line 154 of file MSBaseVehicle.cpp.
References MSRoute::addReference(), MSRoute::begin(), RGBColor::DEFAULT_COLOR, MSRoute::dictionary(), MSRoute::getColor(), Named::getID(), MSBaseVehicle::getID(), MSBaseVehicle::getNumberReroutes(), MSBaseVehicle::getRerouteOrigin(), MSRoute::getStops(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, MSRoute::release(), SUMOVehicle::replaceRoute(), and toString().
Referenced by MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processSet(), and MSBaseVehicle::reroute().
void MSVehicle::replaceVehicleType | ( | MSVehicleType * | type | ) |
Replaces the current vehicle type by the one given.
If the currently used vehicle type is marked as being used by this vehicle only, it is deleted, first. The new, given type is then assigned to "myType".
[in] | type | The new vehicle type |
Definition at line 2250 of file MSVehicle.cpp.
References MSVehicleType::amVehicleSpecific(), and MSBaseVehicle::myType.
Referenced by TraCIServerAPI_Vehicle::processSet().
|
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 |
Implements SUMOVehicle.
Definition at line 133 of file MSBaseVehicle.cpp.
References SUMOAbstractRouter< E, V >::compute(), MSEdge::dictionary(), SUMOVehicleParameter::fromTaz, MSBaseVehicle::getID(), MSRoute::getLastEdge(), MSBaseVehicle::getRerouteOrigin(), MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::replaceRouteEdges(), SUMOVehicleParameter::toTaz, and WRITE_WARNING.
Referenced by TraCIServerAPI_Vehicle::processSet().
void MSVehicle::resetRoutePosition | ( | unsigned int | index | ) |
Definition at line 530 of file MSVehicle.cpp.
References MSRoute::begin(), MSRoute::end(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
Referenced by MSCalibrator::execute().
bool MSVehicle::resumeFromStopping | ( | ) |
resumes a vehicle from stopping
Definition at line 2294 of file MSVehicle.cpp.
References MSLane::getEdge(), MSNet::getInstance(), MSNet::getVehicleControl(), MSNet::informVehicleStateListener(), isStopped(), myAmRegisteredAsWaitingForPerson, myLane, myStops, myWaitingTime, MSVehicleControl::removeWaiting(), MSVehicleControl::unregisterOneWaitingForPerson(), updateBestLanes(), and MSNet::VEHICLE_STATE_ENDING_STOP.
Referenced by leaveLane(), and processNextStop().
|
virtual |
Saves the states of a vehicle.
Reimplemented from MSBaseVehicle.
Definition at line 2360 of file MSVehicle.cpp.
References MSRoute::begin(), OutputDevice::closeTag(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myDeparture, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, myState, SUMO_ATTR_POSITION, SUMO_ATTR_SPEED, SUMO_ATTR_STATE, toString(), and OutputDevice::writeAttr().
|
protected |
Definition at line 2219 of file MSVehicle.cpp.
References getBestLanesContinuation(), getLane(), getLaneChangeModel(), MSLane::getLength(), MSLane::getLinkCont(), MSAbstractLaneChangeModel::getOwnState(), getPositionOnLane(), MSLane::getVehicleMaxSpeed(), LCA_LEFT, LCA_RIGHT, LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_TURN, MSLane::succLinkSec(), SUMOReal, switchOffSignal(), switchOnSignal(), VEH_SIGNAL_BLINKER_LEFT, and VEH_SIGNAL_BLINKER_RIGHT.
Referenced by executeMove().
|
inlineinherited |
Returns the precomputed factor by which the driver wants to be faster than the speed limit.
Definition at line 278 of file MSBaseVehicle.h.
References MSBaseVehicle::myChosenSpeedFactor.
Referenced by TraCIServerAPI_Vehicle::processSet().
Returns whether the given signal is on.
[in] | signal | The signal to return the value of |
Definition at line 807 of file MSVehicle.h.
References mySignals.
Referenced by checkRewindLinkLanes(), drawAction_drawVehicleBlinker(), and drawAction_drawVehicleBrakeLight().
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 117 of file MSBaseVehicle.cpp.
References MSBaseVehicle::myCurrEdge.
Referenced by MSVehicleTransfer::add(), MSLane::appropriate(), MSVehicleTransfer::checkInsertions(), MSBaseVehicle::hasArrived(), and TraCIServerAPI_Vehicle::processSet().
|
inline |
Switches the given signal off.
[in] | signal | The signal to mark as being switched off |
Definition at line 790 of file MSVehicle.h.
References mySignals.
Referenced by executeMove(), TraCIServerAPI_Vehicle::processSet(), and setBlinkerInformation().
|
inline |
Switches the given signal on.
[in] | signal | The signal to mark as being switched on |
Definition at line 782 of file MSVehicle.h.
References mySignals.
Referenced by executeMove(), TraCIServerAPI_Vehicle::processSet(), and setBlinkerInformation().
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 bect 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 1768 of file MSVehicle.cpp.
References abs, MSEdge::allowedLanes(), MSVehicle::LaneQ::allowsContinuation, ARRIVAL_LANE_GIVEN, SUMOVehicleParameter::arrivalLane, SUMOVehicleParameter::arrivalLaneProcedure, MSVehicle::LaneQ::bestContinuations, MSVehicle::LaneQ::bestLaneOffset, bla, MSEdge::clear(), MSEdge::EDGEFUNCTION_INTERNAL, MSRoute::end(), MSLane::getEdge(), MSLane::getInternalFollower(), MSEdge::getLanes(), MSLane::getLength(), MSEdge::getLength(), MSLane::getLinkCont(), MSLane::getLogicalPredecessorLane(), MSEdge::getPurpose(), MSVehicleType::getVehicleClass(), GLO_VEHICLE, gSelected, GUISelectedStorage::isSelected(), MSVehicle::LaneQ::lane, MSVehicle::Stop::lane, MSVehicle::LaneQ::length, MIN2(), MSBaseVehicle::myArrivalPos, myBestLanes, MSBaseVehicle::myCurrEdge, myCurrentLaneInBestLanes, myLane, myLastBestLanesEdge, myLastBestLanesInternalLane, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, myStops, MSBaseVehicle::myType, POSITION_EPS, MSVehicle::Stop::startPos, SUMOReal, and updateOccupancyAndCurrentBestLane().
Referenced by MSLaneChanger::change(), enterLaneAtLaneChange(), executeMove(), MSLane::forceVehicleInsertion(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSVehicle(), MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processSet(), replaceRoute(), and resumeFromStopping().
|
protected |
updates LaneQ::nextOccupation and myCurrentLaneInBestLanes
Definition at line 2018 of file MSVehicle.cpp.
References myBestLanes, myCurrentLaneInBestLanes, and SUMOReal.
Referenced by updateBestLanes().
Returns whether the vehicle wil pass the given edge.
[in] | The | edge to find in the vehicle's current route |
Definition at line 518 of file MSVehicle.cpp.
References MSRoute::end(), MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.
Referenced by TraCIServerAPI_Vehicle::processSet().
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 561 of file MSVehicle.cpp.
References MSBaseVehicle::myMoveReminders.
Referenced by executeMove(), MSLane::executeMovements(), and onRemovalFromNet().
|
friend |
the lane changer sets myLastLaneChangeOffset
Definition at line 81 of file MSVehicle.h.
|
protected |
The current acceleration after dawdling in m/s.
Definition at line 1122 of file MSVehicle.h.
Referenced by executeMove(), getAcceleration(), getCO2Emissions(), getCOEmissions(), getFuelConsumption(), getHarmonoise_NoiseEmissions(), getHCEmissions(), getNOxEmissions(), and getPMxEmissions().
|
protected |
Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived)
Definition at line 1131 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), isOnRoad(), and leaveLane().
|
protected |
Whether this vehicle is registered as waiting for a person (for deadlock-recognition)
Definition at line 1134 of file MSVehicle.h.
Referenced by processNextStop(), and resumeFromStopping().
|
protectedinherited |
the position on the destination lane where the vehicle stops
Definition at line 333 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::calculateArrivalPos(), MSBaseVehicle::getArrivalPos(), hasArrived(), planMoveInternal(), resetRoutePosition(), and updateBestLanes().
|
protected |
Definition at line 1111 of file MSVehicle.h.
Referenced by adaptBestLanesOccupation(), GUIVehicle::drawBestLanes(), getBestLaneOffset(), getBestLanes(), getBestLanesContinuation(), updateBestLanes(), and updateOccupancyAndCurrentBestLane().
|
mutableprotected |
Definition at line 1138 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), enterLaneAtMove(), executeMove(), fixPosition(), and getPosition().
|
private |
The per vehicle variables of the car following model.
Definition at line 1246 of file MSVehicle.h.
Referenced by getCarFollowVariables(), and MSVehicle().
|
protectedinherited |
A precomputed factor by which the driver wants to be faster than the speed limit.
Definition at line 313 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getChosenSpeedFactor(), MSVehicle(), and MSBaseVehicle::setChosenSpeedFactor().
|
protectedinherited |
Iterator to current route-edge.
Definition at line 310 of file MSBaseVehicle.h.
Referenced by addStop(), enterLaneAtLaneChange(), enterLaneAtMove(), executeMove(), getDistanceToPosition(), MSBaseVehicle::getEdge(), MSBaseVehicle::getRerouteOrigin(), getRerouteOrigin(), getRoutePosition(), hasArrived(), MSBaseVehicle::hasValidRoute(), leaveLane(), loadState(), planMoveInternal(), MSVehicle::Influencer::postProcessVTD(), processNextStop(), replaceRoute(), MSBaseVehicle::replaceRouteEdges(), resetRoutePosition(), saveState(), MSBaseVehicle::succEdge(), updateBestLanes(), and willPass().
|
protected |
Definition at line 1112 of file MSVehicle.h.
Referenced by updateBestLanes(), and updateOccupancyAndCurrentBestLane().
|
protectedinherited |
The real departure time.
Definition at line 330 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getDeparture(), MSBaseVehicle::hasDeparted(), loadState(), MSBaseVehicle::onDepart(), and saveState().
|
protectedinherited |
The devices this vehicle has.
Definition at line 327 of file MSBaseVehicle.h.
Referenced by addPerson(), MSBaseVehicle::getDevice(), MSBaseVehicle::getDevices(), GUIVehicle::GUIVehicle(), MSBaseVehicle::MSBaseVehicle(), and MSBaseVehicle::~MSBaseVehicle().
|
mutableprivate |
Definition at line 1243 of file MSVehicle.h.
Referenced by _getWeightsStorage(), and ~MSVehicle().
|
staticprotected |
Definition at line 1113 of file MSVehicle.h.
Referenced by getBestLanesContinuation().
|
protected |
The information into which lanes the vehicle laps into.
Definition at line 1125 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), enterLaneAtLaneChange(), executeMove(), getAngle(), GUIVehicle::getPreviousLane(), leaveLane(), and ~MSVehicle().
|
protected |
Definition at line 1136 of file MSVehicle.h.
Referenced by checkRewindLinkLanes(), and executeMove().
|
private |
An instance of a velocity/lane influencing instance; built in "getInfluencer".
Definition at line 1250 of file MSVehicle.h.
Referenced by checkRewindLinkLanes(), executeMove(), getInfluencer(), getSpeedWithoutTraciInfluence(), hasInfluencer(), planMoveInternal(), and ~MSVehicle().
|
protected |
The lane the vehicle is on.
Definition at line 1104 of file MSVehicle.h.
Referenced by adaptLaneEntering2MoveReminder(), checkRewindLinkLanes(), GUIVehicle::drawAction_drawRailCarriages(), GUIVehicle::drawGL(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), executeMove(), fixPosition(), getAngle(), getDistanceToPosition(), getLane(), getLaneIndex(), getLeader(), GUIVehicle::getParameterWindow(), getPosition(), getRerouteOrigin(), getSlope(), influenceChangeDecision(), planMoveInternal(), processNextStop(), resumeFromStopping(), GUIVehicle::selectBlockingFoes(), and updateBestLanes().
|
protected |
Definition at line 1106 of file MSVehicle.h.
Referenced by getLaneChangeModel(), MSVehicle(), and ~MSVehicle().
|
protected |
Definition at line 1108 of file MSVehicle.h.
Referenced by replaceRoute(), and updateBestLanes().
|
protected |
Definition at line 1109 of file MSVehicle.h.
Referenced by replaceRoute(), and updateBestLanes().
|
protected |
Container for used Links/visited Lanes during lookForward.
Definition at line 1195 of file MSVehicle.h.
Referenced by GUIVehicle::drawGLAdditional(), executeMove(), onRemovalFromNet(), planMove(), GUIVehicle::selectBlockingFoes(), and ~MSVehicle().
|
protectedinherited |
Current lane's move reminder.
Definition at line 323 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::activateReminders(), activateReminders(), adaptLaneEntering2MoveReminder(), addPerson(), MSBaseVehicle::addReminder(), GUIVehicle::GUIVehicle(), leaveLane(), MSBaseVehicle::MSBaseVehicle(), MSBaseVehicle::removeReminder(), and workOnMoveReminders().
|
protectedinherited |
The number of reroutings.
Definition at line 336 of file MSBaseVehicle.h.
Referenced by MSBaseVehicle::getNumberReroutes(), and replaceRoute().
|
protectedinherited |
This Vehicle's parameter.
Definition at line 301 of file MSBaseVehicle.h.
Referenced by addStop(), MSBaseVehicle::calculateArrivalPos(), MSBaseVehicle::getID(), MSBaseVehicle::getParameter(), getPersonNumber(), planMoveInternal(), MSBaseVehicle::reroute(), MSBaseVehicle::saveState(), updateBestLanes(), and MSBaseVehicle::~MSBaseVehicle().
|
protected |
The passengers this vehicle may have.
Definition at line 1119 of file MSVehicle.h.
Referenced by addPerson(), GUIVehicle::drawGL(), GUIVehicle::getNumPassengers(), getPersonNumber(), and processNextStop().
|
protectedinherited |
This Vehicle's route.
Definition at line 304 of file MSBaseVehicle.h.
Referenced by addStop(), MSBaseVehicle::calculateArrivalPos(), GUIVehicle::drawRoute(), GUIVehicle::drawRouteHelper(), executeMove(), getDistanceToPosition(), MSBaseVehicle::getRoute(), getRoutePosition(), hasArrived(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::MSBaseVehicle(), planMoveInternal(), replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::reroute(), resetRoutePosition(), MSBaseVehicle::saveState(), saveState(), updateBestLanes(), willPass(), and MSBaseVehicle::~MSBaseVehicle().
|
protected |
State of things of the vehicle that can be on or off.
Definition at line 1128 of file MSVehicle.h.
Referenced by getSignals(), signalSet(), switchOffSignal(), and switchOnSignal().
|
protected |
This Vehicles driving state (pos and speed)
Definition at line 1101 of file MSVehicle.h.
Referenced by addStop(), MSLaneChanger::change(), checkRewindLinkLanes(), congested(), GUIVehicle::drawAction_drawRailCarriages(), GUIVehicle::drawGL(), enterLaneAtInsertion(), enterLaneAtLaneChange(), enterLaneAtMove(), executeMove(), fixPosition(), getAngle(), getCO2Emissions(), getCOEmissions(), getFuelConsumption(), getHarmonoise_NoiseEmissions(), getHCEmissions(), getNOxEmissions(), getPMxEmissions(), getPosition(), getPositionOnLane(), getSpeed(), getSpeedWithoutTraciInfluence(), hasArrived(), leaveLane(), loadState(), onRemovalFromNet(), overlap(), planMoveInternal(), processNextStop(), and saveState().
|
protected |
The vehicle's list of stops.
Definition at line 1116 of file MSVehicle.h.
Referenced by addPerson(), addStop(), addTraciStop(), getNextStop(), GUIVehicle::getStopInfo(), hasArrived(), hasStops(), isParking(), isStopped(), isStoppedTriggered(), leaveLane(), planMoveInternal(), processNextStop(), replaceRoute(), resumeFromStopping(), and updateBestLanes().
|
protectedinherited |
This Vehicle's type.
Definition at line 307 of file MSBaseVehicle.h.
Referenced by enterLaneAtInsertion(), getAngle(), getCarFollowModel(), getCO2Emissions(), getCOEmissions(), getFuelConsumption(), getHarmonoise_NoiseEmissions(), getHCEmissions(), MSBaseVehicle::getMaxSpeed(), getNOxEmissions(), GUIVehicle::getParameterWindow(), getPMxEmissions(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::hasValidRoute(), processNextStop(), replaceVehicleType(), MSBaseVehicle::saveState(), updateBestLanes(), and ~MSVehicle().
|
protected |
The time the vehicle waits (is not faster than 0.1m/s) in seconds.
Definition at line 1098 of file MSVehicle.h.
Referenced by enterLaneAtInsertion(), executeMove(), getWaitingSeconds(), getWaitingTime(), and resumeFromStopping().