Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
MSVehicle::Influencer Class Reference

Changes the wished vehicle speed / lanes. More...

#include <MSVehicle.h>

Inheritance diagram for MSVehicle::Influencer:
[legend]
Collaboration diagram for MSVehicle::Influencer:
[legend]

Data Structures

struct  GapControlState
 Container for state and parameters of the gap control. More...
 
class  GapControlVehStateListener
 A static instance of this class in GapControlState deactivates gap control for vehicles whose reference vehicle is removed from the road network. More...
 

Public Member Functions

void activateGapController (double originalTau, double newTimeHeadway, double newSpaceHeadway, double duration, double changeRate, double maxDecel, MSVehicle *refVeh=nullptr)
 Activates the gap control with the given parameters,.
 
void adaptLaneTimeLine (int indexShift)
 Adapts lane timeline when moving to a new lane and the lane index changes.
 
double changeRequestRemainingSeconds (const SUMOTime currentTime) const
 Return the remaining number of seconds of the current laneTimeLine assuming one exists.
 
bool considerSafeVelocity () const
 Returns whether safe velocities shall be considered.
 
void deactivateGapController ()
 Deactivates the gap control.
 
double gapControlSpeed (SUMOTime currentTime, const SUMOVehicle *veh, double speed, double vSafe, double vMin, double vMax)
 Applies gap control logic on the speed.
 
bool getEmergencyBrakeRedLight () const
 Returns whether red lights shall be a reason to brake.
 
double getExtraImpatience () const
 return the current routing mode
 
int getLaneChangeMode () const
 return the current lane change mode
 
SUMOTime getLaneTimeLineDuration ()
 
SUMOTime getLaneTimeLineEnd ()
 
SUMOTime getLastAccessTimeStep () const
 
double getLatDist () const
 
double getOriginalSpeed () const
 Returns the originally longitudinal speed to use.
 
bool getRespectJunctionLeaderPriority () const
 Returns whether junction priority rules within the junction shall be respected (concerns vehicles within the junction)
 
bool getRespectJunctionPriority () const
 Returns whether junction priority rules shall be respected (concerns approaching vehicles outside the junction)
 
int getSignals () const
 
int getSpeedMode () const
 return the current speed mode
 
bool ignoreOverlap () const
 
double implicitDeltaPosRemote (const MSVehicle *veh)
 return the change in longitudinal position that is implicit in the new remote position
 
double implicitSpeedRemote (const MSVehicle *veh, double oldSpeed)
 return the speed that is implicit in the new remote position
 
int influenceChangeDecision (const SUMOTime currentTime, const MSEdge &currentEdge, const int currentLaneIndex, int state)
 Applies stored LaneChangeMode information and laneTimeLine.
 
 Influencer ()
 Constructor.
 
double influenceSpeed (SUMOTime currentTime, double speed, double vSafe, double vMin, double vMax)
 Applies stored velocity information on the speed to use.
 
bool isRemoteAffected (SUMOTime t) const
 
bool isRemoteControlled () const
 
void postProcessRemoteControl (MSVehicle *v)
 update position from remote control
 
void resetLatDist ()
 
void setExtraImpatience (double value)
 Sets routing behavior.
 
void setLaneChangeMode (int value)
 Sets lane changing behavior.
 
void setLaneTimeLine (const std::vector< std::pair< SUMOTime, int > > &laneTimeLine)
 Sets a new lane timeline.
 
void setOriginalSpeed (double speed)
 Stores the originally longitudinal speed.
 
void setRemoteControlled (Position xyPos, MSLane *l, double pos, double posLat, double angle, int edgeOffset, const ConstMSEdgeVector &route, SUMOTime t)
 
void setSignals (int signals)
 
void setSpeedMode (int speedMode)
 Sets speed-constraining behaviors.
 
void setSpeedTimeLine (const std::vector< std::pair< SUMOTime, double > > &speedTimeLine)
 Sets a new velocity timeline.
 
void setSublaneChange (double latDist)
 Sets a new sublane-change request.
 
void updateRemoteControlRoute (MSVehicle *v)
 update route if provided by remote control
 
 ~Influencer ()
 Destructor.
 

Static Public Member Functions

static void cleanup ()
 Static cleanup.
 

Protected Attributes

double myExtraImpatience = 0
 dynamic impatience offset
 

Private Member Functions

void init ()
 Static initalization.
 

Private Attributes

bool myConsiderMaxAcceleration
 Whether the maximum acceleration shall be regarded.
 
bool myConsiderMaxDeceleration
 Whether the maximum deceleration shall be regarded.
 
bool myConsiderSafeVelocity
 Whether the safe velocity shall be regarded.
 
bool myEmergencyBrakeRedLight
 Whether red lights are a reason to brake.
 
std::shared_ptr< GapControlStatemyGapControlState
 The gap control state.
 
std::vector< std::pair< SUMOTime, int > > myLaneTimeLine
 The lane usage time line to apply.
 
SUMOTime myLastRemoteAccess
 
double myLatDist
 The requested lateral change.
 
double myOriginalSpeed
 The velocity before influence.
 
double myRemoteAngle
 
int myRemoteEdgeOffset
 
MSLanemyRemoteLane
 
double myRemotePos
 
double myRemotePosLat
 
ConstMSEdgeVector myRemoteRoute
 
Position myRemoteXYPos
 
bool myRespectJunctionLeaderPriority
 Whether the junction priority rules are respected (within)
 
bool myRespectJunctionPriority
 Whether the junction priority rules are respected (approaching)
 
bool mySpeedAdaptationStarted
 Whether influencing the speed has already started.
 
std::vector< std::pair< SUMOTime, double > > mySpeedTimeLine
 The velocity time line to apply.
 
Flags for managing conflicts between the laneChangeModel and TraCI laneTimeLine
LaneChangeMode myStrategicLC
 lane changing which is necessary to follow the current route
 
LaneChangeMode myCooperativeLC
 lane changing with the intent to help other vehicles
 
LaneChangeMode mySpeedGainLC
 lane changing to travel with higher speed
 
LaneChangeMode myRightDriveLC
 changing to the rightmost lane
 
LaneChangeMode mySublaneLC
 changing to the prefered lateral alignment
 
TraciLaneChangePriority myTraciLaneChangePriority
 flags for determining the priority of traci lane change requests
 
int myTraCISignals
 

Detailed Description

Changes the wished vehicle speed / lanes.

The class is used for passing velocities or velocity profiles obtained via TraCI to the vehicle. The speed adaptation is controlled by the stored speedTimeLine Additionally, the variables myConsiderSafeVelocity, myConsiderMaxAcceleration, and myConsiderMaxDeceleration control whether the safe velocity, the maximum acceleration, and the maximum deceleration have to be regarded.

Furthermore this class is used to affect lane changing decisions according to LaneChangeMode and any given laneTimeLine

Definition at line 1348 of file MSVehicle.h.

Constructor & Destructor Documentation

◆ Influencer()

MSVehicle::Influencer::Influencer ( )

Constructor.

Definition at line 369 of file MSVehicle.cpp.

◆ ~Influencer()

MSVehicle::Influencer::~Influencer ( )

Destructor.

Definition at line 391 of file MSVehicle.cpp.

Member Function Documentation

◆ activateGapController()

void MSVehicle::Influencer::activateGapController ( double  originalTau,
double  newTimeHeadway,
double  newSpaceHeadway,
double  duration,
double  changeRate,
double  maxDecel,
MSVehicle refVeh = nullptr 
)

Activates the gap control with the given parameters,.

See also
GapControlState

Definition at line 410 of file MSVehicle.cpp.

Referenced by LIBSUMO_NAMESPACE::Vehicle::openGap(), and MSDevice_ToC::requestToC().

Here is the caller graph for this function:

◆ adaptLaneTimeLine()

void MSVehicle::Influencer::adaptLaneTimeLine ( int  indexShift)

Adapts lane timeline when moving to a new lane and the lane index changes.

Parameters
[in]indexShiftThe change in laneIndex

Definition at line 432 of file MSVehicle.cpp.

Referenced by MSVehicle::enterLaneAtMove().

Here is the caller graph for this function:

◆ changeRequestRemainingSeconds()

double MSVehicle::Influencer::changeRequestRemainingSeconds ( const SUMOTime  currentTime) const

Return the remaining number of seconds of the current laneTimeLine assuming one exists.

Parameters
[in]currentTimeThe current simulation time
Returns
The remaining seconds to change lanes

Definition at line 778 of file MSVehicle.cpp.

References STEPS2TIME.

Referenced by MSLCM_LC2013::_wantsChange(), and MSLCM_SL2015::_wantsChangeSublane().

Here is the caller graph for this function:

◆ cleanup()

void MSVehicle::Influencer::cleanup ( )
static

Static cleanup.

Definition at line 399 of file MSVehicle.cpp.

Referenced by MSNet::cleanupStatic().

Here is the caller graph for this function:

◆ considerSafeVelocity()

bool MSVehicle::Influencer::considerSafeVelocity ( ) const
inline

Returns whether safe velocities shall be considered.

Definition at line 1532 of file MSVehicle.h.

References myConsiderSafeVelocity.

Referenced by MSVehicle::planMoveInternal().

Here is the caller graph for this function:

◆ deactivateGapController()

void MSVehicle::Influencer::deactivateGapController ( )

Deactivates the gap control.

Definition at line 419 of file MSVehicle.cpp.

Referenced by LIBSUMO_NAMESPACE::Vehicle::deactivateGapControl(), and MSDevice_ToC::setState().

Here is the caller graph for this function:

◆ gapControlSpeed()

double MSVehicle::Influencer::gapControlSpeed ( SUMOTime  currentTime,
const SUMOVehicle veh,
double  speed,
double  vSafe,
double  vMin,
double  vMax 
)

Applies gap control logic on the speed.

The given speed is assumed to be the non-influenced speed from longitudinal control. It is stored for further usage in "myOriginalSpeed".

Parameters
[in]currentTimeThe current simulation time
[in]vehThe controlled vehicle
[in]speedThe undisturbed speed
[in]vSafeThe safe velocity
[in]vMinThe minimum velocity
[in]vMaxThe maximum simulation time
Returns
The speed to use (<=speed)

Definition at line 519 of file MSVehicle.cpp.

References DEBUG_COND2, MSCFModel::followSpeed(), MSVehicle::getBrakeGap(), MSVehicleType::getCarFollowModel(), MSVehicle::getDistanceToPosition(), MSCFModel::getHeadwayTime(), MSVehicle::getLane(), MSVehicle::getLeader(), MSBaseVehicle::getLength(), MSVehicleType::getMinGap(), MSVehicle::getPositionOnLane(), MSVehicle::getSpeed(), SUMOTrafficObject::getSpeed(), MSBaseVehicle::getVehicleType(), MAX2(), MIN2(), MSCFModel::setHeadwayTime(), SIMSTEP, and TS.

Referenced by MSVehicle::planMoveInternal().

Here is the caller graph for this function:

◆ getEmergencyBrakeRedLight()

bool MSVehicle::Influencer::getEmergencyBrakeRedLight ( ) const
inline

Returns whether red lights shall be a reason to brake.

Returns
Whether red lights shall be a reason to brake

Definition at line 1518 of file MSVehicle.h.

References myEmergencyBrakeRedLight.

Referenced by MSVehicle::ignoreRed(), and MSVehicle::processLaneAdvances().

Here is the caller graph for this function:

◆ getExtraImpatience()

double MSBaseVehicle::BaseInfluencer::getExtraImpatience ( ) const
inlineinherited

return the current routing mode

Definition at line 898 of file MSBaseVehicle.h.

References MSBaseVehicle::BaseInfluencer::myExtraImpatience.

◆ getLaneChangeMode()

int MSVehicle::Influencer::getLaneChangeMode ( ) const

return the current lane change mode

Definition at line 457 of file MSVehicle.cpp.

Referenced by MSDevice_ToC::deactivateDeliberateLCs().

Here is the caller graph for this function:

◆ getLaneTimeLineDuration()

SUMOTime MSVehicle::Influencer::getLaneTimeLineDuration ( )

Definition at line 467 of file MSVehicle.cpp.

Referenced by MSLaneChanger::changeOpposite().

Here is the caller graph for this function:

◆ getLaneTimeLineEnd()

SUMOTime MSVehicle::Influencer::getLaneTimeLineEnd ( )

Definition at line 480 of file MSVehicle.cpp.

◆ getLastAccessTimeStep()

SUMOTime MSVehicle::Influencer::getLastAccessTimeStep ( ) const
inline

Definition at line 1556 of file MSVehicle.h.

References myLastRemoteAccess.

Referenced by MSVehicle::wasRemoteControlled().

Here is the caller graph for this function:

◆ getLatDist()

double MSVehicle::Influencer::getLatDist ( ) const
inline

Definition at line 1584 of file MSVehicle.h.

References myLatDist.

Referenced by MSLCM_SL2015::checkBlocking(), MSAbstractLaneChangeModel::checkTraCICommands(), and MSLCM_SL2015::keepLatGap().

Here is the caller graph for this function:

◆ getOriginalSpeed()

double MSVehicle::Influencer::getOriginalSpeed ( ) const

Returns the originally longitudinal speed to use.

Returns
The speed given before influence or -1 if no influence is active

Definition at line 672 of file MSVehicle.cpp.

Referenced by MSVehicle::getSpeedWithoutTraciInfluence(), and MSVehicle::processTraCISpeedControl().

Here is the caller graph for this function:

◆ getRespectJunctionLeaderPriority()

bool MSVehicle::Influencer::getRespectJunctionLeaderPriority ( ) const
inline

Returns whether junction priority rules within the junction shall be respected (concerns vehicles within the junction)

Returns
Whether within-junction priority rules be respected

Definition at line 1526 of file MSVehicle.h.

References myRespectJunctionLeaderPriority.

Referenced by MSVehicle::checkLinkLeaderCurrentAndParallel().

Here is the caller graph for this function:

◆ getRespectJunctionPriority()

bool MSVehicle::Influencer::getRespectJunctionPriority ( ) const
inline

Returns whether junction priority rules shall be respected (concerns approaching vehicles outside the junction)

Returns
Whether junction priority rules be respected

Definition at line 1510 of file MSVehicle.h.

References myRespectJunctionPriority.

Referenced by MSLaneChanger::changeOpposite(), MSVehicle::checkRewindLinkLanes(), and MSVehicle::processLinkApproaches().

Here is the caller graph for this function:

◆ getSignals()

int MSVehicle::Influencer::getSignals ( ) const
inline

Definition at line 1580 of file MSVehicle.h.

References myTraCISignals.

Referenced by MSVehicle::setBlinkerInformation().

Here is the caller graph for this function:

◆ getSpeedMode()

int MSVehicle::Influencer::getSpeedMode ( ) const

return the current speed mode

Definition at line 445 of file MSVehicle.cpp.

◆ ignoreOverlap()

bool MSVehicle::Influencer::ignoreOverlap ( ) const
inline

Definition at line 1592 of file MSVehicle.h.

References MSVehicle::LCP_ALWAYS, and myTraciLaneChangePriority.

Referenced by MSLCM_SL2015::checkBlocking().

Here is the caller graph for this function:

◆ implicitDeltaPosRemote()

double MSVehicle::Influencer::implicitDeltaPosRemote ( const MSVehicle veh)

return the change in longitudinal position that is implicit in the new remote position

Definition at line 955 of file MSVehicle.cpp.

References DIST2SPEED, Position::distanceTo2D(), MSVehicle::getDistanceToPosition(), Named::getID(), MSBaseVehicle::getMaxSpeed(), MSVehicle::getPosition(), MIN2(), SIMSTEP, SPEED2DIST, time2string(), TL, and WRITE_WARNINGF.

Referenced by MSVehicle::updateState().

Here is the caller graph for this function:

◆ implicitSpeedRemote()

double MSVehicle::Influencer::implicitSpeedRemote ( const MSVehicle veh,
double  oldSpeed 
)

return the speed that is implicit in the new remote position

Definition at line 927 of file MSVehicle.cpp.

References DIST2SPEED, Position::distanceTo2D(), MSVehicle::getCarFollowModel(), MSVehicle::getDistanceToPosition(), MSVehicle::getLane(), MSBaseVehicle::getMaxSpeed(), MSVehicle::getPosition(), MSLane::getVehicleMaxSpeed(), Position::INVALID, MAX2(), MIN2(), and MSCFModel::minNextSpeedEmergency().

Referenced by MSVehicle::processTraCISpeedControl().

Here is the caller graph for this function:

◆ influenceChangeDecision()

int MSVehicle::Influencer::influenceChangeDecision ( const SUMOTime  currentTime,
const MSEdge currentEdge,
const int  currentLaneIndex,
int  state 
)

Applies stored LaneChangeMode information and laneTimeLine.

Parameters
[in]currentTimeThe current simulation time
[in]currentEdgeThe current edge the vehicle is on
[in]currentLaneIndexThe index of the lane the vehicle is currently on
[in]stateThe LaneChangeAction flags as computed by the laneChangeModel
Returns
The new LaneChangeAction flags to use

Definition at line 683 of file MSVehicle.cpp.

References MSEdge::getLanes(), MSVehicle::LC_ALWAYS, MSVehicle::LC_NEVER, MSVehicle::LC_NOCONFLICT, LCA_BLOCKED, LCA_COOPERATIVE, LCA_KEEPRIGHT, LCA_LEFT, LCA_OVERLAPPING, LCA_RIGHT, LCA_SPEEDGAIN, LCA_STAY, LCA_STRATEGIC, LCA_SUBLANE, LCA_TRACI, LCA_URGENT, LCA_WANTS_LANECHANGE_OR_STAY, MSVehicle::LCP_ALWAYS, MSVehicle::LCP_NOOVERLAP, MSVehicle::LCP_OPPORTUNISTIC, MSVehicle::REQUEST_HOLD, MSVehicle::REQUEST_LEFT, MSVehicle::REQUEST_NONE, MSVehicle::REQUEST_RIGHT, time2string(), TL, toString(), and WRITE_WARNINGF.

Referenced by MSVehicle::influenceChangeDecision().

Here is the caller graph for this function:

◆ influenceSpeed()

double MSVehicle::Influencer::influenceSpeed ( SUMOTime  currentTime,
double  speed,
double  vSafe,
double  vMin,
double  vMax 
)

Applies stored velocity information on the speed to use.

The given speed is assumed to be the non-influenced speed from longitudinal control. It is stored for further usage in "myOriginalSpeed".

Parameters
[in]currentTimeThe current simulation time
[in]speedThe undisturbed speed
[in]vSafeThe safe velocity
[in]vMinThe minimum velocity
[in]vMaxThe maximum simulation time
Returns
The speed to use

Definition at line 490 of file MSVehicle.cpp.

References DELTA_T, MAX2(), MIN2(), and STEPS2TIME.

Referenced by MSVehicle::planMoveInternal(), and MSVehicle::processTraCISpeedControl().

Here is the caller graph for this function:

◆ init()

void MSVehicle::Influencer::init ( )
private

Static initalization.

Definition at line 394 of file MSVehicle.cpp.

◆ isRemoteAffected()

bool MSVehicle::Influencer::isRemoteAffected ( SUMOTime  t) const

Definition at line 827 of file MSVehicle.cpp.

References TIME2STEPS.

Referenced by MSLane::detectCollisionBetween(), GUIVehicle::drawRouteHelper(), MSVehicle::getPosition(), MSLane::handleCollisionBetween(), and MSLane::handleIntermodalCollisionBetween().

Here is the caller graph for this function:

◆ isRemoteControlled()

bool MSVehicle::Influencer::isRemoteControlled ( ) const

Definition at line 821 of file MSVehicle.cpp.

References MSNet::getCurrentTimeStep(), and MSNet::getInstance().

Referenced by MSVehicle::isRemoteControlled(), and MSVehicle::processTraCISpeedControl().

Here is the caller graph for this function:

◆ postProcessRemoteControl()

void MSVehicle::Influencer::postProcessRemoteControl ( MSVehicle v)

◆ resetLatDist()

void MSVehicle::Influencer::resetLatDist ( )
inline

Definition at line 1588 of file MSVehicle.h.

References myLatDist.

Referenced by MSAbstractLaneChangeModel::checkTraCICommands().

Here is the caller graph for this function:

◆ setExtraImpatience()

void MSBaseVehicle::BaseInfluencer::setExtraImpatience ( double  value)
inlineinherited

Sets routing behavior.

Parameters
[in]valuean enum value controlling the different modes

Definition at line 905 of file MSBaseVehicle.h.

References MSBaseVehicle::BaseInfluencer::myExtraImpatience.

Referenced by MSVehicle::updateWaitingTime().

Here is the caller graph for this function:

◆ setLaneChangeMode()

void MSVehicle::Influencer::setLaneChangeMode ( int  value)

Sets lane changing behavior.

Parameters
[in]valuea bitset controlling the different modes

Definition at line 797 of file MSVehicle.cpp.

Referenced by MSDevice_ToC::deactivateDeliberateLCs(), MSDevice_Bluelight::notifyMove(), MSDevice_ToC::resetDeliberateLCs(), and LIBSUMO_NAMESPACE::Vehicle::setLaneChangeMode().

Here is the caller graph for this function:

◆ setLaneTimeLine()

void MSVehicle::Influencer::setLaneTimeLine ( const std::vector< std::pair< SUMOTime, int > > &  laneTimeLine)

Sets a new lane timeline.

Parameters
[in]laneTimeLineThe time line of lanes to use

Definition at line 426 of file MSVehicle.cpp.

Referenced by LIBSUMO_NAMESPACE::Vehicle::changeLane(), LIBSUMO_NAMESPACE::Vehicle::changeLaneRelative(), and MSDevice_ToC::MRMExecutionStep().

Here is the caller graph for this function:

◆ setOriginalSpeed()

void MSVehicle::Influencer::setOriginalSpeed ( double  speed)

Stores the originally longitudinal speed.

Definition at line 677 of file MSVehicle.cpp.

Referenced by MSVehicle::processTraCISpeedControl().

Here is the caller graph for this function:

◆ setRemoteControlled()

void MSVehicle::Influencer::setRemoteControlled ( Position  xyPos,
MSLane l,
double  pos,
double  posLat,
double  angle,
int  edgeOffset,
const ConstMSEdgeVector route,
SUMOTime  t 
)

Definition at line 808 of file MSVehicle.cpp.

Referenced by libsumo::Helper::setRemoteControlled().

Here is the caller graph for this function:

◆ setSignals()

void MSVehicle::Influencer::setSignals ( int  signals)
inline

Definition at line 1576 of file MSVehicle.h.

References myTraCISignals.

Referenced by MSVehicle::setBlinkerInformation(), and LIBSUMO_NAMESPACE::Vehicle::setSignals().

Here is the caller graph for this function:

◆ setSpeedMode()

void MSVehicle::Influencer::setSpeedMode ( int  speedMode)

Sets speed-constraining behaviors.

Parameters
[in]valuea bitset controlling the different modes

Definition at line 786 of file MSVehicle.cpp.

Referenced by MSDevice_FCDReplay::move(), MSDevice_Bluelight::notifyMove(), MSCFModel_CC::setParameter(), and LIBSUMO_NAMESPACE::Vehicle::setSpeedMode().

Here is the caller graph for this function:

◆ setSpeedTimeLine()

void MSVehicle::Influencer::setSpeedTimeLine ( const std::vector< std::pair< SUMOTime, double > > &  speedTimeLine)

Sets a new velocity timeline.

Parameters
[in]speedTimeLineThe time line of speeds to use

Definition at line 404 of file MSVehicle.cpp.

Referenced by MSDevice_GLOSA::adaptSpeed(), MSDevice_ToC::MRMExecutionStep(), MSDevice_Bluelight::notifyMove(), LIBSUMO_NAMESPACE::Vehicle::setAcceleration(), LIBSUMO_NAMESPACE::Vehicle::setSpeed(), and LIBSUMO_NAMESPACE::Vehicle::slowDown().

Here is the caller graph for this function:

◆ setSublaneChange()

void MSVehicle::Influencer::setSublaneChange ( double  latDist)

Sets a new sublane-change request.

Parameters
[in]latDistThe lateral distance for changing

Definition at line 440 of file MSVehicle.cpp.

Referenced by LIBSUMO_NAMESPACE::Vehicle::changeSublane(), and MSLaneChangerSublane::startChangeSublane().

Here is the caller graph for this function:

◆ updateRemoteControlRoute()

void MSVehicle::Influencer::updateRemoteControlRoute ( MSVehicle v)

update route if provided by remote control

Definition at line 833 of file MSVehicle.cpp.

References MSLane::getEdge(), MSRoute::getEdges(), Named::getID(), MSVehicle::getLane(), MSBaseVehicle::getRoute(), MSBaseVehicle::replaceRouteEdges(), SIMSTEP, toString(), and MSVehicle::updateBestLanes().

Referenced by MSVehicle::planMove().

Here is the caller graph for this function:

Field Documentation

◆ myConsiderMaxAcceleration

bool MSVehicle::Influencer::myConsiderMaxAcceleration
private

Whether the maximum acceleration shall be regarded.

Definition at line 1624 of file MSVehicle.h.

◆ myConsiderMaxDeceleration

bool MSVehicle::Influencer::myConsiderMaxDeceleration
private

Whether the maximum deceleration shall be regarded.

Definition at line 1627 of file MSVehicle.h.

◆ myConsiderSafeVelocity

bool MSVehicle::Influencer::myConsiderSafeVelocity
private

Whether the safe velocity shall be regarded.

Definition at line 1621 of file MSVehicle.h.

Referenced by considerSafeVelocity().

◆ myCooperativeLC

LaneChangeMode MSVehicle::Influencer::myCooperativeLC
private

lane changing with the intent to help other vehicles

Definition at line 1652 of file MSVehicle.h.

◆ myEmergencyBrakeRedLight

bool MSVehicle::Influencer::myEmergencyBrakeRedLight
private

Whether red lights are a reason to brake.

Definition at line 1633 of file MSVehicle.h.

Referenced by getEmergencyBrakeRedLight().

◆ myExtraImpatience

double MSBaseVehicle::BaseInfluencer::myExtraImpatience = 0
protectedinherited

◆ myGapControlState

std::shared_ptr<GapControlState> MSVehicle::Influencer::myGapControlState
private

The gap control state.

Definition at line 1609 of file MSVehicle.h.

◆ myLaneTimeLine

std::vector<std::pair<SUMOTime, int> > MSVehicle::Influencer::myLaneTimeLine
private

The lane usage time line to apply.

Definition at line 1606 of file MSVehicle.h.

◆ myLastRemoteAccess

SUMOTime MSVehicle::Influencer::myLastRemoteAccess
private

Definition at line 1645 of file MSVehicle.h.

Referenced by getLastAccessTimeStep().

◆ myLatDist

double MSVehicle::Influencer::myLatDist
private

The requested lateral change.

Definition at line 1615 of file MSVehicle.h.

Referenced by getLatDist(), and resetLatDist().

◆ myOriginalSpeed

double MSVehicle::Influencer::myOriginalSpeed
private

The velocity before influence.

Definition at line 1612 of file MSVehicle.h.

◆ myRemoteAngle

double MSVehicle::Influencer::myRemoteAngle
private

Definition at line 1642 of file MSVehicle.h.

◆ myRemoteEdgeOffset

int MSVehicle::Influencer::myRemoteEdgeOffset
private

Definition at line 1643 of file MSVehicle.h.

◆ myRemoteLane

MSLane* MSVehicle::Influencer::myRemoteLane
private

Definition at line 1639 of file MSVehicle.h.

◆ myRemotePos

double MSVehicle::Influencer::myRemotePos
private

Definition at line 1640 of file MSVehicle.h.

◆ myRemotePosLat

double MSVehicle::Influencer::myRemotePosLat
private

Definition at line 1641 of file MSVehicle.h.

◆ myRemoteRoute

ConstMSEdgeVector MSVehicle::Influencer::myRemoteRoute
private

Definition at line 1644 of file MSVehicle.h.

◆ myRemoteXYPos

Position MSVehicle::Influencer::myRemoteXYPos
private

Definition at line 1638 of file MSVehicle.h.

◆ myRespectJunctionLeaderPriority

bool MSVehicle::Influencer::myRespectJunctionLeaderPriority
private

Whether the junction priority rules are respected (within)

Definition at line 1636 of file MSVehicle.h.

Referenced by getRespectJunctionLeaderPriority().

◆ myRespectJunctionPriority

bool MSVehicle::Influencer::myRespectJunctionPriority
private

Whether the junction priority rules are respected (approaching)

Definition at line 1630 of file MSVehicle.h.

Referenced by getRespectJunctionPriority().

◆ myRightDriveLC

LaneChangeMode MSVehicle::Influencer::myRightDriveLC
private

changing to the rightmost lane

Definition at line 1656 of file MSVehicle.h.

◆ mySpeedAdaptationStarted

bool MSVehicle::Influencer::mySpeedAdaptationStarted
private

Whether influencing the speed has already started.

Definition at line 1618 of file MSVehicle.h.

◆ mySpeedGainLC

LaneChangeMode MSVehicle::Influencer::mySpeedGainLC
private

lane changing to travel with higher speed

Definition at line 1654 of file MSVehicle.h.

◆ mySpeedTimeLine

std::vector<std::pair<SUMOTime, double> > MSVehicle::Influencer::mySpeedTimeLine
private

The velocity time line to apply.

Definition at line 1603 of file MSVehicle.h.

◆ myStrategicLC

LaneChangeMode MSVehicle::Influencer::myStrategicLC
private

lane changing which is necessary to follow the current route

Definition at line 1650 of file MSVehicle.h.

◆ mySublaneLC

LaneChangeMode MSVehicle::Influencer::mySublaneLC
private

changing to the prefered lateral alignment

Definition at line 1658 of file MSVehicle.h.

◆ myTraciLaneChangePriority

TraciLaneChangePriority MSVehicle::Influencer::myTraciLaneChangePriority
private

flags for determining the priority of traci lane change requests

Definition at line 1661 of file MSVehicle.h.

Referenced by ignoreOverlap().

◆ myTraCISignals

int MSVehicle::Influencer::myTraCISignals
private

Definition at line 1664 of file MSVehicle.h.

Referenced by getSignals(), and setSignals().


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