SUMO - Simulation of Urban MObility
GUIVehicle Class Reference

A MSVehicle extended by some values for usage within the gui. More...

#include <GUIVehicle.h>

Inheritance diagram for GUIVehicle:
MSVehicle GUIGlObject MSBaseVehicle SUMOVehicle

Data Structures

class  GUIVehiclePopupMenu
 

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 More...
 
void addReminder (MSMoveReminder *rem)
 Adds a MoveReminder dynamically. More...
 
void addStops (const bool ignoreStopErrors)
 Adds stops to the built vehicle. More...
 
bool addTraciStop (MSLane *lane, SUMOReal pos, SUMOReal radius, SUMOTime duration, bool parking, bool triggered, bool containerTriggered, std::string &errorMsg)
 
bool congested () const
 
void drawName (const Position &pos, const SUMOReal scale, const GUIVisualizationTextSettings &settings, const SUMOReal angle=0) const
 
void enterLaneAtInsertion (MSLane *enteredLane, SUMOReal pos, SUMOReal speed, MSMoveReminder::Notification notification)
 Update when the vehicle enters a new lane in the emit step. More...
 
void enterLaneAtLaneChange (MSLane *enteredLane)
 Update when the vehicle enters a new lane in the laneChange step. More...
 
bool enterLaneAtMove (MSLane *enteredLane, bool onTeleporting=false)
 Update when the vehicle enters a new lane in the move step. More...
 
bool executeMove ()
 Executes planned vehicle movements with regards to right-of-way. More...
 
bool fixPosition ()
 repair errors in vehicle position after changing between internal edges More...
 
virtual SUMOReal getArrivalPos () const
 Returns this vehicle's desired arrivalPos for its current route (may change on reroute) More...
 
const MSCFModelgetCarFollowModel () const
 Returns the vehicle's car following model definition. More...
 
MSCFModel::VehicleVariablesgetCarFollowVariables () const
 Returns the vehicle's car following model variables. More...
 
SUMOReal getChosenSpeedFactor () const
 Returns the precomputed factor by which the driver wants to be faster than the speed limit. More...
 
SUMOReal getColorValue (size_t activeScheme) const
 gets the color value according to the current scheme index More...
 
const MSRouteIteratorgetCurrentRouteEdge () const
 Returns an iterator pointing to the current edge in this vehicles route. More...
 
SUMOTime getDeparture () const
 Returns this vehicle's real departure time. More...
 
MSDevicegetDevice (const std::type_info &type) const
 Returns a device of the given type if it exists or 0. More...
 
const std::vector< MSDevice * > & getDevices () const
 Returns this vehicle's devices. More...
 
SUMOReal getDistanceToPosition (SUMOReal destPos, const MSEdge *destEdge)
 
const MSEdgegetEdge () const
 Returns the edge the vehicle is currently at. More...
 
const std::string & getID () const
 Returns the name of the vehicle. More...
 
SUMOReal getImpatience () const
 Returns this vehicles impatience. More...
 
InfluencergetInfluencer ()
 Returns the velocity/lane influencer. More...
 
MSAbstractLaneChangeModelgetLaneChangeModel ()
 
const MSAbstractLaneChangeModelgetLaneChangeModel () const
 
unsigned int getLaneIndex () const
 
SUMOReal getLastLaneChangeOffset () const
 Returns the time since the last lane change in seconds. More...
 
std::pair< const MSVehicle *const, SUMORealgetLeader (SUMOReal dist=0) const
 Returns the leader of the vehicle looking for a fixed distance. More...
 
SUMOReal getMaxSpeed () const
 Returns the maximum speed. More...
 
StopgetNextStop ()
 
unsigned int getNumberReroutes () const
 Returns the number of new routes this vehicle got. More...
 
const SUMOVehicleParametergetParameter () const
 Returns the vehicle's parameter (including departure definition) More...
 
const MSRoutegetRoute () const
 Returns the current route. More...
 
SUMOReal getSafeFollowSpeed (const std::pair< const MSVehicle *, SUMOReal > leaderInfo, const SUMOReal seen, const MSLane *const lane, SUMOReal distToCrossing) const
 compute safe speed for following the given leader More...
 
SUMOReal getSpeedWithoutTraciInfluence () const
 Returns the uninfluenced velocity. More...
 
SUMOReal getTimeGap () const
 Returns the time gap in seconds to the leader of the vehicle looking for a fixed distance. More...
 
SUMOVehicleClass getVClass () const
 Returns the vehicle's access class. More...
 
const MSVehicleTypegetVehicleType () const
 Returns the vehicle's type definition. More...
 
 GUIVehicle (SUMOVehicleParameter *pars, const MSRoute *route, const MSVehicleType *type, const SUMOReal speedFactor)
 Constructor. More...
 
bool hasDeparted () const
 Returns whether this vehicle has already departed. More...
 
bool hasInfluencer () const
 
bool hasValidRoute (std::string &msg) const
 Validates the current route. More...
 
int influenceChangeDecision (int state)
 allow TraCI to influence a lane change decision More...
 
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. More...
 
void onDepart ()
 Called when the vehicle is inserted into the network. More...
 
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. More...
 
SUMOReal processNextStop (SUMOReal currentVelocity)
 Processes stops, returns the velocity needed to reach the stop. More...
 
void removeReminder (MSMoveReminder *rem)
 Removes a MoveReminder dynamically. More...
 
bool replaceRouteEdges (ConstMSEdgeVector &edges, bool onInit=false)
 Replaces the current route by the given edges. More...
 
void replaceVehicleType (MSVehicleType *type)
 Replaces the current vehicle type by the one given. More...
 
void reroute (SUMOTime t, SUMOAbstractRouter< MSEdge, SUMOVehicle > &router, const bool onInit=false, const bool withTaz=false)
 Performs a rerouting using the given router. More...
 
bool resumeFromStopping ()
 
void selectBlockingFoes () const
 adds the blocking foes to the current selection More...
 
void setChosenSpeedFactor (const SUMOReal factor)
 Returns the precomputed factor by which the driver wants to be faster than the speed limit. More...
 
void setTentativeLaneAndPosition (MSLane *lane, const SUMOReal pos)
 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 sucessfully inserted the lane is set again (see enterLaneAtInsertion) More...
 
const MSEdgesuccEdge (unsigned int nSuccs) const
 Returns the nSuccs'th successor of edge the vehicle is currently at. More...
 
 ~GUIVehicle ()
 destructor More...
 
inherited from GUIGlObject
GUIGLObjectPopupMenugetPopUpMenu (GUIMainWindow &app, GUISUMOAbstractView &parent)
 Returns an own popup-menu. More...
 
GUIParameterTableWindowgetParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent)
 Returns an own parameter window. More...
 
Boundary getCenteringBoundary () const
 Returns the boundary to which the view shall be centered in order to show the object. More...
 
void drawGL (const GUIVisualizationSettings &s) const
 Draws the object. More...
 
virtual void drawGLAdditional (GUISUMOAbstractView *const parent, const GUIVisualizationSettings &s) const
 Draws additionally triggered visualisations. More...
 
insertion/removal
void onRemovalFromNet (const MSMoveReminder::Notification reason)
 Called when the vehicle is removed from the network. More...
 
interaction with the route
bool hasArrived () const
 Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge) More...
 
bool replaceRoute (const MSRoute *route, bool onInit=false, int offset=0)
 Replaces the current route by the given one. More...
 
bool willPass (const MSEdge *const edge) const
 Returns whether the vehicle wil pass the given edge. More...
 
unsigned int getRoutePosition () const
 
void resetRoutePosition (unsigned int index)
 
const MSEdgeWeightsStoragegetWeightsStorage () const
 Returns the vehicle's internal edge travel times/efforts container. More...
 
MSEdgeWeightsStoragegetWeightsStorage ()
 
state setter/getter
SUMOReal getPositionOnLane () const
 Get the vehicle's position along the lane. More...
 
SUMOReal getSpeed () const
 Returns the vehicle's current speed. More...
 
SUMOReal getAcceleration () const
 Returns the vehicle's acceleration in m/s. More...
 
Other getter methods
SUMOReal getSlope () const
 Returns the slope of the road at vehicle's position. More...
 
Position getPosition (const SUMOReal offset=0) const
 Return current position (x/y, cartesian) More...
 
MSLanegetLane () const
 Returns the lane the vehicle is on. More...
 
bool isOnRoad () const
 Returns the information whether the vehicle is on a road (is simulated) More...
 
const MSEdgegetRerouteOrigin () const
 Returns the starting point for reroutes (usually the current edge) More...
 
SUMOTime getWaitingTime () const
 Returns the SUMOTime waited (speed was lesser than 0.1m/s) More...
 
SUMOReal getWaitingSeconds () const
 Returns the number of seconds waited (speed was lesser than 0.1m/s) More...
 
SUMOReal getAngle () const
 Returns the vehicle's direction in degrees. More...
 
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. More...
 
void updateBestLanes (bool forceRebuild=false, const MSLane *startLane=0)
 computes the best lanes to use in order to continue the route More...
 
const std::vector< MSLane * > & getBestLanesContinuation () const
 Returns the subpart of best lanes that describes the vehicle's current lane and their successors. More...
 
const std::vector< MSLane * > & getBestLanesContinuation (const MSLane *const l) const
 Returns the subpart of best lanes that describes the given lane and their successors. More...
 
int getBestLaneOffset () const
 returns the current offset from the best lane More...
 
void adaptBestLanesOccupation (int laneIndex, SUMOReal density)
 update occupation from MSLaneChanger More...
 
vehicle stops definitions and i/o
bool addStop (const SUMOVehicleParameter::Stop &stopPar, std::string &errorMsg, SUMOTime untilOffset=0)
 Adds a stop. More...
 
bool hasStops () const
 Returns whether the vehicle has to stop somewhere. More...
 
bool isStopped () const
 Returns whether the vehicle is at a stop. More...
 
bool isParking () const
 Returns whether the vehicle is parking. More...
 
bool isStoppedTriggered () const
 Returns whether the vehicle is on a triggered stop. More...
 
bool isStoppedInRange (SUMOReal pos) const
 return whether the given position is within range of the current stop More...
 
Emission retrieval
SUMOReal getCO2Emissions () const
 Returns CO2 emission of the current state. More...
 
SUMOReal getCOEmissions () const
 Returns CO emission of the current state. More...
 
SUMOReal getHCEmissions () const
 Returns HC emission of the current state. More...
 
SUMOReal getNOxEmissions () const
 Returns NOx emission of the current state. More...
 
SUMOReal getPMxEmissions () const
 Returns PMx emission of the current state. More...
 
SUMOReal getFuelConsumption () const
 Returns fuel consumption of the current state. More...
 
SUMOReal getHarmonoise_NoiseEmissions () const
 Returns noise emissions of the current state. More...
 
Interaction with persons
void addPerson (MSPerson *person)
 Adds a passenger. More...
 
Interaction with containers
void addContainer (MSContainer *container)
 Adds a container. More...
 
unsigned int getPersonNumber () const
 Returns the number of persons. More...
 
unsigned int getContainerNumber () const
 Returns the number of containers. More...
 
state io
void saveState (OutputDevice &out)
 Saves the states of a vehicle. More...
 
void loadState (const SUMOSAXAttributes &attrs, const SUMOTime offset)
 Loads the state of this vehicle from the given description. More...
 
Atomar getter methods
const std::string & getFullName () const
 Returns the full name appearing in the tool tip. More...
 
GUIGlID getGlID () const
 Returns the numerical id of the object. More...
 
interfaces to be implemented by derived classes
const std::string & getMicrosimID () const
 Returns the id of the object as known to microsim. More...
 
void setMicrosimID (const std::string &newID)
 Changes the microsimID of the object (happens in NETEDIT) More...
 
GUIGlObjectType getType () const
 Returns the type of the object as coded in GUIGlObjectType. More...
 
Parameter table window I/O
void addParameterTable (GUIParameterTableWindow *w)
 Lets this object know a parameter window showing the object's values was opened. More...
 
void removeParameterTable (GUIParameterTableWindow *w)
 Lets this object know a parameter window showing the object's values was closed. More...
 

Static Public Member Functions

static SUMOReal gap (SUMOReal predPos, SUMOReal predLength, SUMOReal pos)
 Uses the given values to compute the brutto-gap. More...
 
static bool overlap (const MSVehicle *veh1, const MSVehicle *veh2)
 
static bool setFunctionalColor (size_t activeScheme, const MSBaseVehicle *veh)
 sets the color according to the current scheme index and some vehicle function More...
 

Static Public Attributes

static StringBijection< GUIGlObjectTypeTypeNames
 associates object types with strings More...
 

Protected Types

typedef std::vector< DriveProcessItemDriveItemVector
 

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 More...
 
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 More...
 
SUMOReal estimateSpeedAfterDistance (const SUMOReal dist, const SUMOReal v, const SUMOReal accel) const
 
SUMOReal getSpaceTillLastStanding (const MSLane *l, bool &foundStopped) const
 
const ConstMSEdgeVector getStopEdges () const
 Returns the list of still pending stop edges. More...
 
void planMoveInternal (const SUMOTime t, const MSVehicle *pred, DriveItemVector &lfLinks) const
 
void setBlinkerInformation ()
 
void setPrefix (const std::string &prefix)
 
void updateOccupancyAndCurrentBestLane (const MSLane *startLane)
 updates LaneQ::nextOccupation and myCurrentLaneInBestLanes More...
 
helper methods for building popup-menus
void buildPopupHeader (GUIGLObjectPopupMenu *ret, GUIMainWindow &app, bool addSeparator=true)
 Builds the header. More...
 
void buildCenterPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to center to the object. More...
 
void buildNameCopyPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds entries which allow to copy the name / typed name into the clipboard. More...
 
void buildSelectionPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to (de)select the object. More...
 
void buildShowParamsPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the parameter window. More...
 
void buildPositionCopyEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to copy the cursor position if geo projection is used, also builds an entry for copying the geo-position. More...
 
void buildShowManipulatorPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the manipulator window. More...
 

Protected Attributes

SUMOReal myAcceleration
 The current acceleration after dawdling in m/s. More...
 
bool myAmOnNet
 Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived) More...
 
bool myAmRegisteredAsWaitingForContainer
 Whether this vehicle is registered as waiting for a container (for deadlock-recognition) More...
 
bool myAmRegisteredAsWaitingForPerson
 Whether this vehicle is registered as waiting for a person (for deadlock-recognition) More...
 
SUMOReal myArrivalPos
 the position on the destination lane where the vehicle stops More...
 
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. More...
 
MSDevice_ContainermyContainerDevice
 The containers this vehicle may have. More...
 
MSRouteIterator myCurrEdge
 Iterator to current route-edge. More...
 
std::vector< LaneQ >::iterator myCurrentLaneInBestLanes
 
SUMOTime myDeparture
 The real departure time. More...
 
std::vector< MSDevice * > myDevices
 The devices this vehicle has. More...
 
std::vector< MSLane * > myFurtherLanes
 The information into which lanes the vehicle laps into. More...
 
bool myHaveToWaitOnNextLink
 
MSLanemyLane
 The lane the vehicle is on. More...
 
MSAbstractLaneChangeModelmyLaneChangeModel
 
const MSEdgemyLastBestLanesEdge
 
const MSLanemyLastBestLanesInternalLane
 
DriveItemVector myLFLinkLanes
 Container for used Links/visited Lanes during lookForward. More...
 
unsigned int myNumberReroutes
 The number of reroutings. More...
 
const SUMOVehicleParametermyParameter
 This Vehicle's parameter. More...
 
MSDevice_PersonmyPersonDevice
 The passengers this vehicle may have. More...
 
const MSRoutemyRoute
 This Vehicle's route. More...
 
int mySignals
 State of things of the vehicle that can be on or off. More...
 
State myState
 This Vehicles driving state (pos and speed) More...
 
std::list< StopmyStops
 The vehicle's list of stops. More...
 
const MSVehicleTypemyType
 This Vehicle's type. More...
 
SUMOTime myWaitingTime
 The time the vehicle waits (is not faster than 0.1m/s) in seconds. More...
 

Static Protected Attributes

static std::vector< MSLane * > myEmptyLaneVector
 

Private Member Functions

void computeSeats (const Position &front, const Position &back, int &requiredSeats) const
 add seats to mySeatPositions and update requiredSeats More...
 
bool drawAction_drawCarriageClass (const GUIVisualizationSettings &s, SUMOVehicleShape guiShape, bool asImage) const
 draws the given guiShape if it has distinc carriages/modules and eturns true if so More...
 
int getNumPassengers () const
 return the number of passengers More...
 
MSLanegetPreviousLane (MSLane *current, int &furtherIndex) const
 
const PositiongetSeatPosition (size_t personIndex) const
 returns the seat position for the person with the given index More...
 
std::string getStopInfo () const
 retrieve information about the current stop state More...
 
void setColor (const GUIVisualizationSettings &s) const
 sets the color according to the currente settings More...
 

Static Private Member Functions

static void drawLinkItem (const Position &pos, SUMOTime arrivalTime, SUMOTime leaveTime, SUMOReal exagerate)
 

Private Attributes

SUMOReal myCarriageLength
 Variable to set with the length of the last drawn carriage or the vehicle length. More...
 
MFXMutex myLock
 The mutex used to avoid concurrent updates of the vehicle buffer. More...
 
MSDevice_VehroutesmyRoutes
 
PositionVector mySeatPositions
 positions of seats in the vehicle (updated at every drawing step) More...
 

Additional visualisations

enum  VisualisationFeatures {
  VO_SHOW_BEST_LANES = 1, VO_SHOW_ROUTE = 2, VO_SHOW_ALL_ROUTES = 4, VO_TRACKED = 8,
  VO_SHOW_LFLINKITEMS = 16
}
 Additional visualisation feature ids. More...
 
std::map< GUISUMOAbstractView *, int > myAdditionalVisualizations
 Enabled visualisations, per view. More...
 
bool hasActiveAddVisualisation (GUISUMOAbstractView *const parent, int which) const
 Returns whether the named feature is enabled in the given view. More...
 
void addActiveAddVisualisation (GUISUMOAbstractView *const parent, int which)
 Adds the named visualisation feature to the given view. More...
 
void removeActiveAddVisualisation (GUISUMOAbstractView *const parent, int which)
 Adds the named visualisation feature to the given view. More...
 
void drawRouteHelper (const MSRoute &r, SUMOReal exaggeration) const
 Draws the route. More...
 
void drawRoute (const GUIVisualizationSettings &s, int routeNo, SUMOReal darken) const
 Chooses the route to draw and draws it, darkening it as given. More...
 
void drawBestLanes () const
 Draws the vehicle's best lanes. More...
 

drawing helper methods

void drawAction_drawVehicleAsBoxPlus () const
 
void drawAction_drawVehicleAsTrianglePlus () const
 
void drawAction_drawVehicleAsPoly (const GUIVisualizationSettings &s) const
 
bool drawAction_drawVehicleAsImage (const GUIVisualizationSettings &s, SUMOReal length=-1) const
 
void drawAction_drawRailCarriages (const GUIVisualizationSettings &s, SUMOReal defaultLength, SUMOReal carriageGap, int firstPassengerCarriage, bool asImage) const
 
static void drawPoly (double *poses, SUMOReal offset)
 

Move reminder structures

typedef std::vector< std::pair< MSMoveReminder *, SUMOReal > > MoveReminderCont
 Definition of a move reminder container. More...
 
MoveReminderCont myMoveReminders
 Current lane's move reminder. More...
 

Interaction with move reminders

void workOnMoveReminders (SUMOReal oldPos, SUMOReal newPos, SUMOReal newSpeed)
 Processes active move reminder. More...
 
void adaptLaneEntering2MoveReminder (const MSLane &enteredLane)
 Adapts the vehicle's entering of a new lane. More...
 

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. More...
 
void switchOffSignal (int signal)
 Switches the given signal off. More...
 
int getSignals () const
 Returns the signals. More...
 
bool signalSet (int which) const
 Returns whether the given signal is on. More...
 

Detailed Description

A MSVehicle extended by some values for usage within the gui.

A visualisable MSVehicle. Extended by the possibility to retrieve names of all available vehicles (static) and the possibility to retrieve the color of the vehicle which is available in different forms allowing an easier recognition of done actions such as lane changing.

Definition at line 68 of file GUIVehicle.h.

Member Typedef Documentation

typedef std::vector< DriveProcessItem > MSVehicle::DriveItemVector
protectedinherited

Definition at line 1249 of file MSVehicle.h.

typedef std::vector< std::pair<MSMoveReminder*, SUMOReal> > MSBaseVehicle::MoveReminderCont
protectedinherited

Definition of a move reminder container.

Definition at line 353 of file MSBaseVehicle.h.

Member Enumeration Documentation

enum MSVehicle::ChangeRequest
inherited

Requests set via TraCI.

Enumerator
REQUEST_NONE 

vehicle doesn't want to change

REQUEST_LEFT 

vehicle want's to change to left lane

REQUEST_RIGHT 

vehicle want's to change to right lane

REQUEST_HOLD 

vehicle want's to keep the current lane

Definition at line 128 of file MSVehicle.h.

enum MSVehicle::LaneChangeMode
inherited

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 794 of file MSVehicle.h.

enum MSVehicle::Signalling
inherited

Some boolean values which describe the state of some vehicle parts.

Enumerator
VEH_SIGNAL_NONE 

Everything is switched off.

VEH_SIGNAL_BLINKER_RIGHT 

Right blinker lights are switched on.

VEH_SIGNAL_BLINKER_LEFT 

Left blinker lights are switched on.

VEH_SIGNAL_BLINKER_EMERGENCY 

Blinker lights on both sides are switched on.

VEH_SIGNAL_BRAKELIGHT 

The brake lights are on.

VEH_SIGNAL_FRONTLIGHT 

The front lights are on (no visualisation)

VEH_SIGNAL_FOGLIGHT 

The fog lights are on (no visualisation)

VEH_SIGNAL_HIGHBEAM 

The high beam lights are on (no visualisation)

VEH_SIGNAL_BACKDRIVE 

The backwards driving lights are on (no visualisation)

VEH_SIGNAL_WIPER 

The wipers are on.

VEH_SIGNAL_DOOR_OPEN_LEFT 

One of the left doors is opened.

VEH_SIGNAL_DOOR_OPEN_RIGHT 

One of the right doors is opened.

VEH_SIGNAL_EMERGENCY_BLUE 

A blue emergency light is on.

VEH_SIGNAL_EMERGENCY_RED 

A red emergency light is on.

VEH_SIGNAL_EMERGENCY_YELLOW 

A yellow emergency light is on.

Definition at line 756 of file MSVehicle.h.

modes for prioritizing traci lane change requests

Enumerator
LCP_ALWAYS 
LCP_NOOVERLAP 
LCP_URGENT 
LCP_OPPORTUNISTIC 

Definition at line 802 of file MSVehicle.h.

Additional visualisation feature ids.

Enumerator
VO_SHOW_BEST_LANES 

show vehicle's best lanes

VO_SHOW_ROUTE 

show vehicle's current route

VO_SHOW_ALL_ROUTES 

show all vehicle's routes

VO_TRACKED 

track vehicle

VO_SHOW_LFLINKITEMS 

LFLinkItems.

Definition at line 231 of file GUIVehicle.h.

Constructor & Destructor Documentation

GUIVehicle::GUIVehicle ( SUMOVehicleParameter pars,
const MSRoute route,
const MSVehicleType type,
const SUMOReal  speedFactor 
)

Constructor.

Parameters
[in]parsThe vehicle description
[in]routeThe vehicle's route
[in]typeThe vehicle's type
[in]speedFactorThe factor for driven lane's speed limits
Exceptions
ProcessErrorIf a value is wrong

Definition at line 253 of file GUIVehicle.cpp.

References MSDevice_Vehroutes::buildVehicleDevices(), MSBaseVehicle::myDevices, MSBaseVehicle::myMoveReminders, myRoutes, mySeatPositions, and PositionVector::push_back().

GUIVehicle::~GUIVehicle ( )

Member Function Documentation

void MSVehicle::activateReminders ( const MSMoveReminder::Notification  reason)
virtualinherited

"Activates" all current move reminder

For all move reminder stored in "myMoveReminders", their method "MSMoveReminder::notifyEnter" is called.

Parameters
[in]reasonThe reason for changing the reminders' states
See also
MSMoveReminder
MSMoveReminder::notifyEnter
MSMoveReminder::Notification

Reimplemented from MSBaseVehicle.

Definition at line 1696 of file MSVehicle.cpp.

References MSVehicle::getLane(), and MSBaseVehicle::myMoveReminders.

Referenced by MSVehicle::enterLaneAtInsertion(), MSVehicle::enterLaneAtLaneChange(), and MSVehicle::enterLaneAtMove().

void MSVehicle::adaptBestLanesOccupation ( int  laneIndex,
SUMOReal  density 
)
inherited

update occupation from MSLaneChanger

Definition at line 2206 of file MSVehicle.cpp.

References MSVehicle::myBestLanes.

Referenced by MSLaneChanger::change().

void MSVehicle::adaptLaneEntering2MoveReminder ( const MSLane enteredLane)
protectedinherited

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!

Parameters
[in]enteredLane
See also
MSMoveReminder
MSLane::getMoveReminder

Definition at line 572 of file MSVehicle.cpp.

References MSBaseVehicle::addReminder(), MSLane::getLength(), MSLane::getMoveReminders(), MSVehicle::myLane, MSBaseVehicle::myMoveReminders, and SUMOReal.

Referenced by MSVehicle::enterLaneAtMove().

void MSVehicle::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
protectedinherited
void GUIVehicle::addActiveAddVisualisation ( GUISUMOAbstractView *const  parent,
int  which 
)
void MSVehicle::addContainer ( MSContainer container)
virtualinherited
void GUIGlObject::addParameterTable ( GUIParameterTableWindow w)
inherited

Lets this object know a parameter window showing the object's values was opened.

Parameters
[in]wThe opened parameter window

Definition at line 188 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

void MSVehicle::addPerson ( MSPerson person)
virtualinherited
void MSBaseVehicle::addReminder ( MSMoveReminder rem)
inherited

Adds a MoveReminder dynamically.

Parameters
[in]remthe reminder to add
See also
MSMoveReminder

Definition at line 285 of file MSBaseVehicle.cpp.

References MSBaseVehicle::myMoveReminders.

Referenced by MSVehicle::adaptLaneEntering2MoveReminder(), MSVehicle::enterLaneAtInsertion(), and MSVehicle::enterLaneAtLaneChange().

bool MSVehicle::addStop ( const SUMOVehicleParameter::Stop stopPar,
std::string &  errorMsg,
SUMOTime  untilOffset = 0 
)
virtualinherited

Adds a stop.

The stop is put into the sorted list.

Parameters
[in]stopThe stop to add
Returns
Whether the stop could be added

Implements SUMOVehicle.

Definition at line 679 of file MSVehicle.cpp.

References MSLane::allowsVehicleClass(), SUMOVehicleParameter::Stop::awaitedContainers, MSVehicle::Stop::awaitedContainers, SUMOVehicleParameter::Stop::awaitedPersons, MSVehicle::Stop::awaitedPersons, SUMOVehicleParameter::Stop::busstop, MSVehicle::Stop::busstop, SUMOVehicleParameter::Stop::containerstop, MSVehicle::Stop::containerstop, SUMOVehicleParameter::Stop::containerTriggered, MSVehicle::Stop::containerTriggered, 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(), MSVehicle::getCarFollowModel(), MSNet::getContainerStop(), MSLane::getEdge(), Named::getID(), MSNet::getInstance(), MSVehicleType::getLength(), MSLane::getLength(), MSVehicleType::getVehicleClass(), MSBaseVehicle::getVehicleType(), MSBaseVehicle::hasDeparted(), SUMOVehicleParameter::id, SUMOVehicleParameter::Stop::index, SUMOVehicleParameter::Stop::lane, MSVehicle::Stop::lane, MIN2(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, MSVehicle::myState, MSVehicle::myStops, MSBaseVehicle::myType, SUMOVehicleParameter::Stop::parking, MSVehicle::Stop::parking, POSITION_EPS, MSVehicle::Stop::reached, SUMOVehicleParameter::Stop::startPos, MSVehicle::Stop::startPos, STOP_INDEX_END, STOP_INDEX_FIT, SUMOReal, MSVehicle::Stop::timeToBoardNextPerson, MSVehicle::Stop::timeToLoadNextContainer, SUMOVehicleParameter::Stop::triggered, MSVehicle::Stop::triggered, SUMOVehicleParameter::Stop::until, and MSVehicle::Stop::until.

Referenced by MSVehicle::addTraciStop(), and MSVehicle::replaceRoute().

void MSBaseVehicle::addStops ( const bool  ignoreStopErrors)
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

Parameters
[in]ignoreStopErrorswhether invalid stops trigger a warning only

Definition at line 387 of file MSBaseVehicle.cpp.

References SUMOVehicle::addStop(), MSRoute::getStops(), MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, SUMOVehicleParameter::stops, and WRITE_WARNING.

Referenced by GUIVehicleControl::buildVehicle(), and MSVehicleControl::buildVehicle().

bool MSVehicle::addTraciStop ( MSLane lane,
SUMOReal  pos,
SUMOReal  radius,
SUMOTime  duration,
bool  parking,
bool  triggered,
bool  containerTriggered,
std::string &  errorMsg 
)
inherited

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

Parameters
lanelane on wich to stop
posposition on the given lane at wich to stop
radiusthe vehicle will stop if it is within the range [pos-radius, pos+radius]
durationafter waiting for the time period duration, the vehicle will
parkinga flag indicating whether the traci stop is used for parking or not
triggereda flag indicating whether the traci stop is triggered or not
containerTriggereda flag indicating whether the traci stop is triggered by a container or not

Definition at line 2432 of file MSVehicle.cpp.

References MSVehicle::addStop(), SUMOVehicleParameter::Stop::busstop, SUMOVehicleParameter::Stop::containerstop, SUMOVehicleParameter::Stop::containerTriggered, SUMOVehicleParameter::Stop::duration, SUMOVehicleParameter::Stop::endPos, MSNet::getBusStopID(), MSNet::getContainerStopID(), Named::getID(), MSNet::getInstance(), SUMOVehicleParameter::Stop::index, SUMOVehicleParameter::Stop::lane, MSVehicle::myLane, MSVehicle::myStops, SUMOVehicleParameter::Stop::parking, POSITION_EPS, SUMOVehicleParameter::Stop::startPos, STOP_INDEX_FIT, SUMOVehicleParameter::Stop::triggered, SUMOVehicleParameter::Stop::until, and MSVehicle::updateBestLanes().

Referenced by TraCIServerAPI_Vehicle::processSet().

void GUIGlObject::buildShowManipulatorPopupEntry ( GUIGLObjectPopupMenu ret,
bool  addSeparator = true 
)
protectedinherited

Builds an entry which allows to open the manipulator window.

Parameters

Definition at line 179 of file GUIGlObject.cpp.

References GUIIconSubSys::getIcon(), ICON_MANIP, and MID_MANIP.

Referenced by GUILaneSpeedTrigger::getPopUpMenu(), and GUITriggeredRerouter::getPopUpMenu().

void GUIGlObject::buildShowParamsPopupEntry ( GUIGLObjectPopupMenu ret,
bool  addSeparator = true 
)
protectedinherited
void MSVehicle::checkRewindLinkLanes ( const SUMOReal  lengthsInFront,
DriveItemVector lfLinks 
) const
protectedinherited

Definition at line 1533 of file MSVehicle.cpp.

References ACCEL2SPEED, MSVehicle::DriveProcessItem::availableSpace, bla, MSCFModel::brakeGap(), MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getBruttoVehLenSum(), MSVehicle::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(), MSVehicle::getPositionOnLane(), MSEdge::getPurpose(), MSVehicle::Influencer::getRespectJunctionPriority(), MSVehicle::getSpaceTillLastStanding(), MSVehicle::getSpeed(), MSLane::getVehicleNumber(), MSBaseVehicle::getVehicleType(), MSVehicle::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, MSVehicle::myHaveToWaitOnNextLink, MSVehicle::myInfluencer, MSVehicle::myLane, MSVehicle::DriveProcessItem::myLink, MSVehicle::State::mySpeed, MSVehicle::myState, MSLink::opened(), RandHelper::rand(), MSVehicle::signalSet(), SUMOReal, UNUSED_PARAMETER, and MSVehicle::VEH_SIGNAL_BRAKELIGHT.

Referenced by MSVehicle::planMove().

void GUIVehicle::computeSeats ( const Position front,
const Position back,
int &  requiredSeats 
) const
private

add seats to mySeatPositions and update requiredSeats

Definition at line 1546 of file GUIVehicle.cpp.

References Line::getPositionAtDistance2D(), Line::length2D(), mySeatPositions, PositionVector::push_back(), and SUMOReal.

Referenced by drawAction_drawRailCarriages().

bool MSVehicle::congested ( ) const
inlineinherited

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 393 of file MSVehicle.h.

References MSVehicle::State::mySpeed, MSVehicle::myState, and SUMOReal.

Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSAbstractLaneChangeModel::congested(), MSLCM_JE2013::informFollower(), MSLCM_JE2013::informLeader(), and MSLCM_LC2013::informLeader().

bool GUIVehicle::drawAction_drawCarriageClass ( const GUIVisualizationSettings s,
SUMOVehicleShape  guiShape,
bool  asImage 
) const
private

draws the given guiShape if it has distinc carriages/modules and eturns true if so

Definition at line 880 of file GUIVehicle.cpp.

References drawAction_drawRailCarriages(), SVS_BUS_FLEXIBLE, SVS_RAIL, SVS_RAIL_CAR, and SVS_RAIL_CARGO.

Referenced by drawAction_drawVehicleAsPoly(), and drawGL().

void GUIVehicle::drawAction_drawVehicleAsBoxPlus ( ) const
private

Definition at line 409 of file GUIVehicle.cpp.

References MSBaseVehicle::getVehicleType().

Referenced by drawAction_drawVehicleAsTrianglePlus(), and drawGL().

void GUIVehicle::drawAction_drawVehicleAsTrianglePlus ( ) const
private
void GUIVehicle::drawBestLanes ( ) const
void GUIVehicle::drawGL ( const GUIVisualizationSettings s) const
virtual

Draws the object.

Parameters
[in]sThe settings for the current view (may influence drawing)
See also
GUIGlObject::drawGL

Implements GUIGlObject.

Definition at line 957 of file GUIVehicle.cpp.

References GUIVisualizationTextSettings::color, drawAction_drawCarriageClass(), drawAction_drawVehicleAsBoxPlus(), drawAction_drawVehicleAsImage(), drawAction_drawVehicleAsPoly(), drawAction_drawVehicleAsTrianglePlus(), drawAction_drawVehicleBlinker(), drawAction_drawVehicleBrakeLight(), GUIContainer::drawGL(), GUIPerson::drawGL(), GUIVisualizationSettings::drawLaneChangePreference, GUIVisualizationSettings::drawMinGap, GUIGlObject::drawName(), GLHelper::drawOutlineCircle(), GLHelper::drawText(), MSLane::geometryPositionAtOffset(), MSVehicle::getAngle(), MSDevice_Container::getContainers(), MSBaseVehicle::getDevice(), GUIVisualizationSizeSettings::getExaggeration(), GUIGlObject::getGlID(), MSVehicleType::getLength(), MSVehicleType::getMinGap(), MSDevice_Person::getPersons(), MSVehicle::getPosition(), MSDevice_BTreceiver::getRange(), getSeatPosition(), GUIGlObject::getType(), MSBaseVehicle::getVehicleType(), GLO_MAX, SUMOVehicleParameter::line, MIN2(), myCarriageLength, MSVehicle::myContainerDevice, MSVehicle::myLane, MSBaseVehicle::myParameter, MSVehicle::myPersonDevice, mySeatPositions, MSVehicle::myState, GUIVisualizationSettings::personName, MSVehicle::State::pos(), GUIVisualizationSettings::scale, setColor(), GUIContainer::setPositionInVehicle(), GUIPerson::setPositionInVehicle(), GUIVisualizationTextSettings::show, GUIVisualizationSettings::showBlinker, GUIVisualizationSettings::showBTRange, GUIVisualizationTextSettings::size, SUMOReal, SVS_ANT, SVS_BICYCLE, SVS_PEDESTRIAN, SVS_RAIL, SVS_RAIL_CARGO, SVS_SHIP, GUIVisualizationSettings::vehicleName, GUIVisualizationSettings::vehicleQuality, GUIVisualizationSettings::vehicleSize, Position::x(), and Position::y().

Referenced by GUILane::drawGL().

void GUIVehicle::drawLinkItem ( const Position pos,
SUMOTime  arrivalTime,
SUMOTime  leaveTime,
SUMOReal  exagerate 
)
staticprivate
void GUIVehicle::drawPoly ( double *  poses,
SUMOReal  offset 
)
staticprivate

Definition at line 442 of file GUIVehicle.cpp.

Referenced by drawAction_drawVehicleAsPoly().

void GUIVehicle::drawRoute ( const GUIVisualizationSettings s,
int  routeNo,
SUMOReal  darken 
) const

Chooses the route to draw and draws it, darkening it as given.

Parameters
[in]sThe visualisation settings, needed to determine the vehicle's color
[in]routeNoThe route to show (0: the current, >0: prior)
[in]darkenThe amount to darken the route by

Definition at line 1333 of file GUIVehicle.cpp.

References drawRouteHelper(), GUIVisualizationSizeSettings::getExaggeration(), MSDevice_Vehroutes::getRoute(), MSBaseVehicle::myRoute, myRoutes, setColor(), SUMOReal, and GUIVisualizationSettings::vehicleSize.

Referenced by drawGLAdditional().

void GUIVehicle::drawRouteHelper ( const MSRoute r,
SUMOReal  exaggeration 
) const
void MSVehicle::enterLaneAtInsertion ( MSLane enteredLane,
SUMOReal  pos,
SUMOReal  speed,
MSMoveReminder::Notification  notification 
)
inherited

Update when the vehicle enters a new lane in the emit step.

Parameters
[in]enteredLaneThe lane the vehicle enters
[in]posThe position the vehicle was inserted into the lane
[in]speedThe speed with which the vehicle was inserted into the lane
[in]notificationThe cause of insertion (i.e. departure, teleport, parking)

Definition at line 1812 of file MSVehicle.cpp.

References MSVehicle::activateReminders(), MSBaseVehicle::addReminder(), MSGlobals::gCheckRoutes, MSBaseVehicle::getID(), MSVehicleType::getLength(), MSLane::getLogicalPredecessorLane(), MSLane::getMoveReminders(), MSBaseVehicle::hasValidRoute(), Position::INVALID, MSVehicle::myAmOnNet, MSVehicle::myCachedPosition, MSVehicle::myFurtherLanes, MSVehicle::myLane, MSVehicle::State::myPos, MSVehicle::State::mySpeed, MSVehicle::myState, MSBaseVehicle::myType, MSVehicle::myWaitingTime, and SUMOReal.

Referenced by MSLane::incorporateVehicle().

bool MSVehicle::enterLaneAtMove ( MSLane enteredLane,
bool  onTeleporting = false 
)
inherited

Update when the vehicle enters a new lane in the move step.

Parameters
[in]enteredLaneThe lane the vehicle enters
[in]onTeleportingWhether the lane was entered while being teleported
Returns
Whether the vehicle's route has ended (due to vaporization, or because the destination was reached)

Definition at line 1727 of file MSVehicle.cpp.

References MSVehicle::activateReminders(), MSVehicle::adaptLaneEntering2MoveReminder(), MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getEdge(), MSEdge::getPurpose(), MSVehicle::hasArrived(), Position::INVALID, MSVehicle::myAmOnNet, MSVehicle::myCachedPosition, MSBaseVehicle::myCurrEdge, MSVehicle::myLane, MSVehicle::State::myPos, MSVehicle::myState, MSMoveReminder::NOTIFICATION_JUNCTION, and MSMoveReminder::NOTIFICATION_TELEPORT.

Referenced by MSVehicleTransfer::add(), MSVehicleTransfer::checkInsertions(), MSVehicle::executeMove(), and TraCIServerAPI_Vehicle::processSet().

SUMOReal MSVehicle::estimateLeaveSpeed ( const MSLink *const  link,
const SUMOReal  vLinkPass 
) const
inlineprotectedinherited
SUMOReal MSVehicle::estimateSpeedAfterDistance ( const SUMOReal  dist,
const SUMOReal  v,
const SUMOReal  accel 
) const
inlineprotectedinherited
bool MSVehicle::executeMove ( )
inherited

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.

Returns
Whether the vehicle has moved to the next edge

Definition at line 1250 of file MSVehicle.cpp.

References ACCEL2SPEED, bla, MSCFModel::brakeGap(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), DELTA_T, DIST2SPEED, MSRoute::end(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), MSVehicle::enterLaneAtMove(), MSVehicleType::getCarFollowModel(), MSVehicle::getCarFollowModel(), MSLink::getDirection(), MSLane::getEdge(), MSVehicle::Influencer::getEmergencyBrakeRedLight(), MSCFModel::getHeadwayTime(), Named::getID(), MSBaseVehicle::getID(), MSBaseVehicle::getImpatience(), MSNet::getInstance(), MSLink::getJunction(), MSVehicle::getLaneChangeModel(), MSVehicleType::getLength(), MSLane::getLength(), MSCFModel::getMaxDecel(), MSVehicle::getPositionOnLane(), MSVehicle::Influencer::getRespectJunctionPriority(), MSVehicle::getSpeed(), MSLink::getState(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSLink::getViaLaneOrLane(), MSVehicle::getWaitingTime(), GLO_VEHICLE, gSelected, MSVehicle::hasArrived(), MSLink::havePriority(), MSVehicle::Influencer::influenceSpeed(), Position::INVALID, MSLink::isCont(), MSEdge::isRoundabout(), GUISelectedStorage::isSelected(), MSEdge::isVaporizing(), MSVehicle::Influencer::isVTDControlled(), MSLink::lastWasContMajor(), MSVehicle::leaveLane(), LINKDIR_LEFT, LINKDIR_RIGHT, LINKSTATE_EQUAL, LINKSTATE_TL_RED, LINKSTATE_TL_YELLOW_MAJOR, LINKSTATE_TL_YELLOW_MINOR, MAX2(), MSCFModel::maxNextSpeed(), MIN2(), MSVehicle::myAcceleration, MSVehicle::myCachedPosition, MSBaseVehicle::myCurrEdge, MSVehicle::myFurtherLanes, MSVehicle::myHaveToWaitOnNextLink, MSVehicle::myInfluencer, MSVehicle::myLane, MSVehicle::myLFLinkLanes, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, MSVehicle::myState, MSVehicle::myWaitingTime, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_VAPORIZED, NUMERICAL_EPS, MSLink::opened(), POSITION_EPS, MSAbstractLaneChangeModel::prepareStep(), MSVehicleControl::registerEmergencyStop(), MSLink::removeApproaching(), MSVehicle::setBlinkerInformation(), SPEED2ACCEL, SPEED2DIST, SUMO_const_haltingSpeed, SUMOReal, MSVehicle::switchOffSignal(), MSVehicle::switchOnSignal(), time2string(), toString(), MSVehicle::updateBestLanes(), MSVehicle::VEH_SIGNAL_BRAKELIGHT, MSVehicle::workOnMoveReminders(), and WRITE_WARNING.

Referenced by MSLane::executeMovements().

bool MSVehicle::fixPosition ( )
inherited
static SUMOReal MSVehicle::gap ( SUMOReal  predPos,
SUMOReal  predLength,
SUMOReal  pos 
)
inlinestaticinherited

Uses the given values to compute the brutto-gap.

Parameters
[in]predPosPosition of the leader
[in]predLengthLength of the leader
[in]posPosition of the follower
Returns
The gap between the leader and the follower

Definition at line 215 of file MSVehicle.h.

Referenced by MSLane::isInsertionSuccess(), and MSVehicle::planMoveInternal().

SUMOReal MSVehicle::getAcceleration ( ) const
inlinevirtualinherited

Returns the vehicle's acceleration in m/s.

Returns
The acceleration

Reimplemented from MSBaseVehicle.

Definition at line 302 of file MSVehicle.h.

References MSVehicle::myAcceleration.

Referenced by getColorValue().

virtual SUMOReal MSBaseVehicle::getArrivalPos ( ) const
inlinevirtualinherited

Returns this vehicle's desired arrivalPos for its current route (may change on reroute)

Returns
This vehicle's real arrivalPos

Implements SUMOVehicle.

Definition at line 207 of file MSBaseVehicle.h.

References MSBaseVehicle::myArrivalPos.

int MSVehicle::getBestLaneOffset ( ) const
inherited

returns the current offset from the best lane

Definition at line 2196 of file MSVehicle.cpp.

References MSVehicle::myBestLanes.

Referenced by MSLCM_JE2013::changed(), MSLCM_LC2013::changed(), and getColorValue().

const std::vector< MSVehicle::LaneQ > & MSVehicle::getBestLanes ( ) const
inherited

Returns the description of best lanes to use in order to continue the route.

Returns
The best lanes structure holding matching the current vehicle position and state ahead

Definition at line 1896 of file MSVehicle.cpp.

References MSVehicle::myBestLanes.

Referenced by MSLane::appropriate(), MSLaneChanger::change(), MSEdge::getDepartLane(), TraCIServerAPI_Vehicle::processGet(), and TraCIServerAPI_Vehicle::processSet().

const std::vector< MSLane * > & MSVehicle::getBestLanesContinuation ( ) const
inherited

Returns the subpart of best lanes that describes the vehicle's current lane and their successors.

Returns
The best lane information for the vehicle's current lane
Todo:
Describe better

Definition at line 2168 of file MSVehicle.cpp.

References MSVehicle::myBestLanes, and MSVehicle::myEmptyLaneVector.

Referenced by MSLane::appropriate(), drawRouteHelper(), MSLane::executeMovements(), MSLane::getCriticalLeader(), MSVehicle::getLeader(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), MSLane::isInsertionSuccess(), MSVehicle::planMoveInternal(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), and MSVehicle::setBlinkerInformation().

const std::vector< MSLane * > & MSVehicle::getBestLanesContinuation ( const MSLane *const  l) const
inherited

Returns the subpart of best lanes that describes the given lane and their successors.

Returns
The best lane information for the given lane
Todo:
Describe better

Definition at line 2177 of file MSVehicle.cpp.

References MSEdge::EDGEFUNCTION_INTERNAL, MSLane::getEdge(), MSLane::getLinkCont(), MSEdge::getPurpose(), MSVehicle::myBestLanes, and MSVehicle::myEmptyLaneVector.

const MSCFModel& MSVehicle::getCarFollowModel ( ) const
inlineinherited
Boundary GUIVehicle::getCenteringBoundary ( ) const
virtual

Returns the boundary to which the view shall be centered in order to show the object.

Returns
The boundary the object is within
See also
GUIGlObject::getCenteringBoundary

Implements GUIGlObject.

Definition at line 400 of file GUIVehicle.cpp.

References Boundary::add(), MSVehicle::getPosition(), and Boundary::grow().

SUMOReal MSBaseVehicle::getChosenSpeedFactor ( ) const
inlinevirtualinherited

Returns the precomputed factor by which the driver wants to be faster than the speed limit.

Returns
Speed limit factor

Implements SUMOVehicle.

Definition at line 290 of file MSBaseVehicle.h.

References MSBaseVehicle::myChosenSpeedFactor.

Referenced by getParameterWindow(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal MSVehicle::getCO2Emissions ( ) const
inherited
SUMOReal MSVehicle::getCOEmissions ( ) const
inherited
unsigned int MSVehicle::getContainerNumber ( ) const
inherited

Returns the number of containers.

Returns
The number of contaiers on-board

Definition at line 2370 of file MSVehicle.cpp.

References SUMOVehicleParameter::containerNumber, MSVehicle::myContainerDevice, MSBaseVehicle::myParameter, and MSDevice_Container::size().

Referenced by MSContainerControl::loadAnyWaiting().

const MSRouteIterator& MSBaseVehicle::getCurrentRouteEdge ( ) const
inlinevirtualinherited

Returns an iterator pointing to the current edge in this vehicles route.

Returns
The current route pointer

Implements SUMOVehicle.

Definition at line 145 of file MSBaseVehicle.h.

References MSBaseVehicle::myCurrEdge.

SUMOTime MSBaseVehicle::getDeparture ( ) const
inlinevirtualinherited

Returns this vehicle's real departure time.

Returns
This vehicle's real departure time

Implements SUMOVehicle.

Definition at line 199 of file MSBaseVehicle.h.

References MSBaseVehicle::myDeparture.

MSDevice * MSBaseVehicle::getDevice ( const std::type_info &  type) const
virtualinherited

Returns a device of the given type if it exists or 0.

Implements SUMOVehicle.

Definition at line 365 of file MSBaseVehicle.cpp.

References MSBaseVehicle::myDevices.

Referenced by drawGL().

const std::vector<MSDevice*>& MSBaseVehicle::getDevices ( ) const
inlinevirtualinherited

Returns this vehicle's devices.

Returns
This vehicle's devices

Implements SUMOVehicle.

Definition at line 234 of file MSBaseVehicle.h.

References MSBaseVehicle::myDevices.

SUMOReal MSVehicle::getDistanceToPosition ( SUMOReal  destPos,
const MSEdge destEdge 
)
inherited

Compute distance that will be covered, if the vehicle moves to a given position on its route, starting at its current position.

Parameters
destPosposition on the destination edge that shall be reached
destEdgedestination edge that shall be reached
Returns
distance from the vehicles current position to the destination position, or a near infinite real value if the destination position is not contained within the vehicles route or the vehicle is not active

Definition at line 2225 of file MSVehicle.cpp.

References MSRoute::getDistanceBetween(), MSLane::getEdge(), MSLane::getLength(), MSVehicle::getPositionOnLane(), MSVehicle::isOnRoad(), max, MSBaseVehicle::myCurrEdge, MSVehicle::myLane, MSBaseVehicle::myRoute, and SUMOReal.

const MSEdge * MSBaseVehicle::getEdge ( ) const
virtualinherited
SUMOReal MSVehicle::getFuelConsumption ( ) const
inherited
GUIGlID GUIGlObject::getGlID ( ) const
inlineinherited

Returns the numerical id of the object.

Returns
This object's gl-id

Definition at line 115 of file GUIGlObject.h.

References GUIGlObject::myGlID.

Referenced by GUIGlObject::buildSelectionPopupEntry(), GUINet::createTLWrapper(), GUIContainer::drawGL(), GUIPerson::drawGL(), GUIPolygon::drawGL(), GUILaneSpeedTrigger::drawGL(), GUICalibrator::drawGL(), GUIPointOfInterest::drawGL(), GUIJunctionWrapper::drawGL(), drawGL(), GUIContainerStop::drawGL(), GUIBusStop::drawGL(), GUIEdge::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GUILane::drawGL(), GUIContainer::drawGLAdditional(), GUIPerson::drawGLAdditional(), drawGLAdditional(), GUILane::drawLinkRule(), GUIJunctionWrapper::getColorValue(), GUIContainer::getColorValue(), GUIPerson::getColorValue(), GUILane::getColorValue(), getColorValue(), GUIEdge::getIDs(), GUISUMOAbstractView::getObjectAtPosition(), GUISUMOAbstractView::getObjectsAtPosition(), getPopUpMenu(), GUILane::getScaleValue(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), GUIGlChildWindow::isSelected(), GUISUMOViewParent::isSelected(), GUISelectedStorage::loadIDs(), GUIGLObjectPopupMenu::onCmdAddSelected(), GUIGLObjectPopupMenu::onCmdCenter(), GUIApplicationWindow::onCmdEditChosen(), GUIGLObjectPopupMenu::onCmdRemoveSelected(), GUIVehicle::GUIVehiclePopupMenu::onCmdStartTrack(), GUISUMOAbstractView::removeAdditionalGLVisualisation(), GLObjectValuePassConnector< std::pair< SUMOTime, MSPhaseDefinition > >::removeObject(), selectBlockingFoes(), and GUIGlObject::~GUIGlObject().

SUMOReal MSVehicle::getHarmonoise_NoiseEmissions ( ) const
inherited
SUMOReal MSVehicle::getHCEmissions ( ) const
inherited
MSVehicle::Influencer & MSVehicle::getInfluencer ( )
inherited

Returns the velocity/lane influencer.

If no influencer was existing before, one is built, first

Returns
Reference to this vehicle's speed influencer

Definition at line 2510 of file MSVehicle.cpp.

References MSVehicle::myInfluencer.

Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSLaneChanger::change(), MSLane::executeMovements(), MSVehicle::influenceChangeDecision(), TraCIServerAPI_Vehicle::processSet(), and TraCIServer::setVTDControlled().

MSLane* MSVehicle::getLane ( ) const
inlineinherited

Returns the lane the vehicle is on.

Returns
The vehicle's current lane

Definition at line 331 of file MSVehicle.h.

References MSVehicle::myLane.

Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSVehicle::activateReminders(), MSVehicleTransfer::add(), MSLaneChanger::change(), MSVehicleTransfer::checkInsertions(), MSAbstractLaneChangeModel::congested(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSCFModel_IDM::desiredSpeed(), MSE2Collector::detectorUpdate(), MSVTypeProbe::execute(), MSLane::executeMovements(), getColorValue(), MSVTKExport::getSpeed(), MSLane::handleCollision(), MSCFModel::interactionGap(), MSCFModel_KraussAccelBound::maxNextSpeed(), MSCFModel_Daniel1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), MSCFModel::moveHelper(), MSDevice_BTsender::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSLCM_DK2008::patchSpeed(), MSLCM_JE2013::patchSpeed(), MSVehicle::planMoveInternal(), MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), MSCalibrator::removePending(), MSVehicle::setBlinkerInformation(), TraCIServerAPI_Vehicle::vtdMap(), MSLCM_JE2013::wantsChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSFCDExport::write(), MSEmissionExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().

const MSAbstractLaneChangeModel & MSVehicle::getLaneChangeModel ( ) const
inherited

Definition at line 1890 of file MSVehicle.cpp.

References MSVehicle::myLaneChangeModel.

unsigned int MSVehicle::getLaneIndex ( ) const
inherited
SUMOReal GUIVehicle::getLastLaneChangeOffset ( ) const

Returns the time since the last lane change in seconds.

See also
MSVehicle::myLastLaneChangeOffset
Returns
The time since the last lane change in seconds

Definition at line 1566 of file GUIVehicle.cpp.

References MSVehicle::getLaneChangeModel(), and STEPS2TIME.

Referenced by getColorValue(), and getParameterWindow().

std::pair< const MSVehicle *const, SUMOReal > MSVehicle::getLeader ( SUMOReal  dist = 0) const
inherited

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.

Parameters
distup to which distance to look for a leader
Returns
The leading vehicle together with the gap; (0, -1) if no leader was found.

Definition at line 2246 of file MSVehicle.cpp.

References MSCFModel::brakeGap(), MSVehicle::getBestLanesContinuation(), MSVehicle::getCarFollowModel(), MSLane::getLeaderOnConsecutive(), MSVehicleType::getLength(), MSLane::getLength(), MSVehicleType::getMinGap(), MSVehicle::getPositionOnLane(), MSVehicle::getSpeed(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), MSVehicle::myLane, MSLane::releaseVehicles(), and SUMOReal.

Referenced by MSVehicle::getTimeGap(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal MSBaseVehicle::getMaxSpeed ( ) const
virtualinherited
const std::string& GUIGlObject::getMicrosimID ( ) const
inlineinherited

Returns the id of the object as known to microsim.

Returns
The id of the object

Definition at line 146 of file GUIGlObject.h.

References GUIGlObject::myMicrosimID.

Referenced by GUIGlObject::createFullName(), GUIGlObject::drawName(), GUIDialog_GLObjChooser::GUIDialog_GLObjChooser(), and GUIGLObjectPopupMenu::onCmdCopyName().

MSVehicle::Stop & MSVehicle::getNextStop ( )
inherited

returns the next imminent stop in the stop queue

Returns
the upcoming stop

Definition at line 2504 of file MSVehicle.cpp.

References MSVehicle::myStops.

SUMOReal MSVehicle::getNOxEmissions ( ) const
inherited
unsigned int MSBaseVehicle::getNumberReroutes ( ) const
inlinevirtualinherited

Returns the number of new routes this vehicle got.

Returns
the number of new routes this vehicle got

Implements SUMOVehicle.

Definition at line 223 of file MSBaseVehicle.h.

References MSBaseVehicle::myNumberReroutes.

Referenced by drawGLAdditional(), getColorValue(), and MSBaseVehicle::replaceRouteEdges().

int GUIVehicle::getNumPassengers ( ) const
private

return the number of passengers

Definition at line 1537 of file GUIVehicle.cpp.

References MSDevice_Person::getPersons(), and MSVehicle::myPersonDevice.

Referenced by drawAction_drawRailCarriages().

const SUMOVehicleParameter & MSBaseVehicle::getParameter ( ) const
virtualinherited
GUIParameterTableWindow * GUIVehicle::getParameterWindow ( GUIMainWindow app,
GUISUMOAbstractView parent 
)
virtual
unsigned int MSVehicle::getPersonNumber ( ) const
inherited

Returns the number of persons.

Returns
The number of passengers on-board

Definition at line 2364 of file MSVehicle.cpp.

References MSBaseVehicle::myParameter, MSVehicle::myPersonDevice, SUMOVehicleParameter::personNumber, and MSDevice_Person::size().

Referenced by MSPersonControl::boardAnyWaiting(), and TraCIServerAPI_Vehicle::processGet().

SUMOReal MSVehicle::getPMxEmissions ( ) const
inherited
SUMOReal MSVehicle::getPositionOnLane ( ) const
inlinevirtualinherited

Get the vehicle's position along the lane.

Returns
The position of the vehicle (in m from the lane's begin)

Implements SUMOVehicle.

Definition at line 286 of file MSVehicle.h.

References MSVehicle::State::myPos, and MSVehicle::myState.

Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSLaneChanger::change(), MSLaneChanger::checkChange(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkRewindLinkLanes(), TraCIServerAPI_Vehicle::commandDistanceRequest(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSE2Collector::detectorUpdate(), MSVehicle::executeMove(), MSLane::executeMovements(), MSVehicle::fixPosition(), MSLane::freeInsertion(), MSVehicle::getAngle(), MSLane::getBruttoOccupancy(), MSLane::getCriticalLeader(), MSVehicle::getDistanceToPosition(), MSLane::getFollowerOnConsecutive(), MSLane::getLastVehicleInformation(), MSVehicle::getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getNettoOccupancy(), getParameterWindow(), MSVehicle::getPosition(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), MSVehicle::getSlope(), MSVTKExport::getSpeed(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSCFModel_KraussAccelBound::maxNextSpeed(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), MSLane::VehPosition::operator()(), MSLane::vehicle_position_sorter::operator()(), MSLCM_JE2013::patchSpeed(), MSVehicle::planMoveInternal(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSCalibrator::remainingVehicleCapacity(), selectBlockingFoes(), MSVehicle::setBlinkerInformation(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), TraCIServerAPI_Vehicle::vtdMap(), MSLCM_JE2013::wantsChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), and MSQueueExport::writeLane().

MSLane * GUIVehicle::getPreviousLane ( MSLane current,
int &  furtherIndex 
) const
private

Definition at line 1421 of file GUIVehicle.cpp.

References MSVehicle::myFurtherLanes.

Referenced by drawAction_drawRailCarriages().

const MSEdge * MSVehicle::getRerouteOrigin ( ) const
virtualinherited

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

Returns
The rerouting start point

Reimplemented from MSBaseVehicle.

Definition at line 630 of file MSVehicle.cpp.

References MSCFModel::brakeGap(), MSRoute::end(), MSVehicle::getCarFollowModel(), MSLane::getInternalFollower(), MSLane::getLength(), MSBaseVehicle::myCurrEdge, MSVehicle::myLane, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, and MSVehicle::myState.

Referenced by TraCIServerAPI_Vehicle::processSet().

const MSRoute& MSBaseVehicle::getRoute ( ) const
inlinevirtualinherited
SUMOReal MSVehicle::getSafeFollowSpeed ( const std::pair< const MSVehicle *, SUMOReal leaderInfo,
const SUMOReal  seen,
const MSLane *const  lane,
SUMOReal  distToCrossing 
) const
inherited
const Position & GUIVehicle::getSeatPosition ( size_t  personIndex) const
private

returns the seat position for the person with the given index

if there are not enough seats in the vehicle people have to squeeze onto the last seat

Definition at line 1530 of file GUIVehicle.cpp.

References MIN2(), and mySeatPositions.

Referenced by drawGL().

int MSVehicle::getSignals ( ) const
inlineinherited

Returns the signals.

Returns
The signals' states

Definition at line 829 of file MSVehicle.h.

References MSVehicle::mySignals.

Referenced by TraCIServerAPI_Vehicle::processGet(), and MSFCDExport::write().

SUMOReal MSVehicle::getSpaceTillLastStanding ( const MSLane l,
bool foundStopped 
) const
protectedinherited
SUMOReal MSVehicle::getSpeed ( ) const
inlinevirtualinherited

Returns the vehicle's current speed.

Returns
The vehicle's speed

Implements SUMOVehicle.

Definition at line 294 of file MSVehicle.h.

References MSVehicle::State::mySpeed, and MSVehicle::myState.

Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSCFModel_Wiedemann::_v(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSLaneChanger::change(), MSLaneChanger::checkChange(), GUIApplicationWindow::checkGamingEvents(), MSVehicle::checkRewindLinkLanes(), MSE2Collector::detectorUpdate(), MSVehicle::executeMove(), MSLane::executeMovements(), MSLane::forceVehicleInsertion(), MSLane::freeInsertion(), getColorValue(), MSLane::getCriticalLeader(), MSVehicle::getLeader(), MSLane::getMissingRearGap(), getParameterWindow(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSVehicle::getSafeFollowSpeed(), MSVTKExport::getSpeed(), MSVehicle::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_PWag2009::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel_Wiedemann::moveHelper(), MSCFModel::moveHelper(), MSLCM_DK2008::patchSpeed(), MSLCM_JE2013::patchSpeed(), MSVehicle::planMoveInternal(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), MSVehicle::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(), and MSQueueExport::writeLane().

SUMOReal MSVehicle::getSpeedWithoutTraciInfluence ( ) const
inherited

Returns the uninfluenced velocity.

If no influencer exists (myInfluencer==0) the vehicle's current speed is returned. Otherwise the speed returned from myInfluencer->getOriginalSpeed().

Returns
The vehicle's velocity as it would without an influence
See also
Influencer::getOriginalSpeed

Definition at line 2519 of file MSVehicle.cpp.

References MSVehicle::Influencer::getOriginalSpeed(), MSVehicle::myInfluencer, MSVehicle::State::mySpeed, and MSVehicle::myState.

Referenced by TraCIServerAPI_Vehicle::processGet().

const ConstMSEdgeVector MSVehicle::getStopEdges ( ) const
protectedvirtualinherited

Returns the list of still pending stop edges.

Implements MSBaseVehicle.

Definition at line 946 of file MSVehicle.cpp.

References MSVehicle::myStops.

std::string GUIVehicle::getStopInfo ( ) const
private

retrieve information about the current stop state

Definition at line 1572 of file GUIVehicle.cpp.

References MSVehicle::isParking(), MSVehicle::isStopped(), MSVehicle::myStops, and time2string().

Referenced by getParameterWindow().

SUMOReal MSVehicle::getTimeGap ( ) const
inherited

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.

Returns
The time gap in seconds; -1 if no leader was found or speed is 0.

Definition at line 2270 of file MSVehicle.cpp.

References MSVehicle::getLeader(), MSVehicle::getSpeed(), and MSBaseVehicle::getVehicleType().

Referenced by getColorValue(), and getParameterWindow().

SUMOVehicleClass MSBaseVehicle::getVClass ( ) const
inlinevirtualinherited

Returns the vehicle's access class.

Returns
The vehicle's access class

Implements SUMOVehicle.

Definition at line 98 of file MSBaseVehicle.h.

References MSVehicleType::getParameter(), MSBaseVehicle::myType, and SUMOVTypeParameter::vehicleClass.

const MSVehicleType& MSBaseVehicle::getVehicleType ( ) const
inlinevirtualinherited

Returns the vehicle's type definition.

Returns
The vehicle's type definition

Implements SUMOVehicle.

Definition at line 90 of file MSBaseVehicle.h.

References MSBaseVehicle::myType.

Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_LC2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSVehicle::addStop(), MSPersonControl::boardAnyWaiting(), MSLaneChanger::change(), MSLaneChanger::checkChange(), MSLane::checkFailure(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkRewindLinkLanes(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), MSE2Collector::detectorUpdate(), drawAction_drawRailCarriages(), drawAction_drawVehicleAsBoxPlus(), drawAction_drawVehicleAsImage(), drawAction_drawVehicleAsPoly(), drawAction_drawVehicleAsTrianglePlus(), drawAction_drawVehicleBlinker(), drawAction_drawVehicleBrakeLight(), drawGL(), drawGLAdditional(), MSLane::enteredByLaneChange(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::estimateLeaveSpeed(), MSVehicle::estimateSpeedAfterDistance(), MSVehicle::executeMove(), MSLane::executeMovements(), MSLane::freeInsertion(), MSLane::getBruttoOccupancy(), MSLane::getCriticalLeader(), MSEdge::getDepartLane(), MSLane::getFollowerOnConsecutive(), MSBaseVehicle::getImpatience(), MSLane::getLastVehicleInformation(), MSVehicle::getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getNettoOccupancy(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), MSLaneChanger::getRealThisLeader(), MSVehicle::getTimeGap(), MSLane::handleCollision(), MSLane::incorporateVehicle(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_JE2013::informLeader(), MSLCM_LC2013::informLeader(), MSLane::insertVehicle(), MSLane::integrateNewVehicle(), MSLane::isInsertionSuccess(), MSLane::leftByLaneChange(), MSContainerControl::loadAnyWaiting(), MSCFModel_KraussAccelBound::maxNextSpeed(), MSLane::maxSpeedGapInsertion(), MSLink::maybeOccupied(), MSVehicle::overlap(), MSLCM_DK2008::patchSpeed(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSAbstractLaneChangeModel::predInteraction(), TraCIServerAPI_Vehicle::processGet(), MSVehicle::processNextStop(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSLaneChanger::registerUnchanged(), MSLane::removeVehicle(), MSLCM_JE2013::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), selectBlockingFoes(), setFunctionalColor(), MSLCM_JE2013::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLaneChanger::startChange(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), and MSQueueExport::writeLane().

SUMOReal MSVehicle::getWaitingSeconds ( ) const
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.

Returns
The time the vehicle is standing

Definition at line 370 of file MSVehicle.h.

References MSVehicle::myWaitingTime, and STEPS2TIME.

Referenced by getColorValue(), getParameterWindow(), MSLCM_JE2013::informFollower(), MSLCM_LC2013::informFollower(), TraCIServerAPI_Vehicle::processGet(), MSEmissionExport::write(), MSQueueExport::writeLane(), and MSFullExport::writeVehicles().

SUMOTime MSVehicle::getWaitingTime ( ) const
inlinevirtualinherited

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.

Returns
The time the vehicle is standing

Implements SUMOVehicle.

Definition at line 359 of file MSVehicle.h.

References MSVehicle::myWaitingTime.

Referenced by MSVehicle::checkRewindLinkLanes(), MSVehicle::executeMove(), MSLane::executeMovements(), and selectBlockingFoes().

const MSEdgeWeightsStorage & MSVehicle::getWeightsStorage ( ) const
inherited

Returns the vehicle's internal edge travel times/efforts container.

If the vehicle does not have such a container, it is built.

Returns
The vehicle's knowledge about edge weights

Definition at line 526 of file MSVehicle.cpp.

References MSVehicle::_getWeightsStorage().

Referenced by MSNet::getEffort(), MSNet::getTravelTime(), TraCIServerAPI_Vehicle::processGet(), and TraCIServerAPI_Vehicle::processSet().

MSEdgeWeightsStorage & MSVehicle::getWeightsStorage ( )
inherited

Definition at line 532 of file MSVehicle.cpp.

References MSVehicle::_getWeightsStorage().

bool GUIVehicle::hasActiveAddVisualisation ( GUISUMOAbstractView *const  parent,
int  which 
) const

Returns whether the named feature is enabled in the given view.

Parameters
[in]parentThe view for which the feature may be enabled
[in]whichThe visualisation feature
Returns
see comment

Definition at line 1310 of file GUIVehicle.cpp.

References myAdditionalVisualizations.

Referenced by drawGLAdditional(), and getPopUpMenu().

bool MSVehicle::hasArrived ( ) const
virtualinherited

Returns whether this vehicle has already arived (reached the arrivalPosition on its final edge)

Reimplemented from MSBaseVehicle.

Definition at line 450 of file MSVehicle.cpp.

References MSRoute::end(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::myState, MSVehicle::myStops, and POSITION_EPS.

Referenced by MSVehicle::enterLaneAtMove(), MSVehicle::executeMove(), and MSLane::executeMovements().

bool MSBaseVehicle::hasDeparted ( ) const
virtualinherited

Returns whether this vehicle has already departed.

Implements SUMOVehicle.

Definition at line 244 of file MSBaseVehicle.cpp.

References MSBaseVehicle::myDeparture, and MSBaseVehicle::NOT_YET_DEPARTED.

Referenced by MSVehicle::addStop(), MSVehicle::loadState(), and TraCIServerAPI_Vehicle::processSet().

bool MSVehicle::hasInfluencer ( ) const
inlineinherited
bool MSVehicle::hasStops ( ) const
inlineinherited

Returns whether the vehicle has to stop somewhere.

Returns
Whether the vehicle has to stop somewhere

Definition at line 609 of file MSVehicle.h.

References MSVehicle::myStops.

bool MSBaseVehicle::hasValidRoute ( std::string &  msg) const
inherited

Validates the current route.

Parameters
[out]msgDescription why the route is not valid (if it is the case)
Returns
Whether the vehicle's current route is valid

Definition at line 263 of file MSBaseVehicle.cpp.

References MSRoute::end(), MSVehicleType::getVehicleClass(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, and MSBaseVehicle::myType.

Referenced by MSVehicle::enterLaneAtInsertion(), and TraCIServerAPI_Vehicle::processGet().

bool MSVehicle::isOnRoad ( ) const
inlinevirtualinherited
bool MSVehicle::isParking ( ) const
inherited

Returns whether the vehicle is parking.

Returns
whether the vehicle is parking

Definition at line 813 of file MSVehicle.cpp.

References MSVehicle::isStopped(), and MSVehicle::myStops.

Referenced by MSVehicleTransfer::add(), MSLane::executeMovements(), MSVehicle::getAngle(), MSVehicle::getPosition(), getStopInfo(), and TraCIServerAPI_Vehicle::processGet().

bool MSVehicle::isStopped ( ) const
virtualinherited

Returns whether the vehicle is at a stop.

Returns
Whether the vehicle has stopped

Implements SUMOVehicle.

Definition at line 807 of file MSVehicle.cpp.

References MSVehicle::myStops.

Referenced by MSLane::executeMovements(), getStopInfo(), MSVehicle::isParking(), MSVehicle::isStoppedInRange(), MSVehicle::isStoppedTriggered(), TraCIServerAPI_Vehicle::processGet(), and MSVehicle::resumeFromStopping().

bool MSVehicle::isStoppedInRange ( SUMOReal  pos) const
inherited

return whether the given position is within range of the current stop

Definition at line 825 of file MSVehicle.cpp.

References MSVehicle::isStopped(), and MSVehicle::myStops.

Referenced by MSVehicleControl::getWaitingVehicle().

bool MSVehicle::isStoppedTriggered ( ) const
virtualinherited

Returns whether the vehicle is on a triggered stop.

Returns
whether the vehicle is on a triggered stop

Implements SUMOVehicle.

Definition at line 819 of file MSVehicle.cpp.

References MSVehicle::isStopped(), and MSVehicle::myStops.

Referenced by TraCIServerAPI_Vehicle::processGet().

bool MSVehicle::knowsEdgeTest ( MSEdge edge) const
inherited
void MSVehicle::loadState ( const SUMOSAXAttributes attrs,
const SUMOTime  offset 
)
virtualinherited
void MSBaseVehicle::onDepart ( )
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 237 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)
inherited

Called when the vehicle is removed from the network.

Moves along work reminders and informs all devices about quitting. Calls "leaveLane" then.

Parameters
[in]reasonwhy the vehicle leaves (reached its destination, parking, teleport)

Definition at line 436 of file MSVehicle.cpp.

References MSVehicleTransfer::getInstance(), MSVehicle::leaveLane(), MSVehicle::myLFLinkLanes, MSVehicle::State::myPos, MSVehicle::State::mySpeed, MSVehicle::myState, MSVehicleTransfer::remove(), SPEED2DIST, and MSVehicle::workOnMoveReminders().

Referenced by MSVehicleTransfer::add(), MSLane::executeMovements(), MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processSet(), and MSCalibrator::removePending().

static bool MSVehicle::overlap ( const MSVehicle veh1,
const MSVehicle veh2 
)
inlinestaticinherited

Returns true if the two vehicles overlap.

Definition at line 383 of file MSVehicle.h.

References MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), MSVehicle::State::myPos, and MSVehicle::myState.

void MSVehicle::planMove ( const SUMOTime  t,
const MSVehicle pred,
const SUMOReal  lengthsInFront 
)
inherited

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

Parameters
[in]tThe current timeStep
[in]predThe leader (may be 0)
[in]lengthsInFrontSum of vehicle lengths in front of the vehicle

Definition at line 956 of file MSVehicle.cpp.

References MSVehicle::checkRewindLinkLanes(), MSVehicle::getLaneChangeModel(), MSVehicle::myLFLinkLanes, MSVehicle::planMoveInternal(), and MSAbstractLaneChangeModel::resetMoved().

void MSVehicle::planMoveInternal ( const SUMOTime  t,
const MSVehicle pred,
DriveItemVector lfLinks 
) const
protectedinherited

Definition at line 964 of file MSVehicle.cpp.

References MSVehicle::DriveProcessItem::adaptLeaveSpeed(), MSVehicle::adaptToLeader(), ARRIVAL_SPEED_GIVEN, SUMOVehicleParameter::arrivalSpeed, SUMOVehicleParameter::arrivalSpeedProcedure, bla, MSCFModel::brakeGap(), MSVehicle::Stop::busstop, CRLL_LOOK_AHEAD, DELTA_T, DIST_TO_STOPLINE_EXPECT_PRIORITY, MSEdge::EDGEFUNCTION_INTERNAL, MSRoute::end(), MSVehicle::Stop::endPos, MSVehicle::estimateLeaveSpeed(), MSVehicle::estimateSpeedAfterDistance(), MSCFModel::freeSpeed(), MSVehicle::gap(), MSVehicle::getBestLanesContinuation(), MSVehicleType::getCarFollowModel(), MSVehicle::getCarFollowModel(), MSLane::getEdge(), MSCFModel::getHeadwayTime(), MSBaseVehicle::getID(), MSNet::getInstance(), MSVehicle::getLane(), MSVehicle::getLaneChangeModel(), MSBusStop::getLastFreePos(), MSLane::getLastVehicleInformation(), MSVehicleType::getLength(), MSLane::getLength(), MSLane::getLogicalPredecessorLane(), MSCFModel::getMaxAccel(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSLane::getPartialOccupator(), MSLane::getPartialOccupatorEnd(), MSVehicle::getPositionOnLane(), MSEdge::getPurpose(), MSVehicle::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_REDYELLOW, LINKSTATE_TL_YELLOW_MAJOR, LINKSTATE_TL_YELLOW_MINOR, MAX2(), MAX3(), MSCFModel::maxNextSpeed(), MIN2(), MSBaseVehicle::myArrivalPos, MSBaseVehicle::myCurrEdge, MSVehicle::myInfluencer, MSVehicle::myLane, MSBaseVehicle::myParameter, MSVehicle::State::myPos, MSBaseVehicle::myRoute, MSVehicle::State::mySpeed, MSVehicle::myState, MSVehicle::myStops, MSVehicle::DriveProcessItem::myVLinkWait, NUMERICAL_EPS, POSITION_EPS, SPEED2DIST, STEPS2TIME, MSCFModel::stopSpeed(), MSLane::succLinkSec(), SUMO_const_haltingSpeed, SUMOReal, SUMOTime_MAX, and TIME2STEPS.

Referenced by MSVehicle::planMove().

SUMOReal MSVehicle::processNextStop ( SUMOReal  currentVelocity)
inherited

Processes stops, returns the velocity needed to reach the stop.

Returns
The velocity in dependance to the next/current stop
Todo:
Describe more detailed
See also
Stop
MSBusStop
MSContainerStop

Definition at line 831 of file MSVehicle.cpp.

References MSVehicleControl::addWaiting(), MSVehicle::Stop::awaitedContainers, MSVehicle::Stop::awaitedPersons, MSPersonControl::boardAnyWaiting(), BUS_STOP_OFFSET, MSVehicle::Stop::busstop, MSVehicle::Stop::containerstop, MSVehicle::Stop::containerTriggered, DELTA_T, MSVehicle::Stop::duration, MSVehicle::Stop::edge, MSVehicle::Stop::endPos, MSBusStop::enter(), MSContainerStop::enter(), MSBusStop::getBeginLanePosition(), MSContainerStop::getBeginLanePosition(), MSVehicle::getCarFollowModel(), MSNet::getContainerControl(), MSDevice_Container::getContainers(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSBusStop::getEndLanePosition(), MSContainerStop::getEndLanePosition(), MSNet::getInstance(), MSBusStop::getLastFreePos(), MSContainerStop::getLastFreePos(), MSVehicleType::getLength(), MSVehicleType::getMinGap(), MSNet::getPersonControl(), MSDevice_Person::getPersons(), MSVehicle::getSpeed(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSNet::informVehicleStateListener(), MSVehicle::Stop::lane, MSContainerControl::loadAnyWaiting(), MAX2(), MSVehicle::myAmRegisteredAsWaitingForContainer, MSVehicle::myAmRegisteredAsWaitingForPerson, MSVehicle::myContainerDevice, MSBaseVehicle::myCurrEdge, MSVehicle::myLane, MSVehicle::myPersonDevice, MSVehicle::myState, MSVehicle::myStops, MSBaseVehicle::myType, MSVehicle::State::pos(), MSVehicle::Stop::reached, MSVehicleControl::registerOneWaitingForContainer(), MSVehicleControl::registerOneWaitingForPerson(), MSContainerStop::removeContainer(), MSBusStop::removePerson(), MSVehicle::resumeFromStopping(), MSCFModel::stopSpeed(), SUMOReal, MSVehicle::Stop::triggered, MSVehicleControl::unregisterOneWaitingForContainer(), MSVehicleControl::unregisterOneWaitingForPerson(), MSVehicle::Stop::until, and MSNet::VEHICLE_STATE_STARTING_STOP.

Referenced by MSVehicleTransfer::checkInsertions(), MSCFModel_Daniel1::moveHelper(), MSCFModel_SmartSK::moveHelper(), MSCFModel_KraussOrig1::moveHelper(), and MSCFModel::moveHelper().

void GUIVehicle::removeActiveAddVisualisation ( GUISUMOAbstractView *const  parent,
int  which 
)
void GUIGlObject::removeParameterTable ( GUIParameterTableWindow w)
inherited

Lets this object know a parameter window showing the object's values was closed.

Parameters
[in]wThe closed parameter window

Definition at line 194 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

Referenced by GUIParameterTableWindow::~GUIParameterTableWindow().

void MSBaseVehicle::removeReminder ( MSMoveReminder rem)
inherited

Removes a MoveReminder dynamically.

Parameters
[in]remthe reminder to remove
See also
MSMoveReminder

Definition at line 296 of file MSBaseVehicle.cpp.

References MSBaseVehicle::myMoveReminders.

bool MSVehicle::replaceRoute ( const MSRoute route,
bool  onInit = false,
int  offset = 0 
)
virtualinherited
bool MSBaseVehicle::replaceRouteEdges ( ConstMSEdgeVector edges,
bool  onInit = false 
)
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).

Parameters
[in]edgesThe new list of edges to pass
[in]simTimeThe time at which the route was replaced
Returns
Whether the new route was accepted

Implements SUMOVehicle.

Definition at line 170 of file MSBaseVehicle.cpp.

References MSRoute::addReference(), MSRoute::begin(), RGBColor::DEFAULT_COLOR, MSRoute::dictionary(), MSRoute::getColor(), MSRoute::getEdges(), Named::getID(), MSBaseVehicle::getID(), MSBaseVehicle::getNumberReroutes(), MSBaseVehicle::getRerouteOrigin(), MSRoute::getStops(), MSBaseVehicle::myCurrEdge, MSBaseVehicle::myRoute, MSRoute::release(), SUMOVehicle::replaceRoute(), toString(), and WRITE_WARNING.

Referenced by MSVehicle::Influencer::postProcessVTD(), TraCIServerAPI_Vehicle::processSet(), and MSBaseVehicle::reroute().

void MSVehicle::replaceVehicleType ( MSVehicleType type)
inherited

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".

Parameters
[in]typeThe new vehicle type
See also
MSVehicle::myType

Definition at line 2408 of file MSVehicle.cpp.

References MSVehicleType::amVehicleSpecific(), and MSBaseVehicle::myType.

Referenced by TraCIServerAPI_Vehicle::processSet().

void MSBaseVehicle::reroute ( SUMOTime  t,
SUMOAbstractRouter< MSEdge, SUMOVehicle > &  router,
const bool  onInit = false,
const bool  withTaz = false 
)
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.

Parameters
[in]tThe time for which the route is computed
[in]routerThe router to use
See also
replaceRoute

Implements SUMOVehicle.

Definition at line 138 of file MSBaseVehicle.cpp.

References SUMOAbstractRouter< E, V >::compute(), MSEdge::dictionary(), MSEdge::EDGEFUNCTION_DISTRICT, SUMOVehicleParameter::fromTaz, MSRoute::getLastEdge(), MSBaseVehicle::getRerouteOrigin(), MSBaseVehicle::getStopEdges(), MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSBaseVehicle::replaceRouteEdges(), and SUMOVehicleParameter::toTaz.

Referenced by TraCIServerAPI_Vehicle::processSet().

void MSVehicle::resetRoutePosition ( unsigned int  index)
inherited
void MSBaseVehicle::setChosenSpeedFactor ( const SUMOReal  factor)
inlinevirtualinherited

Returns the precomputed factor by which the driver wants to be faster than the speed limit.

Returns
Speed limit factor

Implements SUMOVehicle.

Definition at line 297 of file MSBaseVehicle.h.

References MSBaseVehicle::myChosenSpeedFactor.

Referenced by TraCIServerAPI_Vehicle::processSet().

void GUIVehicle::setColor ( const GUIVisualizationSettings s) const
private
void GUIGlObject::setMicrosimID ( const std::string &  newID)
inherited

Changes the microsimID of the object (happens in NETEDIT)

Definition at line 109 of file GUIGlObject.cpp.

References GUIGlObject::createFullName(), GUIGlObject::myFullName, and GUIGlObject::myMicrosimID.

void GUIGlObject::setPrefix ( const std::string &  prefix)
protectedinherited
void MSVehicle::setTentativeLaneAndPosition ( MSLane lane,
const SUMOReal  pos 
)
inherited

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 sucessfully inserted the lane is set again (see enterLaneAtInsertion)

Definition at line 2423 of file MSVehicle.cpp.

References MSVehicle::myLane, MSVehicle::State::myPos, and MSVehicle::myState.

Referenced by MSLane::isInsertionSuccess(), MSLane::pWagGenericInsertion(), and MSLane::pWagSimpleInsertion().

bool MSVehicle::signalSet ( int  which) const
inlineinherited

Returns whether the given signal is on.

Parameters
[in]signalThe signal to return the value of
Returns
Whether the given signal is on

Definition at line 838 of file MSVehicle.h.

References MSVehicle::mySignals.

Referenced by MSVehicle::checkRewindLinkLanes(), drawAction_drawVehicleBlinker(), and drawAction_drawVehicleBrakeLight().

const MSEdge * MSBaseVehicle::succEdge ( unsigned int  nSuccs) const
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.

Parameters
[in]nSuccsThe number of edge to look forward
Returns
The nSuccs'th following edge in the vehicle's route

Implements SUMOVehicle.

Definition at line 122 of file MSBaseVehicle.cpp.

References MSBaseVehicle::myCurrEdge.

Referenced by MSVehicleTransfer::add(), MSLane::appropriate(), MSVehicleTransfer::checkInsertions(), MSBaseVehicle::hasArrived(), and TraCIServerAPI_Vehicle::processSet().

void MSVehicle::switchOffSignal ( int  signal)
inlineinherited

Switches the given signal off.

Parameters
[in]signalThe signal to mark as being switched off

Definition at line 821 of file MSVehicle.h.

References MSVehicle::mySignals.

Referenced by MSVehicle::executeMove(), TraCIServerAPI_Vehicle::processSet(), and MSVehicle::setBlinkerInformation().

void MSVehicle::switchOnSignal ( int  signal)
inlineinherited

Switches the given signal on.

Parameters
[in]signalThe signal to mark as being switched on

Definition at line 813 of file MSVehicle.h.

References MSVehicle::mySignals.

Referenced by MSVehicle::executeMove(), TraCIServerAPI_Vehicle::processSet(), and MSVehicle::setBlinkerInformation().

void MSVehicle::updateBestLanes ( bool  forceRebuild = false,
const MSLane startLane = 0 
)
inherited

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.

Parameters
[in]forceRebuildWhether the best lanes container shall be rebuilt even if the vehicle's edge has not changed
[in]startLaneThe lane the process shall start at ("myLane" will be used if ==0)

Definition at line 1902 of file MSVehicle.cpp.

References abs, MSEdge::allowedLanes(), MSVehicle::LaneQ::allowsContinuation, MSLane::allowsVehicleClass(), 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, MAX2(), MIN2(), MSBaseVehicle::myArrivalPos, MSVehicle::myBestLanes, MSBaseVehicle::myCurrEdge, MSVehicle::myCurrentLaneInBestLanes, MSVehicle::myLane, MSVehicle::myLastBestLanesEdge, MSVehicle::myLastBestLanesInternalLane, MSBaseVehicle::myParameter, MSBaseVehicle::myRoute, MSVehicle::myStops, MSBaseVehicle::myType, POSITION_EPS, MSVehicle::Stop::startPos, SUMOReal, and MSVehicle::updateOccupancyAndCurrentBestLane().

Referenced by MSVehicle::addTraciStop(), MSLaneChanger::change(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::executeMove(), MSLane::forceVehicleInsertion(), MSEdge::getDepartLane(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSVehicle::Influencer::postProcessVTD(), MSLane::pWagGenericInsertion(), MSLane::pWagSimpleInsertion(), MSVehicle::replaceRoute(), and MSVehicle::resumeFromStopping().

void MSVehicle::updateOccupancyAndCurrentBestLane ( const MSLane startLane)
protectedinherited

updates LaneQ::nextOccupation and myCurrentLaneInBestLanes

Definition at line 2151 of file MSVehicle.cpp.

References MSVehicle::myBestLanes, MSVehicle::myCurrentLaneInBestLanes, and SUMOReal.

Referenced by MSVehicle::updateBestLanes().

bool MSVehicle::willPass ( const MSEdge *const  edge) const
inherited

Returns whether the vehicle wil pass the given edge.

Parameters
[in]Theedge to find in the vehicle's current route
Returns
Whether the given edge will be passed by the vehicle
Todo:
Move to MSRoute?

Definition at line 505 of file MSVehicle.cpp.

References MSRoute::end(), MSBaseVehicle::myCurrEdge, and MSBaseVehicle::myRoute.

Referenced by TraCIServerAPI_Vehicle::processSet().

void MSVehicle::workOnMoveReminders ( SUMOReal  oldPos,
SUMOReal  newPos,
SUMOReal  newSpeed 
)
inherited

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.

Parameters
[in]oldPosThe position the vehicle had before it has moved
[in]newPosThe position the vehicle has after it has moved
[in]newSpeedThe vehicle's speed within this move
See also
MSMoveReminder

Definition at line 548 of file MSVehicle.cpp.

References MSBaseVehicle::myMoveReminders.

Referenced by MSVehicle::executeMove(), MSLane::executeMovements(), and MSVehicle::onRemovalFromNet().

Field Documentation

std::map<GUISUMOAbstractView*, int> GUIVehicle::myAdditionalVisualizations

Enabled visualisations, per view.

Definition at line 245 of file GUIVehicle.h.

Referenced by addActiveAddVisualisation(), getPopUpMenu(), hasActiveAddVisualisation(), removeActiveAddVisualisation(), and ~GUIVehicle().

bool MSVehicle::myAmOnNet
protectedinherited

Whether the vehicle is on the network (not parking, teleported, vaporized, or arrived)

Definition at line 1185 of file MSVehicle.h.

Referenced by MSVehicle::enterLaneAtInsertion(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::enterLaneAtMove(), MSVehicle::isOnRoad(), and MSVehicle::leaveLane().

bool MSVehicle::myAmRegisteredAsWaitingForContainer
protectedinherited

Whether this vehicle is registered as waiting for a container (for deadlock-recognition)

Definition at line 1191 of file MSVehicle.h.

Referenced by MSVehicle::processNextStop(), and MSVehicle::resumeFromStopping().

bool MSVehicle::myAmRegisteredAsWaitingForPerson
protectedinherited

Whether this vehicle is registered as waiting for a person (for deadlock-recognition)

Definition at line 1188 of file MSVehicle.h.

Referenced by MSVehicle::processNextStop(), and MSVehicle::resumeFromStopping().

SUMOReal MSBaseVehicle::myArrivalPos
protectedinherited
SUMOReal GUIVehicle::myCarriageLength
mutableprivate

Variable to set with the length of the last drawn carriage or the vehicle length.

Definition at line 330 of file GUIVehicle.h.

Referenced by drawAction_drawRailCarriages(), and drawGL().

SUMOReal MSBaseVehicle::myChosenSpeedFactor
protectedinherited

A precomputed factor by which the driver wants to be faster than the speed limit.

Definition at line 346 of file MSBaseVehicle.h.

Referenced by MSBaseVehicle::getChosenSpeedFactor(), and MSBaseVehicle::setChosenSpeedFactor().

MSDevice_Container* MSVehicle::myContainerDevice
protectedinherited

The containers this vehicle may have.

Definition at line 1173 of file MSVehicle.h.

Referenced by MSVehicle::addContainer(), drawGL(), MSVehicle::getContainerNumber(), and MSVehicle::processNextStop().

std::vector<LaneQ>::iterator MSVehicle::myCurrentLaneInBestLanes
protectedinherited
SUMOTime MSBaseVehicle::myDeparture
protectedinherited
std::vector<MSDevice*> MSBaseVehicle::myDevices
protectedinherited
std::vector< MSLane * > MSVehicle::myEmptyLaneVector
staticprotectedinherited

Definition at line 1164 of file MSVehicle.h.

Referenced by MSVehicle::getBestLanesContinuation().

std::vector<MSLane*> MSVehicle::myFurtherLanes
protectedinherited
bool MSVehicle::myHaveToWaitOnNextLink
protectedinherited

Definition at line 1193 of file MSVehicle.h.

Referenced by MSVehicle::checkRewindLinkLanes(), and MSVehicle::executeMove().

MSAbstractLaneChangeModel* MSVehicle::myLaneChangeModel
protectedinherited
const MSEdge* MSVehicle::myLastBestLanesEdge
protectedinherited

Definition at line 1159 of file MSVehicle.h.

Referenced by MSVehicle::replaceRoute(), and MSVehicle::updateBestLanes().

const MSLane* MSVehicle::myLastBestLanesInternalLane
protectedinherited

Definition at line 1160 of file MSVehicle.h.

Referenced by MSVehicle::replaceRoute(), and MSVehicle::updateBestLanes().

DriveItemVector MSVehicle::myLFLinkLanes
protectedinherited

Container for used Links/visited Lanes during lookForward.

Definition at line 1252 of file MSVehicle.h.

Referenced by drawGLAdditional(), MSVehicle::executeMove(), MSVehicle::onRemovalFromNet(), MSVehicle::planMove(), selectBlockingFoes(), and MSVehicle::~MSVehicle().

MFXMutex GUIVehicle::myLock
mutableprivate

The mutex used to avoid concurrent updates of the vehicle buffer.

Definition at line 327 of file GUIVehicle.h.

Referenced by drawBestLanes(), and ~GUIVehicle().

unsigned int MSBaseVehicle::myNumberReroutes
protectedinherited

The number of reroutings.

Definition at line 369 of file MSBaseVehicle.h.

Referenced by MSBaseVehicle::getNumberReroutes(), and MSVehicle::replaceRoute().

MSDevice_Person* MSVehicle::myPersonDevice
protectedinherited

The passengers this vehicle may have.

Definition at line 1170 of file MSVehicle.h.

Referenced by MSVehicle::addPerson(), drawGL(), getNumPassengers(), MSVehicle::getPersonNumber(), and MSVehicle::processNextStop().

MSDevice_Vehroutes* GUIVehicle::myRoutes
private

Definition at line 332 of file GUIVehicle.h.

Referenced by drawRoute(), GUIVehicle(), and ~GUIVehicle().

PositionVector GUIVehicle::mySeatPositions
mutableprivate

positions of seats in the vehicle (updated at every drawing step)

Definition at line 335 of file GUIVehicle.h.

Referenced by computeSeats(), drawAction_drawRailCarriages(), drawGL(), getSeatPosition(), and GUIVehicle().

int MSVehicle::mySignals
protectedinherited

State of things of the vehicle that can be on or off.

Definition at line 1182 of file MSVehicle.h.

Referenced by MSVehicle::getSignals(), MSVehicle::signalSet(), MSVehicle::switchOffSignal(), and MSVehicle::switchOnSignal().

SUMOTime MSVehicle::myWaitingTime
protectedinherited

The time the vehicle waits (is not faster than 0.1m/s) in seconds.

Definition at line 1149 of file MSVehicle.h.

Referenced by MSVehicle::enterLaneAtInsertion(), MSVehicle::executeMove(), MSVehicle::getWaitingSeconds(), MSVehicle::getWaitingTime(), and MSVehicle::resumeFromStopping().

StringBijection< GUIGlObjectType > GUIGlObject::TypeNames
staticinherited

associates object types with strings

Definition at line 99 of file GUIGlObject.h.


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