Eclipse SUMO - Simulation of Urban MObility
GUILane Class Reference

Representation of a lane in the micro simulation (gui-version) More...

#include <GUILane.h>

Inheritance diagram for GUILane:
[legend]
Collaboration diagram for GUILane:
[legend]

Public Types

enum  CollisionAction { COLLISION_ACTION_NONE , COLLISION_ACTION_WARN , COLLISION_ACTION_TELEPORT , COLLISION_ACTION_REMOVE }
 
typedef std::map< std::string, std::string > Map
 parameters map More...
 
enum  MinorLinkMode { FOLLOW_NEVER = 0 , FOLLOW_ALWAYS = 1 , FOLLOW_ONCOMING = 2 }
 determine whether/how getFollowers looks upstream beyond minor links More...
 
typedef std::vector< MSVehicle * > VehCont
 Container for vehicles. More...
 

Public Member Functions

void addApproachingLane (MSLane *lane, bool warnMultiCon)
 
void addIncomingLane (MSLane *lane, MSLink *viaLink)
 
void addLeaders (const MSVehicle *vehicle, double vehPos, MSLeaderDistanceInfo &result, bool oppositeDirection=false)
 get leaders for ego on the given lane More...
 
void addParking (MSBaseVehicle *veh)
 add parking vehicle. This should only used during state loading More...
 
void addTo (const StoringVisitor &cont) const
 Adds this object to the given container. More...
 
bool allowsChangingLeft (SUMOVehicleClass vclass) const
 Returns whether the given vehicle class may change left from this lane. More...
 
bool allowsChangingRight (SUMOVehicleClass vclass) const
 Returns whether the given vehicle class may change left from this lane. More...
 
bool allowsVehicleClass (SUMOVehicleClass vclass) const
 
virtual bool appropriate (const MSVehicle *veh) const
 
void changeLanes (const SUMOTime time)
 
void checkBufferType ()
 
void clearParameter ()
 Clears the parameter map. More...
 
void detectCollisions (SUMOTime timestep, const std::string &stage) override
 
virtual void drawGLAdditional (GUISUMOAbstractView *const parent, const GUIVisualizationSettings &s) const
 Draws additional, user-triggered visualisations. More...
 
void drawName (const Position &pos, const double scale, const GUIVisualizationTextSettings &settings, const double angle=0, bool forceShow=false) const
 draw name of item More...
 
bool empty () const
 Returns true if there is not a single vehicle on the lane. More...
 
void enteredByLaneChange (MSVehicle *v)
 
MSLanegetBidiLane () const
 retrieve bidirectional lane or nullptr More...
 
MSLanegetCanonicalPredecessorLane () const
 
MSLanegetCanonicalSuccessorLane () const
 
double getCenterOnEdge () const
 
std::pair< MSVehicle *const, double > getCriticalLeader (double dist, double seen, double speed, const MSVehicle &veh) const
 Returns the most dangerous leader and the distance to him. More...
 
int getCrossingIndex () const
 return the index of the link to the next crossing if this is walkingArea, else -1 More...
 
double getDouble (const std::string &key, const double defaultValue) const
 Returns the value for a given key converted to a double. More...
 
std::vector< double > getDoubles (const std::string &key, std::vector< double > defaultValue=std::vector< double >()) const
 Returns the value for a given key converted to a list of doubles. More...
 
MSEdgegetEdge () const
 Returns the lane's edge. More...
 
const MSLinkgetEntryLink () const
 Returns the entry link if this is an internal lane, else nullptr. More...
 
MSVehiclegetFirstAnyVehicle () const
 returns the first vehicle that is fully or partially on this lane More...
 
const MSLanegetFirstInternalInConnection (double &offset) const
 Returns 0 if the lane is not internal. Otherwise the first part of the connection (sequence of internal lanes along junction) corresponding to the lane is returned and the offset is set to the distance of the begin of this lane to the begin of the returned. More...
 
std::pair< MSVehicle *const, double > getFollower (const MSVehicle *ego, double egoPos, double dist, MinorLinkMode mLinkMode) const
 Find follower vehicle for the given ego vehicle (which may be on the opposite direction lane) More...
 
MSLeaderDistanceInfo getFollowersOnConsecutive (const MSVehicle *ego, double backOffset, bool allSublanes, double searchDist=-1, MinorLinkMode mLinkMode=FOLLOW_ALWAYS) const
 return the sublane followers with the largest missing rear gap among all predecessor lanes (within dist) More...
 
const std::string & getID () const
 Returns the id. More...
 
const std::vector< IncomingLaneInfo > & getIncomingLanes () const
 
LinkState getIncomingLinkState () const
 get the state of the link from the logical predecessor to this lane More...
 
const MSLanegetInternalFollowingLane (const MSLane *const) const
 returns the internal lane leading to the given lane or nullptr, if there is none More...
 
const StopOffsetgetLaneStopOffsets () const
 Returns vehicle class specific stopOffsets. More...
 
MSVehiclegetLastAnyVehicle () const
 returns the last vehicle that is fully or partially on this lane More...
 
MSVehiclegetLastFullVehicle () const
 returns the last vehicle for which this lane is responsible or 0 More...
 
std::pair< MSVehicle *const, double > getLeader (const MSVehicle *veh, const double vehPos, const std::vector< MSLane * > &bestLaneConts, double dist=-1, bool checkTmpVehicles=false) const
 Returns the immediate leader of veh and the distance to veh starting on this lane. More...
 
std::pair< MSVehicle *const, double > getLeaderOnConsecutive (double dist, double seen, double speed, const MSVehicle &veh, const std::vector< MSLane * > &bestLaneConts) const
 Returns the immediate leader and the distance to him. More...
 
void getLeadersOnConsecutive (double dist, double seen, double speed, const MSVehicle *ego, const std::vector< MSLane * > &bestLaneConts, MSLeaderDistanceInfo &result, bool oppositeDirection=false) const
 Returns the immediate leaders and the distance to them (as getLeaderOnConsecutive but for the sublane case) More...
 
const std::vector< MSLink * > & getLinkCont () const
 returns the container with all links !!! More...
 
const MSLinkgetLinkTo (const MSLane *const) const
 returns the link to the given lane or nullptr, if it is not connected More...
 
MSLanegetLogicalPredecessorLane () const
 get the most likely precedecessor lane (sorted using by_connections_to_sorter). The result is cached in myLogicalPredecessorLane More...
 
MSLanegetLogicalPredecessorLane (const MSEdge &fromEdge) const
 return the (first) predecessor lane from the given edge More...
 
double getMaximumBrakeDist () const
 compute maximum braking distance on this lane More...
 
double getMissingRearGap (const MSVehicle *leader, double backOffset, double leaderSpeed) const
 return by how much further the leader must be inserted to avoid rear end collisions More...
 
const MSEdgegetNextNormal () const
 Returns the lane's follower if it is an internal lane, the edge of the lane otherwise. More...
 
std::vector< const MSLane * > getNormalIncomingLanes () const
 get the list of all direct (disregarding internal predecessors) non-internal predecessor lanes of this lane More...
 
const MSLanegetNormalPredecessorLane () const
 get normal lane leading to this internal lane, for normal lanes, the lane itself is returned More...
 
MSLanegetOpposite () const
 return the neighboring opposite direction lane for lane changing or nullptr More...
 
std::pair< MSVehicle *const, double > getOppositeFollower (const MSVehicle *ego) const
 
std::pair< MSVehicle *const, double > getOppositeLeader (const MSVehicle *ego, double dist, bool oppositeDir, MinorLinkMode mLinkMode=MinorLinkMode::FOLLOW_NEVER) const
 
double getOppositePos (double pos) const
 return the corresponding position on the opposite lane More...
 
const std::vector< std::pair< const MSLane *, const MSEdge * > > getOutgoingViaLanes () const
 get the list of outgoing lanes More...
 
MSLanegetParallelLane (int offset, bool includeOpposite=true) const
 Returns the lane with the given offset parallel to this one or 0 if it does not exist. More...
 
MSLanegetParallelOpposite () const
 return the opposite direction lane of this lanes edge or nullptr More...
 
virtual const std::string getParameter (const std::string &key, const std::string defaultValue="") const
 Returns the value for a given key. More...
 
const Parameterised::MapgetParametersMap () const
 Returns the inner key/value map. More...
 
std::string getParametersStr (const std::string kvsep="=", const std::string sep="|") const
 Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN". More...
 
std::string getParentName () const override
 Returns the name of the parent object (if any) More...
 
const std::set< const MSBaseVehicle * > & getParkingVehicles () const
 retrieve the parking vehicles (see GUIParkingArea) More...
 
MSVehiclegetPartialBehind (const MSVehicle *ego) const
 
MSLeaderInfo getPartialBeyond () const
 get all vehicles that are inlapping from consecutive edges More...
 
int getRightmostSublane () const
 
double getRightSideOnEdge () const
 
SumoRNGgetRNG () const
 return the associated RNG More...
 
int getRNGIndex () const
 returns the associated RNG index More...
 
double getSpaceTillLastStanding (const MSVehicle *ego, bool &foundStopped) const
 return the empty space up to the last standing vehicle or the empty space on the whole lane if no vehicle is standing More...
 
std::vector< StopWatch< std::chrono::nanoseconds > > & getStopWatch ()
 
std::set< MSVehicle * > getSurroundingVehicles (double startPos, double downstreamDist, double upstreamDist, std::shared_ptr< LaneCoverageInfo > checkedLanes) const
 Returns all vehicles closer than downstreamDist along the road network starting on the given position. Predecessor lanes are searched upstream for the given upstreamDistance. More...
 
int getThreadIndex () const
 returns the associated thread index More...
 
std::vector< const MSJunction * > getUpcomingJunctions (double pos, double range, const std::vector< MSLane * > &contLanes) const
 Returns all upcoming junctions within given range along the given (non-internal) continuation lanes measured from given position. More...
 
std::vector< const MSLink * > getUpcomingLinks (double pos, double range, const std::vector< MSLane * > &contLanes) const
 Returns all upcoming links within given range along the given (non-internal) continuation lanes measured from given position. More...
 
std::set< MSVehicle * > getVehiclesInRange (const double a, const double b) const
 Returns all vehicles on the lane overlapping with the interval [a,b]. More...
 
double getVehicleStopOffset (const MSVehicle *veh) const
 Returns vehicle class specific stopOffset for the vehicle. More...
 
 GUILane (const std::string &id, double maxSpeed, double friction, double length, MSEdge *const edge, int numericalID, const PositionVector &shape, double width, SVCPermissions permissions, SVCPermissions changeLeft, SVCPermissions changeRight, int index, bool isRampAccel, const std::string &type)
 Constructor. More...
 
bool hadPermissionChanges () const
 
bool hasPedestrians () const
 whether the lane has pedestrians on it More...
 
void initRestrictions ()
 initialized vClass-specific speed limits More...
 
bool isApproachedFrom (MSEdge *const edge)
 
bool isApproachedFrom (MSEdge *const edge, MSLane *const lane)
 
bool isEmpty () const
 
bool isInternal () const
 
bool isLinkEnd (std::vector< MSLink * >::const_iterator &i) const
 
bool isLinkEnd (std::vector< MSLink * >::iterator &i)
 
bool isNormal () const
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. More...
 
void leftByLaneChange (MSVehicle *v)
 
bool mustCheckJunctionCollisions () const
 whether this lane must check for junction collisions More...
 
bool needsCollisionCheck () const
 short-circut collision check if nothing changed since the last check More...
 
std::pair< const MSPerson *, double > nextBlocking (double minPos, double minRight, double maxLeft, double stopTime=0, bool bidi=false) const
 This is just a wrapper around MSPModel::nextBlocking. You should always check using hasPedestrians before calling this method. More...
 
virtual void onLeftBtnPress (void *)
 notify object about left click More...
 
virtual void removeActiveAddVisualisation (GUISUMOAbstractView *const, int)
 remove additional user-griggered visualisations More...
 
void removeParking (MSBaseVehicle *veh) override
 remove parking vehicle More...
 
MSVehicleremoveVehicle (MSVehicle *remVehicle, MSMoveReminder::Notification notification, bool notify) override
 
void requireCollisionCheck ()
 require another collision check due to relevant changes in the simulation More...
 
void resetPartialOccupation (MSVehicle *v) override
 Removes the information about a vehicle lapping into this lane. More...
 
void resetPermissions (long long transientID)
 
void setFrictionCoefficient (double val)
 Sets a new friction coefficient for the lane [to be later (used by TraCI and MSCalibrator)]. More...
 
virtual void setID (const std::string &newID)
 resets the id More...
 
void setLaneStopOffset (const StopOffset &stopOffset)
 Set vehicle class specific stopOffsets. More...
 
void setLength (double val)
 Sets a new length for the lane (used by TraCI only) More...
 
void setMaxSpeed (double val)
 Sets a new maximum speed for the lane (used by TraCI and MSCalibrator) More...
 
virtual void setParameter (const std::string &key, const std::string &value)
 Sets a parameter. More...
 
void setParameters (const Parameterised &params)
 set the inner key/value map in map<string, string> format More...
 
void setParametersMap (const Parameterised::Map &paramsMap)
 set the inner key/value map in map<string, string> format More...
 
void setParametersStr (const std::string &paramsString, const std::string kvsep="=", const std::string sep="|")
 set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN" More...
 
double setPartialOccupation (MSVehicle *v) override
 Sets the information about a vehicle lapping into this lane. More...
 
void setPermissions (SVCPermissions permissions, long long transientID)
 Sets the permissions to the given value. If a transientID is given, the permissions are recored as temporary. More...
 
void setRightSideOnEdge (double value, int rightmostSublane)
 
void sortManeuverReservations ()
 sorts myManeuverReservations More...
 
void sortPartialVehicles ()
 sorts myPartialVehicles More...
 
void unsetParameter (const std::string &key)
 Removes a parameter. More...
 
void updateParameters (const Parameterised::Map &mapArg)
 Adds or updates all given parameters from the map. More...
 
void visit (const MSLane::StoringVisitor &cont) const
 Callback for visiting the lane when traversing an RTree. More...
 
void writeParams (OutputDevice &device) const
 write Params in the given outputdevice More...
 
 ~GUILane ()
 Destructor. More...
 
Access to vehicles
const VehContgetVehiclesSecure () const override
 Returns the vehicles container; locks it for microsimulation. More...
 
void releaseVehicles () const override
 Allows to use the container for microsimulation again. More...
 
Vehicle movement (longitudinal)
void planMovements (const SUMOTime t) override
 
void setJunctionApproaches (const SUMOTime t) const override
 
void executeMovements (const SUMOTime t) override
 
void integrateNewVehicles () override
 
Additional initialisation
void addLink (MSLink *link)
 Delayed initialization. More...
 
void setOpposite (MSLane *oppositeLane)
 Adds a neighbor to this lane. More...
 
interaction with MSMoveReminder
virtual void addMoveReminder (MSMoveReminder *rem)
 Add a move-reminder to move-reminder container. More...
 
const std::vector< MSMoveReminder * > & getMoveReminders () const
 Return the list of this lane's move reminders. More...
 
Vehicle insertion
bool insertVehicle (MSVehicle &v)
 Tries to insert the given vehicle. More...
 
bool isInsertionSuccess (MSVehicle *vehicle, double speed, double pos, double posLat, bool recheckNextLanes, MSMoveReminder::Notification notification)
 Tries to insert the given vehicle with the given state (speed and pos) More...
 
bool checkFailure (const MSVehicle *aVehicle, double &speed, double &dist, const double nspeed, const bool patchSpeed, const std::string errorMsg, InsertionCheck check) const
 
bool lastInsertion (MSVehicle &veh, double mspeed, double posLat, bool patchSpeed)
 inserts vehicle as close as possible to the last vehicle on this lane (or at the end of the lane if there is no leader) More...
 
bool freeInsertion (MSVehicle &veh, double speed, double posLat, MSMoveReminder::Notification notification=MSMoveReminder::NOTIFICATION_DEPARTED)
 Tries to insert the given vehicle on any place. More...
 
void forceVehicleInsertion (MSVehicle *veh, double pos, MSMoveReminder::Notification notification, double posLat=0)
 Inserts the given vehicle at the given position. More...
 
Handling vehicles lapping into several lanes (-> partial occupation)

or which committed a maneuver that will lead them into another (sublane case -> maneuver reservations)

virtual void setManeuverReservation (MSVehicle *v)
 Registers the lane change intentions (towards this lane) for the given vehicle. More...
 
virtual void resetManeuverReservation (MSVehicle *v)
 Unregisters a vehicle, which previously registered for maneuvering into this lane. More...
 
const MSLeaderInfo getLastVehicleInformation (const MSVehicle *ego, double latOffset, double minPos=0, bool allowCached=true) const
 Returns the last vehicles on the lane. More...
 
const MSLeaderInfo getFirstVehicleInformation (const MSVehicle *ego, double latOffset, bool onlyFrontOnLane, double maxPos=std::numeric_limits< double >::max(), bool allowCached=true) const
 analogue to getLastVehicleInformation but in the upstream direction More...
 
Access to vehicles
int getVehicleNumber () const
 Returns the number of vehicles on this lane (for which this lane is responsible) More...
 
int getVehicleNumberWithPartials () const
 Returns the number of vehicles on this lane (including partial occupators) More...
 
int getPartialVehicleNumber () const
 Returns the number of vehicles partially on this lane (for which this lane is not responsible) More...
 
AnyVehicleIterator anyVehiclesBegin () const
 begin iterator for iterating over all vehicles touching this lane in downstream direction More...
 
AnyVehicleIterator anyVehiclesEnd () const
 end iterator for iterating over all vehicles touching this lane in downstream direction More...
 
AnyVehicleIterator anyVehiclesUpstreamBegin () const
 begin iterator for iterating over all vehicles touching this lane in upstream direction More...
 
AnyVehicleIterator anyVehiclesUpstreamEnd () const
 end iterator for iterating over all vehicles touching this lane in upstream direction More...
 
Atomar value getter
int getNumericalID () const
 Returns this lane's numerical id. More...
 
double getLengthGeometryFactor () const
 return shape.length() / myLength More...
 
bool isAccelLane () const
 return whether this lane is an acceleration lane More...
 
const std::string & getLaneType () const
 return the type of this lane More...
 
double interpolateLanePosToGeometryPos (double lanePos) const
 
const Position geometryPositionAtOffset (double offset, double lateralOffset=0) const
 
double interpolateGeometryPosToLanePos (double geometryPos) const
 
double getVehicleMaxSpeed (const SUMOTrafficObject *const veh) const
 Returns the lane's maximum speed, given a vehicle's speed limit adaptation. More...
 
double getSpeedLimit () const
 Returns the lane's maximum allowed speed. More...
 
double getFrictionCoefficient () const
 Returns the lane's friction coefficient. More...
 
double getLength () const
 Returns the lane's length. More...
 
SVCPermissions getPermissions () const
 Returns the vehicle class permissions for this lane. More...
 
double getWidth () const
 Returns the lane's width. More...
 
int getIndex () const
 Returns the lane's index. More...
 
Vehicle movement (longitudinal)
void updateLeaderInfo (const MSVehicle *veh, VehCont::reverse_iterator &vehPart, VehCont::reverse_iterator &vehRes, MSLeaderInfo &ahead) const
 This updates the MSLeaderInfo argument with respect to the given MSVehicle. All leader-vehicles on the same edge, which are relevant for the vehicle (i.e. with position > vehicle's position) and not already integrated into the LeaderInfo, are integrated. The given iterators vehPart and vehRes give access to these vehicles which are either partial occupators or have issued a maneuver reservation for the lane (the latter occurs only for the sublane model). More...
 
void updateLengthSum ()
 updated current vehicle length sum (delayed to avoid lane-order-dependency) More...
 
Current state retrieval
double getMeanSpeed () const
 Returns the mean speed on this lane. More...
 
double getMeanSpeedBike () const
 get the mean speed of all bicycles on this lane More...
 
double getWaitingSeconds () const
 Returns the overall waiting time on this lane. More...
 
double getBruttoOccupancy () const
 Returns the brutto (including minGaps) occupancy of this lane during the last step. More...
 
double getNettoOccupancy () const
 Returns the netto (excluding minGaps) occupancy of this lane during the last step (including minGaps) More...
 
double getBruttoVehLenSum () const
 Returns the sum of lengths of vehicles, including their minGaps, which were on the lane during the last step. More...
 
template<PollutantsInterface::EmissionType ET>
double getEmissions () const
 Returns the sum of last step emissions The value is always per 1s, so multiply by step length if necessary. More...
 
double getHarmonoise_NoiseEmissions () const
 Returns the sum of last step noise emissions. More...
 
State saving/loading
void saveState (OutputDevice &out)
 Saves the state of this lane into the given stream. More...
 
void clearState ()
 Remove all vehicles before quick-loading state. More...
 
void loadState (const std::vector< std::string > &vehIDs, MSVehicleControl &vc)
 Loads the state of this segment with the given parameters. More...
 
bool hasApproaching () const
 
getter methods

Returns the full name appearing in the tool tip

Returns
This object's typed id
const std::string & getFullName () const
 
GUIGlID getGlID () const
 Returns the numerical id of the object. More...
 
FXIcon * getGLIcon () const
 get icon associated with this GL Object More...
 
interfaces to be implemented by derived classes
virtual void removedPopupMenu ()
 notify object about popup menu removal More...
 
virtual GUIParameterTableWindowgetTypeParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent)
 Returns an own type parameter window (optional) More...
 
const std::string & getMicrosimID () const
 Returns the id of the object as known to microsim. More...
 
virtual const std::string getOptionalName () const
 Returns the name of the object (default "") More...
 
virtual void setMicrosimID (const std::string &newID)
 Changes the microsimID of the object. More...
 
GUIGlObjectType getType () const
 Returns the type of the object as coded in GUIGlObjectType. More...
 
bool isBlocked () const
 get blocking status More...
 
void setBlocked (const bool state=true)
 set blocking status More...
 
virtual bool isGLObjectLocked ()
 check if element is locked (Currently used only in NETEDIT) More...
 
virtual void markAsFrontElement ()
 mark element as front element (Currently used only in NETEDIT) More...
 
virtual void deleteGLObject ()
 delete GLObject (Currently used only in NETEDIT) More...
 
virtual void selectGLObject ()
 select GLObject (Currently used only in NETEDIT) More...
 
virtual void updateGLObject ()
 update GLObject (geometry, ID, etc.) (optional) More...
 
Parameter table window I/O

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

Parameters
[in]wThe opened parameter window
void addParameterTable (GUIParameterTableWindow *w)
 
void removeParameterTable (GUIParameterTableWindow *w)
 Lets this object know a parameter window showing the object's values was closed. More...
 

Static Public Member Functions

static bool areAttributesValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas) More...
 
static bool areParametersValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN" More...
 
static void clear ()
 Clears the dictionary. More...
 
static MSLanedictionary (const std::string &id)
 Returns the MSLane associated to the key id. More...
 
static bool dictionary (const std::string &id, MSLane *lane)
 Static (sic!) container methods {. More...
 
static int dictSize ()
 Returns the number of stored lanes. More...
 
template<class RTREE >
static void fill (RTREE &into)
 Fills the given RTree with lane instances. More...
 
static CollisionAction getCollisionAction ()
 
template<class T >
static std::string getIDSecure (const T *obj, const std::string &fallBack="NULL")
 get an identifier for Named-like object which may be Null More...
 
static int getNumRNGs ()
 return the number of RNGs More...
 
static void initCollisionOptions (const OptionsCont &oc)
 
static void initRNGs (const OptionsCont &oc)
 initialize rngs More...
 
static void insertIDs (std::vector< std::string > &into)
 Adds the ids of all stored lanes into the given vector. More...
 
static void loadRNGState (int index, const std::string &state)
 load random number generator state for the given rng index More...
 
static void saveRNGStates (OutputDevice &out)
 save random number generator states to the given output device More...
 
static std::vector< MSLink * >::const_iterator succLinkSec (const SUMOVehicle &veh, int nRouteSuccs, const MSLane &succLinkSource, const std::vector< MSLane * > &conts)
 

Static Public Attributes

static const long CHANGE_PERMISSIONS_GUI = 1
 
static const long CHANGE_PERMISSIONS_PERMANENT = 0
 
static const GUIGlID INVALID_ID = 0
 
static StringBijection< GUIGlObjectTypeTypeNames
 associates object types with strings More...
 

Protected Types

typedef std::map< std::string, MSLane * > DictType
 definition of the static dictionary type More...
 

Protected Member Functions

void buildAdditionalsPopupOptions (GUIMainWindow &app, GUIGLObjectPopupMenu *ret, const std::string &type)
 build basic additional popup options. Used to unify pop-ups menu in netedit and SUMO-GUI More...
 
void buildShapePopupOptions (GUIMainWindow &app, GUIGLObjectPopupMenu *ret, const std::string &type)
 build basic shape popup options. Used to unify pop-ups menu in netedit and SUMO-GUI More...
 
bool checkForPedestrians (const MSVehicle *aVehicle, double &speed, double &dist, double pos, bool patchSpeed) const
 check whether pedestrians on this lane interfere with vehicle insertion More...
 
bool detectCollisionBetween (SUMOTime timestep, const std::string &stage, MSVehicle *collider, MSVehicle *victim, std::set< const MSVehicle *, ComparatorNumericalIdLess > &toRemove, std::set< const MSVehicle *, ComparatorNumericalIdLess > &toTeleport) const
 detect whether there is a collision between the two vehicles More...
 
void detectPedestrianJunctionCollision (const MSVehicle *collider, const PositionVector &colliderBoundary, const MSLane *foeLane, SUMOTime timestep, const std::string &stage)
 detect whether a vehicle collids with pedestrians on the junction More...
 
double getDepartPosLat (const MSVehicle &veh)
 
double getDepartSpeed (const MSVehicle &veh, bool &patchSpeed)
 
double getFractionalVehicleLength (bool brutto) const
 return length of fractional vehicles on this lane More...
 
void handleCollisionBetween (SUMOTime timestep, const std::string &stage, const MSVehicle *collider, const MSVehicle *victim, double gap, double latGap, std::set< const MSVehicle *, ComparatorNumericalIdLess > &toRemove, std::set< const MSVehicle *, ComparatorNumericalIdLess > &toTeleport) const
 take action upon collision More...
 
bool hasApproaching (const std::vector< MSLink * > &links) const
 check whether any of the outgoing links are being approached More...
 
void mouseWithinGeometry (const Position &pos, const double width, const double height, const double offsetX, const double offsetY, const double rot) const
 check if mouse is within elements geometry (for rectangles) More...
 
void mouseWithinGeometry (const Position center, const double radius) const
 check if mouse is within elements geometry (for circles) More...
 
void mouseWithinGeometry (const PositionVector shape) const
 check if mouse is within elements geometry (for filled shapes) More...
 
void mouseWithinGeometry (const PositionVector shape, const double width) const
 check if mouse is within elements geometry (for shapes) More...
 
void mouseWithinGeometry (const PositionVector shape, const double width, GUIGlObject *parent) const
 check if mouse is within elements geometry (for edges) More...
 
double safeInsertionSpeed (const MSVehicle *veh, double seen, const MSLeaderInfo &leaders, double speed)
 return the maximum safe speed for insertion behind leaders (a negative value indicates that safe insertion is impossible) 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 buildShowTypeParamsPopupEntry (GUIGLObjectPopupMenu *ret, bool addSeparator=true)
 Builds an entry which allows to open the type parameter window. More...
 
void buildPositionCopyEntry (GUIGLObjectPopupMenu *ret, const GUIMainWindow &app) const
 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

std::map< MSEdge *, std::vector< MSLane * > > myApproachingLanes
 All direct internal and direct (disregarding internal predecessors) non-internal predecessor lanes of this lane. More...
 
double myBruttoVehicleLengthSum
 The current length of all vehicles on this lane, including their minGaps. More...
 
double myBruttoVehicleLengthSumToRemove
 The length of all vehicles that have left this lane in the current step (this lane, including their minGaps) More...
 
MSLanemyCanonicalPredecessorLane
 Similar to LogicalPredecessorLane,. More...
 
MSLanemyCanonicalSuccessorLane
 Main successor lane,. More...
 
SVCPermissions myChangeLeft
 The vClass permissions for changing from this lane. More...
 
SVCPermissions myChangeRight
 
MSEdge *const myEdge
 The lane's edge, for routing only. More...
 
MSLeaderInfo myFollowerInfo
 followers on all sublanes as seen by vehicles on consecutive lanes (cached) More...
 
SUMOTime myFollowerInfoTime
 time step for which myFollowerInfo was last updated More...
 
double myFrictionCoefficient
 Lane-wide friction coefficient [0..1]. More...
 
std::string myID
 The name of the object. More...
 
std::vector< IncomingLaneInfomyIncomingLanes
 All direct predecessor lanes. More...
 
int myIndex
 The lane index. More...
 
const bool myIsRampAccel
 whether this lane is an acceleration lane More...
 
StopOffset myLaneStopOffset
 
const std::string myLaneType
 the type of this lane More...
 
MSLeaderInfo myLeaderInfo
 leaders on all sublanes as seen by approaching vehicles (cached) More...
 
SUMOTime myLeaderInfoTime
 time step for which myLeaderInfo was last updated More...
 
double myLength
 Lane length [m]. More...
 
const double myLengthGeometryFactor
 precomputed myShape.length / myLength More...
 
std::vector< MSLink * > myLinks
 
MSLanemyLogicalPredecessorLane
 
VehCont myManeuverReservations
 The vehicles which registered maneuvering into the lane within their current action step. This is currently only relevant for sublane simulation, since continuous lanechanging uses the partial vehicle mechanism. More...
 
double myMaxSpeed
 Lane-wide speedlimit [m/s]. More...
 
bool myNeedsCollisionCheck
 whether a collision check is currently needed More...
 
double myNettoVehicleLengthSum
 The current length of all vehicles on this lane, excluding their minGaps. More...
 
double myNettoVehicleLengthSumToRemove
 The length of all vehicles that have left this lane in the current step (this lane, excluding their minGaps) More...
 
int myNumericalID
 Unique numerical ID (set on reading by netload) More...
 
MSLanemyOpposite
 
SVCPermissions myOriginalPermissions
 The original vClass permissions for this lane (before temporary modifications) More...
 
std::set< const MSBaseVehicle * > myParkingVehicles
 
VehCont myPartialVehicles
 The lane's partial vehicles. This container holds all vehicles that are partially on this lane but which are in myVehicles of another lane. Reasons for partial occupancies include the following. More...
 
std::map< long long, SVCPermissionsmyPermissionChanges
 
SVCPermissions myPermissions
 The vClass permissions for this lane. More...
 
const std::map< SUMOVehicleClass, double > * myRestrictions
 The vClass speed restrictions for this lane. More...
 
int myRightmostSublane
 the index of the rightmost sublane of this lane on myEdge More...
 
double myRightSideOnEdge
 the combined width of all lanes with lower index on myEdge More...
 
int myRNGIndex
 
PositionVector myShape
 The shape of the lane. More...
 
VehCont myTmpVehicles
 Container for lane-changing vehicles. After completion of lane-change- process, the containers will be swapped with myVehicles. More...
 
MFXSynchQue< MSVehicle *, std::vector< MSVehicle * > > myVehBuffer
 Buffer for vehicles that moved from their previous lane onto this one. Integrated after all vehicles executed their moves. More...
 
VehCont myVehicles
 The lane's vehicles. This container holds all vehicles that have their front (longitudinally) and their center (laterally) on this lane. These are the vehicles that this lane is 'responsibly' for (i.e. when executing movements) More...
 
const double myWidth
 Lane width [m]. More...
 

Static Protected Attributes

static DictType myDict
 Static dictionary to associate string-ids with objects. More...
 
static std::vector< SumoRNGmyRNGs
 

Private Member Functions

std::string createFullName () const
 create full name More...
 

Static Private Member Functions

static bool isParameterValid (const std::string &value, const std::string &kvsep, const std::string &sep)
 check if given string can be parsed to a parameter of type "key=value" More...
 

Private Attributes

bool myAmBlocked
 whether the object can be deleted More...
 
std::string myFullName
 full name of GL Object More...
 
const GUIGlID myGlID
 The numerical id of the object. More...
 
const GUIGlObjectType myGLObjectType
 The type of the object. More...
 
FXIcon * myIcon
 icon associatd with this GL Object More...
 
Parameterised::Map myMap
 The key->value map. More...
 
std::string myMicrosimID
 ID of GL object. More...
 
std::vector< MSMoveReminder * > myMoveReminders
 This lane's move reminder. More...
 
std::set< GUIParameterTableWindow * > myParamWindows
 Parameter table windows which refer to this object. More...
 
std::vector< StopWatch< std::chrono::nanoseconds > > myStopWatch
 

Static Private Attributes

static StringBijection< GUIGlObjectType >::Entry GUIGlObjectTypeNamesInitializer []
 vector for TypeNames Initializer More...
 
static double myCheckJunctionCollisionMinGap
 
static bool myCheckJunctionCollisions
 
static CollisionAction myCollisionAction
 the action to take on collisions More...
 
static double myCollisionMinGapFactor
 
static SUMOTime myCollisionStopTime
 
static bool myExtrapolateSubstepDepart
 

inherited from GUIGlObject

std::vector< double > myShapeRotations
 The rotations of the shape parts. More...
 
std::vector< double > myShapeLengths
 The lengths of the shape parts. More...
 
std::vector< RGBColormyShapeColors
 The color of the shape parts (cached) More...
 
std::vector< int > myShapeSegments
 the meso segment index for each geometry segment More...
 
std::vector< int > mySegmentStartIndex
 the shape indices where the meso segment changes (for segmentsIndex > 0) More...
 
double myHalfLaneWidth
 Half of lane width, for speed-up. More...
 
double myQuarterLaneWidth
 Quarter of lane width, for speed-up. More...
 
double myReachability
 the time distance from a particular edge More...
 
std::vector< MSParkingArea * > * myParkingAreas
 list of parkingAreas on this lane More...
 
TesselatedPolygonmyTesselation
 An object that stores the tesselation. More...
 
bool myAmClosed
 state for dynamic lane closings More...
 
FXMutex myLock
 The mutex used to avoid concurrent updates of the vehicle buffer. More...
 
static GUIVisualizationSettingsmyCachedGUISettings
 cached for tracking color value More...
 
static const RGBColor MESO_USE_LANE_COLOR
 special color to signify alternative coloring scheme More...
 
GUIGLObjectPopupMenugetPopUpMenu (GUIMainWindow &app, GUISUMOAbstractView &parent) override
 Returns an own popup-menu. More...
 
GUIParameterTableWindowgetParameterWindow (GUIMainWindow &app, GUISUMOAbstractView &parent) override
 Returns an own parameter window. More...
 
double getExaggeration (const GUIVisualizationSettings &s) const override
 return exaggeration associated with this GLObject More...
 
Boundary getCenteringBoundary () const override
 Returns the boundary to which the view shall be centered in order to show the object. More...
 
void drawGL (const GUIVisualizationSettings &s) const override
 Draws the object. More...
 
double getClickPriority () const override
 Returns the priority of receiving mouse clicks. More...
 
const PositionVectorgetShape () const
 
const std::vector< double > & getShapeRotations () const
 
const std::vector< double > & getShapeLengths () const
 
double firstWaitingTime () const
 
void drawMarkings (const GUIVisualizationSettings &s, double scale) const
 draw lane borders and white markings More...
 
void drawBikeMarkings () const
 bike lane markings on top of an intersection More...
 
void drawJunctionChangeProhibitions () const
 bike lane markings on top of an intersection More...
 
void drawDirectionIndicators (double exaggeration, bool spreadSuperposed) const
 direction indicators for lanes More...
 
void debugDrawFoeIntersections () const
 draw intersection positions of foe internal lanes with this one More...
 
double getEdgeLaneNumber () const
 
double getStoredEdgeTravelTime () const
 Returns the stored traveltime for the edge of this lane. More...
 
double getLoadedEdgeWeight () const
 Returns the loaded weight (effort) for the edge of this lane. More...
 
void setReachability (double value)
 
double getReachability () const
 
void closeTraffic (bool rebuildAllowed=true)
 close this lane for traffic More...
 
bool isClosed () const
 
double getColorValue (const GUIVisualizationSettings &s, int activeScheme) const override
 gets the color value according to the current scheme index More...
 
double getColorValueWithFunctional (const GUIVisualizationSettings &s, int activeScheme) const
 gets the color value according to the current scheme index including values for things that set the color indirectly More...
 
double getColorValueForTracker () const
 return color value based on cached settings More...
 
bool isSelected () const override
 whether this lane is selected in the GUI More...
 
bool setFunctionalColor (const GUIColorer &c, RGBColor &col, int activeScheme=-1) const
 
bool drawAsRailway (const GUIVisualizationSettings &s) const
 whether to draw this lane as a railway More...
 
void swapAfterLaneChange (SUMOTime t) override
 moves myTmpVehicles int myVehicles after a lane change procedure More...
 
void incorporateVehicle (MSVehicle *veh, double pos, double speed, double posLat, const MSLane::VehCont::iterator &at, MSMoveReminder::Notification notification=MSMoveReminder::NOTIFICATION_DEPARTED) override
 Inserts the vehicle into this lane, and informs it about entering the network. More...
 
void drawLinkNo (const GUIVisualizationSettings &s) const
 helper methods More...
 
void drawTLSLinkNo (const GUIVisualizationSettings &s, const GUINet &net) const
 
void drawLinkRules (const GUIVisualizationSettings &s, const GUINet &net) const
 
void drawLinkRule (const GUIVisualizationSettings &s, const GUINet &net, const MSLink *link, const PositionVector &shape, double x1, double x2) const
 
void drawArrows () const
 
void drawLane2LaneConnections (double exaggeration) const
 
PositionVector splitAtSegments (const PositionVector &shape)
 add intermediate points at segment borders More...
 
double getPendingEmits () const
 get number of vehicles waiting for departure on this lane More...
 
double getScaleValue (int activeScheme) const
 gets the scaling value according to the current scheme index More...
 
bool setMultiColor (const GUIVisualizationSettings &s, const GUIColorer &c, RGBColor &col) const
 sets multiple colors according to the current scheme index and some lane function More...
 
RGBColor setColor (const GUIVisualizationSettings &s) const
 sets the color according to the currente settings More...
 
bool drawAsWaterway (const GUIVisualizationSettings &s) const
 whether to draw this lane as a waterway More...
 
bool isLaneOrEdgeSelected () const
 whether this lane or its parent edge is selected in the GUI More...
 

Detailed Description

Representation of a lane in the micro simulation (gui-version)

An extended MSLane. A mechanism to avoid concurrent visualisation and simulation what may cause problems when vehicles disappear is implemented using a mutex.

Definition at line 60 of file GUILane.h.

Member Typedef Documentation

◆ DictType

typedef std::map< std::string, MSLane* > MSLane::DictType
protectedinherited

definition of the static dictionary type

Definition at line 1498 of file MSLane.h.

◆ Map

typedef std::map<std::string, std::string> Parameterised::Map
inherited

parameters map

Definition at line 45 of file Parameterised.h.

◆ VehCont

typedef std::vector<MSVehicle*> MSLane::VehCont
inherited

Container for vehicles.

Definition at line 119 of file MSLane.h.

Member Enumeration Documentation

◆ CollisionAction

enum MSLane::CollisionAction
inherited
Enumerator
COLLISION_ACTION_NONE 
COLLISION_ACTION_WARN 
COLLISION_ACTION_TELEPORT 
COLLISION_ACTION_REMOVE 

Definition at line 201 of file MSLane.h.

◆ MinorLinkMode

enum MSLane::MinorLinkMode
inherited

determine whether/how getFollowers looks upstream beyond minor links

Enumerator
FOLLOW_NEVER 
FOLLOW_ALWAYS 
FOLLOW_ONCOMING 

Definition at line 902 of file MSLane.h.

Constructor & Destructor Documentation

◆ GUILane()

GUILane::GUILane ( const std::string &  id,
double  maxSpeed,
double  friction,
double  length,
MSEdge *const  edge,
int  numericalID,
const PositionVector shape,
double  width,
SVCPermissions  permissions,
SVCPermissions  changeLeft,
SVCPermissions  changeRight,
int  index,
bool  isRampAccel,
const std::string &  type 
)

Constructor.

Parameters
[in]idThe lane's id
[in]maxSpeedThe speed allowed on this lane
[in]frictionThe initial friction on this lane
[in]lengthThe lane's length
[in]edgeThe edge this lane belongs to
[in]numericalIDThe numerical id of the lane
[in]shapeThe shape of the lane
[in]widthThe width of the lane
[in]permissionsEncoding of vehicle classes that may drive on this lane
See also
SUMOVehicleClass
MSLane

Definition at line 73 of file GUILane.cpp.

References Position::distanceTo2D(), MSGlobals::gUseMesoSim, LANE, PositionVector::length(), myHalfLaneWidth, myQuarterLaneWidth, MSLane::myShape, myShapeColors, myShapeLengths, myShapeRotations, myShapeSegments, MSLane::myWidth, RAD2DEG, splitAtSegments(), Position::x(), and Position::y().

◆ ~GUILane()

GUILane::~GUILane ( )

Destructor.

Definition at line 110 of file GUILane.cpp.

References myLock, myParkingAreas, and myTesselation.

Member Function Documentation

◆ addApproachingLane()

void MSLane::addApproachingLane ( MSLane lane,
bool  warnMultiCon 
)
inherited

Definition at line 2537 of file MSLane.cpp.

References MSLane::getEdge(), Named::getID(), MSEdge::isInternal(), MSLane::myApproachingLanes, TL, and WRITE_WARNINGF.

Referenced by NLHandler::addConnection().

Here is the caller graph for this function:

◆ addIncomingLane()

void MSLane::addIncomingLane ( MSLane lane,
MSLink viaLink 
)
inherited

Definition at line 2527 of file MSLane.cpp.

References MSLane::getLength(), MSLane::IncomingLaneInfo::lane, MSLane::IncomingLaneInfo::length, MSLane::myIncomingLanes, and MSLane::IncomingLaneInfo::viaLink.

Referenced by NLHandler::addConnection().

Here is the caller graph for this function:

◆ addLeaders()

◆ addLink()

void MSLane::addLink ( MSLink link)
inherited

Delayed initialization.

Not all lane-members are known at the time the lane is born, above all the pointers to other lanes, so we have to add them later.

Parameters
[in]linkAn outgoing link

Definition at line 310 of file MSLane.cpp.

References MSLane::myLinks.

Referenced by NLHandler::addConnection().

Here is the caller graph for this function:

◆ addMoveReminder()

void MSLane::addMoveReminder ( MSMoveReminder rem)
virtualinherited

Add a move-reminder to move-reminder container.

The move reminder will not be deleted by the lane.

Parameters
[in]remThe move reminder to add

Definition at line 326 of file MSLane.cpp.

References MSLane::myMoveReminders, and MSLane::myVehicles.

Referenced by MSMoveReminder::MSMoveReminder().

Here is the caller graph for this function:

◆ addParameterTable()

void GUIGlObject::addParameterTable ( GUIParameterTableWindow w)
inherited

Definition at line 363 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

Referenced by GUIParameterTableWindow::GUIParameterTableWindow().

Here is the caller graph for this function:

◆ addParking()

void MSLane::addParking ( MSBaseVehicle veh)
inherited

add parking vehicle. This should only used during state loading

Definition at line 3323 of file MSLane.cpp.

References MSLane::myParkingVehicles.

Referenced by MSVehicleTransfer::loadState().

Here is the caller graph for this function:

◆ addTo()

void Named::addTo ( const StoringVisitor cont) const
inlineinherited

Adds this object to the given container.

Parameters
[in,filled]cont The container to add this item to

Definition at line 118 of file Named.h.

References Named::StoringVisitor::add().

◆ allowsChangingLeft()

bool MSLane::allowsChangingLeft ( SUMOVehicleClass  vclass) const
inlineinherited

Returns whether the given vehicle class may change left from this lane.

Definition at line 861 of file MSLane.h.

References MSLane::myChangeLeft.

Referenced by MSLaneChanger::changeOpposite().

Here is the caller graph for this function:

◆ allowsChangingRight()

bool MSLane::allowsChangingRight ( SUMOVehicleClass  vclass) const
inlineinherited

Returns whether the given vehicle class may change left from this lane.

Definition at line 866 of file MSLane.h.

References MSLane::myChangeRight.

Referenced by drawGL(), drawJunctionChangeProhibitions(), and drawMarkings().

Here is the caller graph for this function:

◆ allowsVehicleClass()

bool MSLane::allowsVehicleClass ( SUMOVehicleClass  vclass) const
inlineinherited

◆ anyVehiclesBegin()

AnyVehicleIterator MSLane::anyVehiclesBegin ( ) const
inlineinherited

begin iterator for iterating over all vehicles touching this lane in downstream direction

Definition at line 462 of file MSLane.h.

References MSLane::AnyVehicleIterator, MSLane::myPartialVehicles, MSLane::myTmpVehicles, and MSLane::myVehicles.

Referenced by MSLane::detectCollisions(), MSLane::getFollowersOnConsecutive(), MSLane::getLastVehicleInformation(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSPModel_Striping::getVehicleObstacles(), and MSPModel_Striping::moveInDirection().

Here is the caller graph for this function:

◆ anyVehiclesEnd()

AnyVehicleIterator MSLane::anyVehiclesEnd ( ) const
inlineinherited

end iterator for iterating over all vehicles touching this lane in downstream direction

Definition at line 468 of file MSLane.h.

References MSLane::AnyVehicleIterator, MSLane::myPartialVehicles, MSLane::myTmpVehicles, and MSLane::myVehicles.

Referenced by MSLane::detectCollisions(), MSLane::getFollowersOnConsecutive(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSPModel_Striping::getVehicleObstacles(), and MSPModel_Striping::moveInDirection().

Here is the caller graph for this function:

◆ anyVehiclesUpstreamBegin()

AnyVehicleIterator MSLane::anyVehiclesUpstreamBegin ( ) const
inlineinherited

begin iterator for iterating over all vehicles touching this lane in upstream direction

Definition at line 474 of file MSLane.h.

References MSLane::AnyVehicleIterator, MSLane::myPartialVehicles, MSLane::myTmpVehicles, and MSLane::myVehicles.

Referenced by MSLane::getFirstVehicleInformation(), MSLane::getFollower(), and MSPModel_Striping::getVehicleObstacles().

Here is the caller graph for this function:

◆ anyVehiclesUpstreamEnd()

AnyVehicleIterator MSLane::anyVehiclesUpstreamEnd ( ) const
inlineinherited

end iterator for iterating over all vehicles touching this lane in upstream direction

Definition at line 480 of file MSLane.h.

References MSLane::AnyVehicleIterator.

Referenced by MSLane::getFollower(), and MSPModel_Striping::getVehicleObstacles().

Here is the caller graph for this function:

◆ appropriate()

bool MSLane::appropriate ( const MSVehicle veh) const
virtualinherited

Returns the information whether this lane may be used to continue the current route

Definition at line 2255 of file MSLane.cpp.

References MSVehicle::getBestLanes(), MSVehicle::getBestLanesContinuation(), MSVehicle::getLaneChangeModel(), MSVehicle::getLaneIndex(), MSEdge::isInternal(), MSAbstractLaneChangeModel::isOpposite(), MSLane::myEdge, MSLane::myLinks, MSBaseVehicle::succEdge(), and MSLane::succLinkSec().

Referenced by MSLane::executeMovements().

Here is the caller graph for this function:

◆ areAttributesValid()

bool Parameterised::areAttributesValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas)

Definition at line 216 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::isParameterValid(), and WRITE_WARNING.

Referenced by GNEFrameAttributeModules::GenericDataAttributes::areAttributesValid(), GNEEdgeData::isValid(), GNEEdgeRelData::isValid(), and GNETAZRelData::isValid().

Here is the caller graph for this function:

◆ areParametersValid()

bool Parameterised::areParametersValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

◆ buildAdditionalsPopupOptions()

void GUIGlObject::buildAdditionalsPopupOptions ( GUIMainWindow app,
GUIGLObjectPopupMenu ret,
const std::string &  type 
)
protectedinherited

◆ buildCenterPopupEntry()

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

Builds an entry which allows to center to the object.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 280 of file GUIGlObject.cpp.

References GUIDesigns::buildFXMenuCommand(), GUIIconSubSys::getIcon(), MID_CENTER, and RECENTERVIEW.

Referenced by GUIGlObject::buildAdditionalsPopupOptions(), GUIGlObject::buildShapePopupOptions(), GUIBaseVehicle::getPopUpMenu(), GUIBusStop::getPopUpMenu(), GUICalibrator::getPopUpMenu(), GUIChargingStation::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIOverheadWire::getPopUpMenu(), GUIOverheadWireClamp::getPopUpMenu(), GUIParkingArea::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GNEAdditional::getPopUpMenu(), GNETAZ::getPopUpMenu(), GNETAZSourceSink::getPopUpMenu(), GNEGenericData::getPopUpMenu(), GNEDemandElement::getPopUpMenu(), GNEPersonTrip::getPopUpMenu(), GNERide::getPopUpMenu(), GNERoute::getPopUpMenu(), GNETranship::getPopUpMenu(), GNETransport::getPopUpMenu(), GNEWalk::getPopUpMenu(), GNEConnection::getPopUpMenu(), GNECrossing::getPopUpMenu(), GNEEdge::getPopUpMenu(), GNEJunction::getPopUpMenu(), GNELane::getPopUpMenu(), GNEWalkingArea::getPopUpMenu(), GNENet::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIEdge::getPopUpMenu(), getPopUpMenu(), GUINet::getPopUpMenu(), GUIPerson::getPopUpMenu(), GNEPOI::getPopUpMenu(), GNEPoly::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GNEContainer::GNESelectedContainersPopupMenu::GNESelectedContainersPopupMenu(), GNEPerson::GNESelectedPersonsPopupMenu::GNESelectedPersonsPopupMenu(), GNEVehicle::GNESelectedVehiclesPopupMenu::GNESelectedVehiclesPopupMenu(), and GNEVehicle::GNESingleVehiclePopupMenu::GNESingleVehiclePopupMenu().

Here is the caller graph for this function:

◆ buildNameCopyPopupEntry()

◆ buildPopupHeader()

void GUIGlObject::buildPopupHeader ( GUIGLObjectPopupMenu ret,
GUIMainWindow app,
bool  addSeparator = true 
)
protectedinherited

Builds the header.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 271 of file GUIGlObject.cpp.

References GUIMainWindow::getBoldFont(), GUIGlObject::getFullName(), and GUIGlObject::myIcon.

Referenced by GUIGlObject::buildAdditionalsPopupOptions(), GUIGlObject::buildShapePopupOptions(), GUIBaseVehicle::getPopUpMenu(), GUIBusStop::getPopUpMenu(), GUICalibrator::getPopUpMenu(), GUIChargingStation::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIOverheadWire::getPopUpMenu(), GUIOverheadWireClamp::getPopUpMenu(), GUIParkingArea::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GNEAdditional::getPopUpMenu(), GNETAZ::getPopUpMenu(), GNETAZSourceSink::getPopUpMenu(), GNEGenericData::getPopUpMenu(), GNEDemandElement::getPopUpMenu(), GNEPersonTrip::getPopUpMenu(), GNERide::getPopUpMenu(), GNERoute::getPopUpMenu(), GNETranship::getPopUpMenu(), GNETransport::getPopUpMenu(), GNEWalk::getPopUpMenu(), GNEConnection::getPopUpMenu(), GNECrossing::getPopUpMenu(), GNEEdge::getPopUpMenu(), GNEInternalLane::getPopUpMenu(), GNEJunction::getPopUpMenu(), GNELane::getPopUpMenu(), GNEWalkingArea::getPopUpMenu(), GNENet::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIEdge::getPopUpMenu(), getPopUpMenu(), GUINet::getPopUpMenu(), GUIPerson::getPopUpMenu(), GNEPOI::getPopUpMenu(), GNEPoly::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GNEContainer::GNESelectedContainersPopupMenu::GNESelectedContainersPopupMenu(), GNEPerson::GNESelectedPersonsPopupMenu::GNESelectedPersonsPopupMenu(), GNEVehicle::GNESelectedVehiclesPopupMenu::GNESelectedVehiclesPopupMenu(), and GNEVehicle::GNESingleVehiclePopupMenu::GNESingleVehiclePopupMenu().

Here is the caller graph for this function:

◆ buildPositionCopyEntry()

void GUIGlObject::buildPositionCopyEntry ( GUIGLObjectPopupMenu ret,
const GUIMainWindow app 
) const
protectedinherited

Builds an entry which allows to copy the cursor position if geo projection is used, also builds an entry for copying the geo-position.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 330 of file GUIGlObject.cpp.

References GUIDesigns::buildFXMenuCommand(), GEOHACK, GeoConvHelper::getFinal(), GUIIconSubSys::getIcon(), GUIMainWindow::getOnlineMaps(), GOOGLESAT, GUIGLObjectPopupMenu::insertMenuPaneChild(), MID_COPY_CURSOR_GEOPOSITION, MID_COPY_CURSOR_POSITION, MID_SHOW_GEOPOSITION_ONLINE, and OSM.

Referenced by GUIGlObject::buildAdditionalsPopupOptions(), GUIGlObject::buildShapePopupOptions(), GUIBaseVehicle::getPopUpMenu(), GUIBusStop::getPopUpMenu(), GUICalibrator::getPopUpMenu(), GUIChargingStation::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIOverheadWire::getPopUpMenu(), GUIOverheadWireClamp::getPopUpMenu(), GUIParkingArea::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GUITriggeredRerouter::getPopUpMenu(), GNEAdditional::getPopUpMenu(), GNETAZSourceSink::getPopUpMenu(), GNEGenericData::getPopUpMenu(), GNEDemandElement::getPopUpMenu(), GNEPersonTrip::getPopUpMenu(), GNERide::getPopUpMenu(), GNERoute::getPopUpMenu(), GNETranship::getPopUpMenu(), GNETransport::getPopUpMenu(), GNEWalk::getPopUpMenu(), GNEConnection::getPopUpMenu(), GNECrossing::getPopUpMenu(), GNEEdge::getPopUpMenu(), GNEJunction::getPopUpMenu(), GNELane::getPopUpMenu(), GNEWalkingArea::getPopUpMenu(), GNENet::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIEdge::getPopUpMenu(), getPopUpMenu(), GUINet::getPopUpMenu(), GUIPerson::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GNEContainer::GNESelectedContainersPopupMenu::GNESelectedContainersPopupMenu(), GNEPerson::GNESelectedPersonsPopupMenu::GNESelectedPersonsPopupMenu(), GNEVehicle::GNESelectedVehiclesPopupMenu::GNESelectedVehiclesPopupMenu(), and GNEVehicle::GNESingleVehiclePopupMenu::GNESingleVehiclePopupMenu().

Here is the caller graph for this function:

◆ buildSelectionPopupEntry()

◆ buildShapePopupOptions()

void GUIGlObject::buildShapePopupOptions ( GUIMainWindow app,
GUIGLObjectPopupMenu ret,
const std::string &  type 
)
protectedinherited

build basic shape popup options. Used to unify pop-ups menu in netedit and SUMO-GUI

Definition at line 378 of file GUIGlObject.cpp.

References GUIGlObject::buildCenterPopupEntry(), GUIDesigns::buildFXMenuCommand(), GUIGlObject::buildNameCopyPopupEntry(), GUIGlObject::buildPopupHeader(), GUIGlObject::buildPositionCopyEntry(), GUIGlObject::buildSelectionPopupEntry(), and GUIGlObject::buildShowParamsPopupEntry().

Referenced by GUIPointOfInterest::getPopUpMenu().

Here is the caller graph for this function:

◆ buildShowManipulatorPopupEntry()

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

Builds an entry which allows to open the manipulator window.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 354 of file GUIGlObject.cpp.

References GUIDesigns::buildFXMenuCommand(), GUIIconSubSys::getIcon(), MANIP, and MID_MANIP.

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

Here is the caller graph for this function:

◆ buildShowParamsPopupEntry()

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

Builds an entry which allows to open the parameter window.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 312 of file GUIGlObject.cpp.

References APP_TABLE, GUIDesigns::buildFXMenuCommand(), GUIIconSubSys::getIcon(), and MID_SHOWPARS.

Referenced by GUIGlObject::buildAdditionalsPopupOptions(), GUIGlObject::buildShapePopupOptions(), GUIBaseVehicle::getPopUpMenu(), GUIBusStop::getPopUpMenu(), GUICalibrator::getPopUpMenu(), GUIChargingStation::getPopUpMenu(), GUIDetectorWrapper::getPopUpMenu(), GUIJunctionWrapper::getPopUpMenu(), GUILaneSpeedTrigger::getPopUpMenu(), GUIOverheadWire::getPopUpMenu(), GUIOverheadWireClamp::getPopUpMenu(), GUIParkingArea::getPopUpMenu(), GUITrafficLightLogicWrapper::getPopUpMenu(), GNEAdditional::getPopUpMenu(), GNETAZ::getPopUpMenu(), GNETAZSourceSink::getPopUpMenu(), GNEGenericData::getPopUpMenu(), GNEDemandElement::getPopUpMenu(), GNEPersonTrip::getPopUpMenu(), GNERide::getPopUpMenu(), GNERoute::getPopUpMenu(), GNETranship::getPopUpMenu(), GNETransport::getPopUpMenu(), GNEWalk::getPopUpMenu(), GNEConnection::getPopUpMenu(), GNECrossing::getPopUpMenu(), GNEEdge::getPopUpMenu(), GNEJunction::getPopUpMenu(), GNELane::getPopUpMenu(), GNEWalkingArea::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIEdge::getPopUpMenu(), getPopUpMenu(), GUINet::getPopUpMenu(), GUIPerson::getPopUpMenu(), GNEPOI::getPopUpMenu(), GNEPoly::getPopUpMenu(), GUIPolygon::getPopUpMenu(), GNEContainer::GNESelectedContainersPopupMenu::GNESelectedContainersPopupMenu(), GNEPerson::GNESelectedPersonsPopupMenu::GNESelectedPersonsPopupMenu(), GNEVehicle::GNESelectedVehiclesPopupMenu::GNESelectedVehiclesPopupMenu(), and GNEVehicle::GNESingleVehiclePopupMenu::GNESingleVehiclePopupMenu().

Here is the caller graph for this function:

◆ buildShowTypeParamsPopupEntry()

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

Builds an entry which allows to open the type parameter window.

Parameters
[in,filled]ret The popup menu to add the entry to
[in]addSeparatorWhether a separator shall be added, too

Definition at line 321 of file GUIGlObject.cpp.

References APP_TABLE, GUIDesigns::buildFXMenuCommand(), GUIIconSubSys::getIcon(), and MID_SHOWTYPEPARS.

Referenced by GUIBaseVehicle::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIEdge::getPopUpMenu(), and GUIPerson::getPopUpMenu().

Here is the caller graph for this function:

◆ changeLanes()

void MSLane::changeLanes ( const SUMOTime  time)
inherited

Definition at line 2169 of file MSLane.cpp.

References MSEdge::changeLanes(), and MSLane::myEdge.

◆ checkBufferType()

void MSLane::checkBufferType ( )
inherited

◆ checkFailure()

bool MSLane::checkFailure ( const MSVehicle aVehicle,
double &  speed,
double &  dist,
const double  nspeed,
const bool  patchSpeed,
const std::string  errorMsg,
InsertionCheck  check 
) const
inherited

◆ checkForPedestrians()

bool MSLane::checkForPedestrians ( const MSVehicle aVehicle,
double &  speed,
double &  dist,
double  pos,
bool  patchSpeed 
) const
protectedinherited

◆ clear()

void MSLane::clear ( )
staticinherited

Clears the dictionary.

Definition at line 2222 of file MSLane.cpp.

References MSLane::myDict.

Referenced by NLBuilder::buildNet(), and MSNet::clearAll().

Here is the caller graph for this function:

◆ clearParameter()

void Parameterised::clearParameter ( )
inherited

Clears the parameter map.

Definition at line 120 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NLHandler::beginEdgeParsing().

Here is the caller graph for this function:

◆ clearState()

◆ closeTraffic()

void GUILane::closeTraffic ( bool  rebuildAllowed = true)

close this lane for traffic

Definition at line 1464 of file GUILane.cpp.

References MSLane::CHANGE_PERMISSIONS_GUI, MSGlobals::gCheckRoutes, MSLane::getEdge(), myAmClosed, MSLane::myPermissionChanges, MSEdge::rebuildAllowedLanes(), MSLane::resetPermissions(), MSLane::setPermissions(), and SVC_AUTHORITY.

Referenced by GUIEdge::closeTraffic(), and GUIViewTraffic::onCmdCloseLane().

Here is the caller graph for this function:

◆ createFullName()

std::string GUIGlObject::createFullName ( ) const
privateinherited

create full name

Definition at line 479 of file GUIGlObject.cpp.

References GUIGlObject::getMicrosimID(), StringBijection< T >::getString(), GUIGlObject::myGLObjectType, and GUIGlObject::TypeNames.

Referenced by GUIGlObject::GUIGlObject(), and GUIGlObject::setMicrosimID().

Here is the caller graph for this function:

◆ debugDrawFoeIntersections()

void GUILane::debugDrawFoeIntersections ( ) const

draw intersection positions of foe internal lanes with this one

Definition at line 878 of file GUILane.cpp.

References GLHelper::drawLine(), PositionVector::extrapolate(), MSLane::geometryPositionAtOffset(), MSLink::getFoeLanes(), MSLane::getLength(), MSLink::getLengthsBehindCrossing(), MSLane::getLinkCont(), PositionVector::getOrthogonal(), MSLane::getShape(), PositionVector::length(), GLHelper::popMatrix(), and GLHelper::pushMatrix().

Referenced by drawGL().

Here is the caller graph for this function:

◆ deleteGLObject()

void GUIGlObject::deleteGLObject ( )
virtualinherited

delete GLObject (Currently used only in NETEDIT)

Reimplemented in GNEAdditional, GNEGenericData, GNEDemandElement, GNEConnection, GNECrossing, GNEEdge, GNEEdgeType, GNEInternalLane, GNEJunction, GNELane, GNELaneType, GNEWalkingArea, and GNENetworkElement.

Definition at line 218 of file GUIGlObject.cpp.

◆ detectCollisionBetween()

bool MSLane::detectCollisionBetween ( SUMOTime  timestep,
const std::string &  stage,
MSVehicle collider,
MSVehicle victim,
std::set< const MSVehicle *, ComparatorNumericalIdLess > &  toRemove,
std::set< const MSVehicle *, ComparatorNumericalIdLess > &  toTeleport 
) const
protectedinherited

◆ detectCollisions()

void GUILane::detectCollisions ( SUMOTime  timestep,
const std::string &  stage 
)
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 193 of file GUILane.cpp.

References MSLane::detectCollisions(), and myLock.

◆ detectPedestrianJunctionCollision()

void MSLane::detectPedestrianJunctionCollision ( const MSVehicle collider,
const PositionVector colliderBoundary,
const MSLane foeLane,
SUMOTime  timestep,
const std::string &  stage 
)
protectedinherited

detect whether a vehicle collids with pedestrians on the junction

Definition at line 1743 of file MSLane.cpp.

References DEBUG_COND, MSVehicle::getBoundingPoly(), MSLane::getEdge(), Named::getID(), MSNet::getInstance(), MSEdge::getPersons(), MSEdge::getSortedPersons(), MSNet::getVehicleControl(), MSLane::hasPedestrians(), MSEdge::isCrossing(), MSEdge::isWalkingArea(), PositionVector::overlapsWith(), MSVehicleControl::registerCollision(), MSNet::registerCollision(), SIMTIME, time2string(), TL, and WRITE_WARNINGF.

Referenced by MSLane::detectCollisions().

Here is the caller graph for this function:

◆ dictionary() [1/2]

MSLane * MSLane::dictionary ( const std::string &  id)
staticinherited

Returns the MSLane associated to the key id.

The lane is returned if exists, otherwise 0 is returned.

Parameters
[in]idThe id of the lane
Returns
The lane

Definition at line 2211 of file MSLane.cpp.

References MSLane::myDict.

◆ dictionary() [2/2]

bool MSLane::dictionary ( const std::string &  id,
MSLane lane 
)
staticinherited

◆ dictSize()

static int MSLane::dictSize ( )
inlinestaticinherited

Returns the number of stored lanes.

Returns
The number of stored lanes

Definition at line 764 of file MSLane.h.

References MSLane::myDict.

◆ drawArrows()

void GUILane::drawArrows ( ) const
private

Definition at line 396 of file GUILane.cpp.

References GLHelper::drawBoxLine(), GLHelper::drawTriangleAtEnd(), getShape(), LEFT, LINKSTATE_DEADEND, MSLane::myLinks, MSLane::myWidth, NODIR, PARTLEFT, PARTRIGHT, GLHelper::popMatrix(), GLHelper::pushMatrix(), RAD2DEG, RIGHT, STRAIGHT, SUMO_const_laneWidth, TURN, TURN_LEFTHAND, Position::x(), and Position::y().

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawAsRailway()

bool GUILane::drawAsRailway ( const GUIVisualizationSettings s) const

whether to draw this lane as a railway

Definition at line 1437 of file GUILane.cpp.

References GUIVisualizationSettings::drawForPositionSelection, isRailway(), MSLane::myPermissions, GUIVisualizationSettings::showRails, GUIVisualizationSettings::spreadSuperposed, and SVC_BUS.

Referenced by drawGL(), and drawLinkRule().

Here is the caller graph for this function:

◆ drawAsWaterway()

bool GUILane::drawAsWaterway ( const GUIVisualizationSettings s) const
private

whether to draw this lane as a waterway

Definition at line 1443 of file GUILane.cpp.

References GUIVisualizationSettings::drawForPositionSelection, isWaterway(), MSLane::myPermissions, and GUIVisualizationSettings::showRails.

Referenced by drawGL(), and drawLinkRule().

Here is the caller graph for this function:

◆ drawBikeMarkings()

void GUILane::drawBikeMarkings ( ) const

bike lane markings on top of an intersection

Definition at line 760 of file GUILane.cpp.

References getShape(), GLO_JUNCTION, myHalfLaneWidth, myShapeLengths, myShapeRotations, GLHelper::popMatrix(), and GLHelper::pushMatrix().

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawDirectionIndicators()

void GUILane::drawDirectionIndicators ( double  exaggeration,
bool  spreadSuperposed 
) const

direction indicators for lanes

Definition at line 850 of file GUILane.cpp.

References getShape(), GLO_EDGE, MAX2(), MIN2(), myHalfLaneWidth, myQuarterLaneWidth, myShapeLengths, myShapeRotations, MSLane::myWidth, GLHelper::popMatrix(), and GLHelper::pushMatrix().

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawGL()

void GUILane::drawGL ( const GUIVisualizationSettings s) const
overridevirtual

Draws the object.

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

Implements GUIGlObject.

Definition at line 490 of file GUILane.cpp.

References MSLane::allowsChangingRight(), RGBColor::alpha(), RGBColor::changedBrightness(), GUIVisualizationSizeSettings::constantSize, debugDrawFoeIntersections(), GLHelper::debugVertices(), drawArrows(), drawAsRailway(), drawAsWaterway(), drawBikeMarkings(), GLHelper::drawBoxLine(), GLHelper::drawBoxLines(), GUIVisualizationSettings::drawCrossingsAndWalkingareas, GLHelper::drawCrossTies(), drawDirectionIndicators(), GLHelper::drawFilledPoly(), GUIVisualizationSettings::drawForPositionSelection, GUIBaseVehicle::drawGL(), drawGL(), drawJunctionChangeProhibitions(), GUIVisualizationSettings::drawJunctionShape, drawLane2LaneConnections(), GLHelper::drawLine(), GUIVisualizationSettings::drawLinkJunctionIndex, drawLinkNo(), drawLinkRules(), GUIVisualizationSettings::drawLinkTLIndex, drawMarkings(), TesselatedPolygon::drawTesselation(), drawTLSLinkNo(), GUIVisualizationSettings::edgeScaler, GUIVisualizationSizeSettings::exaggeration, GUIVisualizationSettings::geometryIndices, GUIPropertySchemeStorage< T >::getActive(), MSEdge::getBidiEdge(), GUIPropertyScheme< T >::getColor(), GUIVisualizationSizeSettings::getExaggeration(), GUIGlObject::getGlID(), Named::getID(), MSNet::getInstance(), MSEdge::getLanes(), MSLane::getLinkCont(), MSEdge::getNumericalID(), GUIEdge::getScaleValue(), getScaleValue(), GUIPropertySchemeStorage< T >::getScheme(), MSEdge::getToJunction(), MSJunction::getType(), GUIGlObject::getType(), getVehiclesSecure(), MSLane::getWidth(), MSGlobals::gLateralResolution, MSGlobals::gLefthand, GLO_JUNCTION, GLO_SHAPE, gSelected, MSGlobals::gUseMesoSim, MSEdge::isCrossing(), MSEdge::isInternal(), MSLane::isInternal(), GUISelectedStorage::isSelected(), MSEdge::isWalkingArea(), isWaterway(), GUIVisualizationSettings::junctionSize, GUIVisualizationSettings::laneMinSize, GUIVisualizationSettings::laneScaler, GUIVisualizationSettings::laneShowBorders, GUIVisualizationSettings::laneWidthExaggeration, RGBColor::MAGENTA, MAX2(), GUIVisualizationSizeSettings::minSize, PositionVector::move2side(), MSLane::myEdge, myHalfLaneWidth, MSLane::myIndex, MSLane::myParkingVehicles, MSLane::myPermissions, myQuarterLaneWidth, mySegmentStartIndex, MSLane::myShape, myShapeColors, myShapeLengths, myShapeRotations, myShapeSegments, myTesselation, MSLane::myWidth, GLHelper::popMatrix(), GLHelper::popName(), GLHelper::pushMatrix(), GLHelper::pushName(), RAIL_CROSSING, RAIL_SIGNAL, releaseVehicles(), GUIVisualizationSettings::scale, setColor(), GLHelper::setColor(), GUIVisualizationTextSettings::show(), GUIVisualizationSettings::showBikeMarkings, GUIVisualizationSettings::showLane2Lane, GUIVisualizationSettings::showLaneDirection, GUIVisualizationSettings::showLinkDecals, GUIVisualizationSettings::showLinkRules, GUIVisualizationSettings::showSublanes, GUIVisualizationSettings::spreadSuperposed, SUMO_const_halfLaneWidth, SUMO_const_laneMarkWidth, SUMO_const_laneWidth, SVC_BICYCLE, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_RAIL_CLASSES, and GUIVisualizationSettings::vehicleSize.

Referenced by GUIEdge::drawGL(), and drawGL().

Here is the caller graph for this function:

◆ drawGLAdditional()

void GUIGlObject::drawGLAdditional ( GUISUMOAbstractView *const  parent,
const GUIVisualizationSettings s 
) const
virtualinherited

Draws additional, user-triggered visualisations.

Parameters
[in]parentThe view
[in]sThe settings for the current view (may influence drawing)

Reimplemented in GUIBaseVehicle, GUIContainer, and GUIPerson.

Definition at line 250 of file GUIGlObject.cpp.

References UNUSED_PARAMETER.

◆ drawJunctionChangeProhibitions()

void GUILane::drawJunctionChangeProhibitions ( ) const

bike lane markings on top of an intersection

Definition at line 787 of file GUILane.cpp.

References MSLane::allowsChangingRight(), MSEdge::getLanes(), getShape(), MSGlobals::gLefthand, GLO_JUNCTION, MIN2(), MSLane::myEdge, myHalfLaneWidth, MSLane::myIndex, MSLane::myPermissions, myShapeLengths, myShapeRotations, GLHelper::popMatrix(), GLHelper::pushMatrix(), SUMO_const_laneMarkWidth, and SVC_PASSENGER.

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawLane2LaneConnections()

void GUILane::drawLane2LaneConnections ( double  exaggeration) const
private

Definition at line 463 of file GUILane.cpp.

References GLHelper::drawTriangleAtEnd(), PositionVector::getCentroid(), MSLane::getEdge(), GUIVisualizationSettings::getLinkColor(), getShape(), MSJunction::getShape(), MSLane::getShape(), MSEdge::getToJunction(), MSEdge::isWalkingArea(), MSLane::myEdge, MSLane::myLinks, GLHelper::setColor(), Position::x(), and Position::y().

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawLinkNo()

void GUILane::drawLinkNo ( const GUIVisualizationSettings s) const
private

◆ drawLinkRule()

◆ drawLinkRules()

◆ drawMarkings()

void GUILane::drawMarkings ( const GUIVisualizationSettings s,
double  scale 
) const

draw lane borders and white markings

Definition at line 738 of file GUILane.cpp.

References MSLane::allowsChangingRight(), GLHelper::drawBoxLines(), GLHelper::drawInverseMarkings(), MSEdge::getLanes(), getShape(), getShapeLengths(), getShapeRotations(), MSGlobals::gLefthand, GLO_EDGE, MSLane::myEdge, myHalfLaneWidth, MSLane::myIndex, MSLane::myPermissions, myShapeLengths, myShapeRotations, GLHelper::popMatrix(), GLHelper::pushMatrix(), setColor(), SUMO_const_laneMarkWidth, and SVC_PASSENGER.

Referenced by drawGL().

Here is the caller graph for this function:

◆ drawName()

◆ drawTLSLinkNo()

void GUILane::drawTLSLinkNo ( const GUIVisualizationSettings s,
const GUINet net 
) const
private

◆ empty()

bool MSLane::empty ( ) const
inlineinherited

Returns true if there is not a single vehicle on the lane.

Definition at line 690 of file MSLane.h.

References MSLane::myVehBuffer, MSLane::myVehicles, and MFXSynchQue< T, Container >::size().

Referenced by MSQueueExport::writeLane().

Here is the caller graph for this function:

◆ enteredByLaneChange()

void MSLane::enteredByLaneChange ( MSVehicle v)
inherited

Definition at line 2999 of file MSLane.cpp.

References MSVehicleType::getLength(), MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), MSLane::myBruttoVehicleLengthSum, and MSLane::myNettoVehicleLengthSum.

Referenced by MSAbstractLaneChangeModel::primaryLaneChanged().

Here is the caller graph for this function:

◆ executeMovements()

void GUILane::executeMovements ( const SUMOTime  t)
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 158 of file GUILane.cpp.

References MSLane::executeMovements(), and myLock.

◆ fill()

template<class RTREE >
template void MSLane::fill< LANE_RTREE_QUAL > ( RTREE &  into)
staticinherited

Fills the given RTree with lane instances.

Parameters
[in,filled]into The RTree to fill
See also
TraCILaneRTree

Definition at line 2239 of file MSLane.cpp.

References PositionVector::getBoxBoundary(), MSLane::getShape(), Boundary::grow(), MSLane::myDict, Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().

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

Here is the caller graph for this function:

◆ firstWaitingTime()

double GUILane::firstWaitingTime ( ) const

Definition at line 1027 of file GUILane.cpp.

References MSLane::myVehicles.

Referenced by getColorValue(), and getScaleValue().

Here is the caller graph for this function:

◆ forceVehicleInsertion()

void MSLane::forceVehicleInsertion ( MSVehicle veh,
double  pos,
MSMoveReminder::Notification  notification,
double  posLat = 0 
)
inherited

Inserts the given vehicle at the given position.

No checks are done, vehicle insertion using this method may generate collisions (possibly delayed).

Parameters
[in]vehThe vehicle to insert
[in]posThe position at which the vehicle shall be inserted
[in]notificationThe cause of insertion (i.e. departure, teleport, parking) defaults to departure
[in]posLatThe lateral position at which the vehicle shall be inserted

Definition at line 1259 of file MSLane.cpp.

References MSLane::getDepartSpeed(), MSVehicle::getSpeed(), MSBaseVehicle::hasDeparted(), MSLane::incorporateVehicle(), MSLane::myVehicles, and MSVehicle::updateBestLanes().

Referenced by MSVehicle::executeFractionalMove(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), and MSAbstractLaneChangeModel::primaryLaneChanged().

Here is the caller graph for this function:

◆ freeInsertion()

bool MSLane::freeInsertion ( MSVehicle veh,
double  speed,
double  posLat,
MSMoveReminder::Notification  notification = MSMoveReminder::NOTIFICATION_DEPARTED 
)
inherited

Tries to insert the given vehicle on any place.

Parameters
[in]vehThe vehicle to insert
[in]speedThe maximum insertion speed
[in]notificationThe cause of insertion (i.e. departure, teleport, parking) defaults to departure
Returns
Whether the vehicle could be inserted

Definition at line 467 of file MSLane.cpp.

References MSVehicle::getBackPositionOnLane(), MSVehicle::getCarFollowModel(), MSLane::getLength(), MSVehicleType::getLength(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSLane::getMissingRearGap(), MSVehicle::getPositionOnLane(), MSCFModel::getSecureGap(), MSVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), MSCFModel::insertionFollowSpeed(), MSLane::isInsertionSuccess(), MIN2(), MSLane::myLength, MSLane::myPartialVehicles, MSLane::myVehicles, MSMoveReminder::NOTIFICATION_TELEPORT, and MSVehicle::setTentativeLaneAndPosition().

Referenced by MSVehicleTransfer::checkInsertions(), and MSLane::insertVehicle().

Here is the caller graph for this function:

◆ geometryPositionAtOffset()

◆ getBidiLane()

◆ getBruttoOccupancy()

double MSLane::getBruttoOccupancy ( ) const
inherited

Returns the brutto (including minGaps) occupancy of this lane during the last step.

Returns
The occupancy during the last step

Definition at line 3036 of file MSLane.cpp.

References MSLane::getFractionalVehicleLength(), MSVehicleType::getLength(), MSVehicle::getPositionOnLane(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), MIN2(), MSLane::myBruttoVehicleLengthSum, MSLane::myLength, MSLane::myVehicles, and MSLane::releaseVehicles().

Referenced by MSLCM_LC2013::_wantsChange(), getColorValue(), getParameterWindow(), getScaleValue(), and MSEdge::insertVehicle().

Here is the caller graph for this function:

◆ getBruttoVehLenSum()

double MSLane::getBruttoVehLenSum ( ) const
inlineinherited

Returns the sum of lengths of vehicles, including their minGaps, which were on the lane during the last step.

Returns
The sum of vehicle lengths of vehicles in the last step

Definition at line 1082 of file MSLane.h.

References MSLane::myBruttoVehicleLengthSum.

Referenced by MSVehicle::checkRewindLinkLanes(), and MSLCHelper::getRoundaboutDistBonus().

Here is the caller graph for this function:

◆ getCanonicalPredecessorLane()

MSLane * MSLane::getCanonicalPredecessorLane ( ) const
inherited

Return the main predecessor lane for the current. If there are several incoming lanes, the first attempt is to return the priorized. If this does not yield an unambiguous lane, the one with the least angle difference to the current is selected.

Definition at line 2912 of file MSLane.cpp.

References Named::getID(), MSGlobals::gNumSimThreads, MSLane::myCanonicalPredecessorLane, Named::myID, and MSLane::myIncomingLanes.

Referenced by MSVehicle::computeAngle(), MSLane::getEntryLink(), MSLane::getFirstInternalInConnection(), and MSE2Collector::selectLanes().

Here is the caller graph for this function:

◆ getCanonicalSuccessorLane()

MSLane * MSLane::getCanonicalSuccessorLane ( ) const
inherited

Return the main successor lane for the current. If there are several outgoing lanes, the first attempt is to return the priorized. If this does not yield an unambiguous lane, the one with the least angle difference to the current is selected.

Definition at line 2936 of file MSLane.cpp.

References Named::getID(), MSLane::myCanonicalSuccessorLane, Named::myID, and MSLane::myLinks.

Referenced by MSDevice_SSM::classifyEncounter(), MSVehicle::getNextEdgePtr(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), and MSE2Collector::selectLanes().

Here is the caller graph for this function:

◆ getCenteringBoundary()

Boundary GUILane::getCenteringBoundary ( ) const
overridevirtual

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 997 of file GUILane.cpp.

References Boundary::add(), Boundary::grow(), and MSLane::myShape.

◆ getCenterOnEdge()

double MSLane::getCenterOnEdge ( ) const
inlineinherited

Definition at line 1126 of file MSLane.h.

References MSLane::myRightSideOnEdge, and MSLane::myWidth.

Referenced by MSVehicle::getCenterOnEdge().

Here is the caller graph for this function:

◆ getClickPriority()

double GUILane::getClickPriority ( ) const
overridevirtual

Returns the priority of receiving mouse clicks.

Reimplemented from GUIGlObject.

Definition at line 1523 of file GUILane.cpp.

References GLO_CROSSING, GLO_LANE, MSGlobals::gUseMesoSim, MSEdge::isCrossing(), and MSLane::myEdge.

◆ getCollisionAction()

static CollisionAction MSLane::getCollisionAction ( )
inlinestaticinherited

Definition at line 1276 of file MSLane.h.

References MSLane::myCollisionAction.

Referenced by MSLane::executeMovements(), and MSVehicle::resumeFromStopping().

Here is the caller graph for this function:

◆ getColorValue()

double GUILane::getColorValue ( const GUIVisualizationSettings s,
int  activeScheme 
) const
overridevirtual

gets the color value according to the current scheme index

Reimplemented from GUIGlObject.

Definition at line 1183 of file GUILane.cpp.

References GUIVisualizationSettings::edgeData, GUIVisualizationSettings::edgeDataID, GUIVisualizationSettings::edgeParam, firstWaitingTime(), MSLane::getBruttoOccupancy(), MSEdge::getDistance(), GUINet::getEdgeData(), getEdgeLaneNumber(), GUINet::getGUIInstance(), MSLane::getHarmonoise_NoiseEmissions(), MSNet::getInstance(), MSLane::getLength(), getLoadedEdgeWeight(), GUINet::getMeanData(), MSLane::getMeanSpeed(), MSLane::getNettoOccupancy(), Parameterised::getParameter(), getPendingEmits(), MSEdge::getPermissions(), MSEdge::getPriority(), MSEdge::getRoutingSpeed(), getShape(), MSLane::getSpeedLimit(), getStoredEdgeTravelTime(), MSNet::getWeightsStorage(), MSGlobals::gNumSimThreads, isLaneOrEdgeSelected(), isRailway(), MSEdge::isTazConnector(), MSEdge::isWalkingArea(), Parameterised::knowsParameter(), MSEdgeWeightsStorage::knowsTravelTime(), GUIVisualizationSettings::laneParam, GUIVisualizationSettings::MISSING_DATA, MSLane::myEdge, MSLane::myLength, MSLane::myLengthGeometryFactor, MSLane::myMaxSpeed, myParkingAreas, MSLane::myPermissions, myReachability, MSLane::myRNGIndex, MSEdgeWeightsStorage::retrieveExistingTravelTime(), SUMO_TAG_PARKING_AREA, SVC_AUTHORITY, SVC_BICYCLE, SVC_BUS, SVC_PASSENGER, SVC_PEDESTRIAN, SVC_RAIL_CLASSES, SVC_RAIL_FAST, SVC_SHIP, StringUtils::toBool(), and StringUtils::toDouble().

Referenced by GUIViewTraffic::buildColorRainbow(), getColorValueWithFunctional(), setColor(), and setMultiColor().

Here is the caller graph for this function:

◆ getColorValueForTracker()

double GUILane::getColorValueForTracker ( ) const

return color value based on cached settings

Definition at line 1171 of file GUILane.cpp.

References GUIPropertySchemeStorage< T >::getActive(), getColorValueWithFunctional(), GUIVisualizationSettings::laneColorer, and myCachedGUISettings.

Referenced by getParameterWindow().

Here is the caller graph for this function:

◆ getColorValueWithFunctional()

double GUILane::getColorValueWithFunctional ( const GUIVisualizationSettings s,
int  activeScheme 
) const

gets the color value according to the current scheme index including values for things that set the color indirectly

Definition at line 1065 of file GUILane.cpp.

References PositionVector::beginEndAngle(), getColorValue(), MSLane::myShape, and GeomHelper::naviDegree().

Referenced by GUIEdge::drawGL(), and getColorValueForTracker().

Here is the caller graph for this function:

◆ getCriticalLeader()

std::pair< MSVehicle *const, double > MSLane::getCriticalLeader ( double  dist,
double  seen,
double  speed,
const MSVehicle veh 
) const
inherited

Returns the most dangerous leader and the distance to him.

Goes along the vehicle's estimated used lanes (bestLaneConts). For each link, it is determined whether the ego vehicle will pass it. If so, the subsequent lane is investigated. Check all lanes up to the stopping distance of ego. Return the leader vehicle (and the gap) which puts the biggest speed constraint on ego.

If no leading vehicle was found, <0, -1> is returned.

Pretty slow, as it has to go along lanes.

Parameters
[in]distThe distance to investigate
[in]seenThe already seen place (normally the place in front on own lane)
[in]speedThe speed of the vehicle used for determining whether a subsequent link will be opened at arrival time
[in]vehThe (ego) vehicle for which the information shall be computed
Returns

Definition at line 2782 of file MSLane.cpp.

References MSVehicle::adaptToJunctionLeader(), MSCFModel::brakeGap(), DEBUG_COND2, gDebugFlag1, MSVehicle::getBackPositionOnLane(), MSVehicle::getBestLanesContinuation(), MSVehicle::getCarFollowModel(), MSNet::getCurrentTimeStep(), Named::getID(), MSBaseVehicle::getImpatience(), MSNet::getInstance(), MSLane::getLastAnyVehicle(), MSVehicle::getLateralPositionOnLane(), MSLane::getLength(), MSVehicleType::getLength(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSVehicle::getSpeed(), MSLane::getVehicleMaxSpeed(), MSBaseVehicle::getVehicleType(), MSCFModel::insertionFollowSpeed(), MSLane::isInternal(), MSLane::isLinkEnd(), MAX2(), SIMTIME, MSLane::succLinkSec(), and TIME2STEPS.

Referenced by MSLaneChanger::checkChange().

Here is the caller graph for this function:

◆ getCrossingIndex()

int MSLane::getCrossingIndex ( ) const
inherited

return the index of the link to the next crossing if this is walkingArea, else -1

Definition at line 3006 of file MSLane.cpp.

References MSLane::myLinks.

◆ getDepartPosLat()

double MSLane::getDepartPosLat ( const MSVehicle veh)
protectedinherited

Definition at line 604 of file MSLane.cpp.

References CENTER, DEFAULT, SUMOVehicleParameter::departPosLat, SUMOVehicleParameter::departPosLatProcedure, MSBaseVehicle::getParameter(), MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), GIVEN, gPrecisionRandom, LEFT, RandHelper::rand(), RANDOM, RIGHT, and roundDecimal().

Referenced by MSLane::insertVehicle().

Here is the caller graph for this function:

◆ getDepartSpeed()

double MSLane::getDepartSpeed ( const MSVehicle veh,
bool &  patchSpeed 
)
protectedinherited

◆ getDouble()

◆ getDoubles()

std::vector< double > Parameterised::getDoubles ( const std::string &  key,
std::vector< double >  defaultValue = std::vector<double>() 
) const
inherited

Returns the value for a given key converted to a list of doubles.

Parameters
[in]keyThe key to ask for
[in]defaultValueThe default value to return if no value is stored under the key
Returns
The value stored under the key

Definition at line 99 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::myMap, TL, StringUtils::toDouble(), and WRITE_WARNING.

Referenced by EnergyParams::EnergyParams().

Here is the caller graph for this function:

◆ getEdge()

MSEdge & MSLane::getEdge ( ) const
inlineinherited

Returns the lane's edge.

Returns
This lane's edge

Definition at line 713 of file MSLane.h.

References MSLane::myEdge.

Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSStageDriving::abort(), MSLane::StoringVisitor::add(), MSLane::addApproachingLane(), NLHandler::addConnection(), MSTriggeredRerouter::addParkValues(), MSRouteHandler::addPersonTrip(), MSRouteHandler::addRideOrTransport(), MSRouteHandler::addStop(), MSBaseVehicle::addStop(), MSSwarmTrafficLightLogic::allowLine(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilters(), MSVehicle::boardTransportables(), MSRailSignal::DriveWay::buildRoute(), MSSOTLE2Sensors::buildSensorForLane(), libsumo::Helper::buildStopParameters(), MSStageDriving::canLeaveVehicle(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLink::checkContOff(), MSLane::checkForPedestrians(), MSVehicle::checkLinkLeader(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSLink::checkWalkingAreaFoe(), MSDevice_SSM::classifyEncounter(), MSEdge::closeBuilding(), closeTraffic(), MSVehicle::computeFurtherLanes(), MSLCM_SL2015::computeSpeedGain(), MSLaneChanger::continueChange(), NLDetectorBuilder::createInductLoop(), GUIDetectorBuilder::createInductLoop(), MSLane::detectCollisionBetween(), MSE2Collector::detectorUpdate(), MSE3Collector::detectorUpdate(), MSInductLoop::detectorUpdate(), MSLane::detectPedestrianJunctionCollision(), MSLCHelper::divergentRoute(), drawLane2LaneConnections(), drawLinkNo(), drawLinkRules(), drawTLSLinkNo(), MSVehicle::enterLaneAtMove(), MSVehicle::estimateTimeToNextStop(), MSVehicle::executeMove(), MSLane::executeMovements(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSStoppingPlace::getAccessDistance(), MSStoppingPlace::getAccessPos(), MSMeanData_Net::getAttributeValue(), MSVehicle::getBackPositionOnLane(), MSVehicle::getBestLanesContinuation(), MSLaneChanger::getBestLanesOpposite(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), MSVehicle::getCurrentEdge(), LIBSUMO_NAMESPACE::Vehicle::getDrivingDistance(), MSStop::getEdge(), MSStageDriving::getEdge(), MSVehicle::getFollower(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLatOffset(), MSLink::getLeaderInfo(), MSLCM_SL2015::getLeftBorder(), GUIVehicle::getLeftSublaneOnEdge(), MSLane::getLogicalPredecessorLane(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLCM_SL2015::getNeighRight(), MSVehicle::getNextEdgePtr(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSAbstractLaneChangeModel::getNormalizedLaneIndex(), MSCFModel_CC::getParameter(), getParentName(), MSInsertionControl::getPendingEmits(), getPopUpMenu(), MSVehicle::getPosition(), GUIVehicle::getRightSublaneOnEdge(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::TrafficLight::getServedPersonCount(), MSAbstractLaneChangeModel::getShadowDirection(), MSVehicle::getUpcomingLanesUntil(), MSDevice_SSM::getVehiclesOnJunction(), MSLane::handleCollisionBetween(), MSRailSignal::hasOncomingRailTraffic(), MSVehicle::influenceChangeDecision(), MSActuatedTrafficLightLogic::init(), NEMALogic::init(), MSTrafficLightLogic::initMesoTLSPenalties(), MSBaseVehicle::insertStop(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MSVehicle::isOppositeLane(), MSLink::lastWasContMajor(), MSLink::lastWasContState(), MSVehicle::leaveLane(), MESegment::limitedControlOverride(), MSPedestrianPushButton::loadPushButtons(), MSPerson::MSPersonStage_Walking::loadState(), MSStageDriving::loadState(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSLeaderDistanceInfo::moveSamePosTo(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSPModel_Striping::PState::moveTo(), LIBSUMO_NAMESPACE::Person::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), libsumo::Helper::moveToXYMap_matchingRoutePosition(), MSTriggeredRerouter::myEndElement(), MSDevice_GLOSA::notifyEnter(), MSDevice_Routing::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Vehroutes::notifyEnter(), MSDevice_SSM::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDevice_Bluelight::notifyMove(), GUIViewTraffic::onCmdAddRerouter(), GUIViewTraffic::onCmdCloseEdge(), MSLane::edge_finder::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NLTriggerBuilder::parseAndBuildCalibrator(), MSRouteHandler::parseWalkPositions(), MSVehicle::passingMinor(), MSLCM_DK2008::patchSpeed(), MSVehicle::planMoveInternal(), MSInternalJunction::postloadInit(), MSVehicle::Influencer::postProcessRemoteControl(), MSLCM_SL2015::prepareStep(), MSAbstractLaneChangeModel::primaryLaneChanged(), MSPerson::MSPersonStage_Access::proceed(), MSStageDriving::proceed(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSVehicle::processNextStop(), MSPModel_Striping::PState::PState(), MSLeaderInfo::removeOpposite(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceStop(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSTransportable::rerouteParkingArea(), MSVehicle::resumeFromStopping(), LIBSUMO_NAMESPACE::Lane::setAllowed(), LIBSUMO_NAMESPACE::Lane::setDisallowed(), MSTriggeredRerouter::setPermissions(), MSLink::setRequestInformation(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), GUITriggeredRerouter::shiftProbs(), GUIViewTraffic::showLaneReachability(), MSLaneChangerSublane::startChangeSublane(), MSLCM_SL2015::tieBrakeLeader(), MSVehicle::unsafeLinkAhead(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSLaneChangerSublane::updateChanger(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::Influencer::updateRemoteControlRoute(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSVehicle::willStop(), MSElecHybridExport::write(), MSFCDExport::write(), and MSElecHybridExport::writeAggregated().

◆ getEdgeLaneNumber()

double GUILane::getEdgeLaneNumber ( ) const

Definition at line 1033 of file GUILane.cpp.

References MSEdge::getLanes(), and MSLane::myEdge.

Referenced by getColorValue(), and getScaleValue().

Here is the caller graph for this function:

◆ getEmissions()

double MSLane::getEmissions ( ) const
inlineinherited

Returns the sum of last step emissions The value is always per 1s, so multiply by step length if necessary.

Returns
emissions of vehicles on this lane during the last step

Definition at line 1092 of file MSLane.h.

References MSLane::getVehiclesSecure(), and MSLane::releaseVehicles().

Referenced by MSFullExport::writeLane().

Here is the caller graph for this function:

◆ getEntryLink()

const MSLink * MSLane::getEntryLink ( ) const
inherited

Returns the entry link if this is an internal lane, else nullptr.

Definition at line 2451 of file MSLane.cpp.

References MSLane::getCanonicalPredecessorLane(), MSLane::getLinkTo(), and MSLane::isInternal().

Referenced by MSDevice_SSM::classifyEncounter(), MSLink::computeDistToDivergence(), MSLink::getLeaderInfo(), MSLink::getLengthBeforeCrossing(), MSLane::getUpcomingLinks(), MSDevice_SSM::getVehiclesOnJunction(), MSVehicle::isLeader(), and MSLink::setRequestInformation().

Here is the caller graph for this function:

◆ getExaggeration()

double GUILane::getExaggeration ( const GUIVisualizationSettings s) const
overridevirtual

return exaggeration associated with this GLObject

Implements GUIGlObject.

Definition at line 991 of file GUILane.cpp.

◆ getFirstAnyVehicle()

MSVehicle * MSLane::getFirstAnyVehicle ( ) const
inherited

returns the first vehicle that is fully or partially on this lane

Definition at line 2365 of file MSLane.cpp.

References MSVehicle::getPositionOnLane(), MSLane::myPartialVehicles, and MSLane::myVehicles.

Referenced by MSRailSignal::hasOncomingRailTraffic(), and MSVehicle::processLinkApproaches().

Here is the caller graph for this function:

◆ getFirstInternalInConnection()

const MSLane * MSLane::getFirstInternalInConnection ( double &  offset) const
inherited

Returns 0 if the lane is not internal. Otherwise the first part of the connection (sequence of internal lanes along junction) corresponding to the lane is returned and the offset is set to the distance of the begin of this lane to the begin of the returned.

Definition at line 2181 of file MSLane.cpp.

References MSLane::getCanonicalPredecessorLane(), MSLane::getLength(), and MSLane::isInternal().

Referenced by MSDevice_SSM::classifyEncounter().

Here is the caller graph for this function:

◆ getFirstVehicleInformation()

const MSLeaderInfo MSLane::getFirstVehicleInformation ( const MSVehicle ego,
double  latOffset,
bool  onlyFrontOnLane,
double  maxPos = std::numeric_limits<double>::max(),
bool  allowCached = true 
) const
inherited

analogue to getLastVehicleInformation but in the upstream direction

Definition at line 1359 of file MSLane.cpp.

References MSLeaderInfo::addLeader(), MSLane::anyVehiclesUpstreamBegin(), DEBUG_COND2, MSNet::getCurrentTimeStep(), Named::getID(), MSNet::getInstance(), MSVehicle::getLatOffset(), MSVehicle::getPositionOnLane(), MSGlobals::gNumSimThreads, MSVehicle::isFrontOnLane(), MSLane::myFollowerInfo, MSLane::myFollowerInfoTime, MSLane::myLength, and MSLane::myWidth.

Referenced by MSLane::getFollowersOnConsecutive().

Here is the caller graph for this function:

◆ getFollower()

std::pair< MSVehicle *const, double > MSLane::getFollower ( const MSVehicle ego,
double  egoPos,
double  dist,
MinorLinkMode  mLinkMode 
) const
inherited

Find follower vehicle for the given ego vehicle (which may be on the opposite direction lane)

Parameters
[in]egoThe ego vehicle
[in]egoPosThe ego position mapped to the current lane
[in]distThe look-back distance when looking at consecutive lanes
[in]ignoreMinorLinksWhether backward search should stop at minor links
Returns
the follower vehicle and it's gap to ego

Definition at line 4022 of file MSLane.cpp.

References MSLane::anyVehiclesUpstreamBegin(), MSLane::anyVehiclesUpstreamEnd(), DEBUG_COND2, MSLeaderDistanceInfo::getClosest(), MSLane::getFollowersOnConsecutive(), Named::getID(), MSVehicleType::getLength(), MSVehicleType::getMinGap(), MSVehicle::getPositionOnLane(), and MSBaseVehicle::getVehicleType().

Referenced by libsumo::Helper::applySubscriptionFilters(), MSVehicle::getFollower(), MSLaneChanger::getOncomingVehicle(), MSLane::getOppositeFollower(), and MSLane::getOppositeLeader().

Here is the caller graph for this function:

◆ getFollowersOnConsecutive()

MSLeaderDistanceInfo MSLane::getFollowersOnConsecutive ( const MSVehicle ego,
double  backOffset,
bool  allSublanes,
double  searchDist = -1,
MinorLinkMode  mLinkMode = FOLLOW_ALWAYS 
) const
inherited

return the sublane followers with the largest missing rear gap among all predecessor lanes (within dist)

XXX iterate in reverse and abort when there are no more freeSublanes

XXX dubious term. here for backwards compatibility

Definition at line 3446 of file MSLane.cpp.

References MSCriticalFollowerDistanceInfo::addFollower(), MSLane::anyVehiclesBegin(), MSLane::anyVehiclesEnd(), DEBUG_COND2, gDebugFlag1, MSEdge::getBidiEdge(), MSLane::getEdge(), MSLane::getFirstVehicleInformation(), MSVehicle::getFurtherLanes(), Named::getID(), Named::getIDSecure(), MSLane::getIncomingLanes(), MSVehicle::getLane(), MSVehicle::getLaneChangeModel(), MSEdge::getLanes(), MSVehicle::getLateralPositionOnLane(), MSVehicle::getLatOffset(), MSVehicle::getLeftSideOnLane(), MSLane::getLength(), MSVehicleType::getLength(), MSLane::getLogicalPredecessorLane(), MSLane::getMaximumBrakeDist(), MSVehicleType::getMinGap(), MSVehicle::getPositionOnLane(), MSLane::getRightSideOnEdge(), MSVehicle::getRightSideOnLane(), MSLeaderInfo::getSublaneOffset(), MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSGlobals::gLateralResolution, MSVehicle::isFrontOnLane(), MSVehicle::isOnRoad(), MSAbstractLaneChangeModel::isOpposite(), MSLane::IncomingLaneInfo::lane, MSLane::IncomingLaneInfo::length, MAX2(), MSLane::myEdge, MSLane::myIncomingLanes, MSLane::myWidth, MSLeaderInfo::numFreeSublanes(), MSLeaderInfo::numSublanes(), MSVehicle::onFurtherEdge(), MSLeaderInfo::setSublaneOffset(), SIMTIME, STRAIGHT, std::swap(), MSLeaderInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), and MSLane::IncomingLaneInfo::viaLink.

Referenced by MSLaneChangerSublane::checkChangeOpposite(), MSLane::getFollower(), MSLane::getMissingRearGap(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLane::isInsertionSuccess(), and MSVehicle::planMoveInternal().

Here is the caller graph for this function:

◆ getFractionalVehicleLength()

double MSLane::getFractionalVehicleLength ( bool  brutto) const
protectedinherited

return length of fractional vehicles on this lane

Definition at line 3017 of file MSLane.cpp.

References MSLane::getBidiLane(), MSGlobals::gSublane, MSLane::myLength, and MSLane::myPartialVehicles.

Referenced by MSLane::getBruttoOccupancy(), and MSLane::getNettoOccupancy().

Here is the caller graph for this function:

◆ getFrictionCoefficient()

double MSLane::getFrictionCoefficient ( ) const
inlineinherited

Returns the lane's friction coefficient.

Returns
This lane's friction coefficient

Definition at line 568 of file MSLane.h.

References MSLane::myFrictionCoefficient.

Referenced by getParameterWindow(), and MSDevice_Friction::notifyMove().

Here is the caller graph for this function:

◆ getFullName()

◆ getGLIcon()

FXIcon * GUIGlObject::getGLIcon ( ) const
inherited

get icon associated with this GL Object

Definition at line 191 of file GUIGlObject.cpp.

References GUIGlObject::myIcon.

◆ getGlID()

GUIGlID GUIGlObject::getGlID ( ) const
inlineinherited

Returns the numerical id of the object.

Returns
This object's gl-id

Definition at line 102 of file GUIGlObject.h.

References GUIGlObject::myGlID.

Referenced by GUIMessageWindow::appendMsg(), GUIGlObject::buildSelectionPopupEntry(), GUIBaseVehicle::drawAction_drawPersonsAndContainers(), GNECalibrator::drawCalibratorSymbol(), GUIBusStop::drawGL(), GUICalibrator::drawGL(), GUIChargingStation::drawGL(), GUIJunctionWrapper::drawGL(), GUILaneSpeedTrigger::drawGL(), GUIOverheadWire::drawGL(), GUIOverheadWireClamp::drawGL(), GUIParkingArea::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GNEAccess::drawGL(), GNEBusStop::drawGL(), GNEChargingStation::drawGL(), GNEContainerStop::drawGL(), GNEEntryExitDetector::drawGL(), GNEInductionLoopDetector::drawGL(), GNEInstantInductionLoopDetector::drawGL(), GNELaneAreaDetector::drawGL(), GNEParkingArea::drawGL(), GNEParkingSpace::drawGL(), GNERerouterSymbol::drawGL(), GNERouteProbe::drawGL(), GNETAZ::drawGL(), GNEVaporizer::drawGL(), GNEVariableSpeedSignSymbol::drawGL(), GNETAZRelData::drawGL(), GNEContainer::drawGL(), GNEPerson::drawGL(), GNEVehicle::drawGL(), GNEConnection::drawGL(), GNECrossing::drawGL(), GNEInternalLane::drawGL(), GNEJunction::drawGL(), GNELane::drawGL(), GNEWalkingArea::drawGL(), GUIContainer::drawGL(), GUIEdge::drawGL(), drawGL(), GUIPerson::drawGL(), GUIPointOfInterest::drawGL(), GUIPolygon::drawGL(), GUIBaseVehicle::drawGLAdditional(), GUIContainer::drawGLAdditional(), GUIPerson::drawGLAdditional(), drawLinkRule(), GNEAdditional::drawListedAddtional(), GUIBaseVehicle::drawOnPos(), GNELaneAreaDetector::drawPartialGL(), GNEOverheadWire::drawPartialGL(), GNEEdgeData::drawPartialGL(), GNEEdgeRelData::drawPartialGL(), GNERoute::drawPartialGL(), GNEVehicle::drawPartialGL(), GNEDemandElement::drawPersonPlanPartial(), GNEAdditional::drawSquaredAdditional(), GNEStop::drawStopPersonOverBusStop(), GNEStop::drawStopPersonOverEdge(), GNEStop::drawVehicleStop(), GUIJunctionWrapper::getColorValue(), GUIVehicle::getColorValue(), GUIMEVehicle::getColorValue(), GUIContainer::getColorValue(), GUIEdge::getColorValue(), GUIPerson::getColorValue(), GNEPOI::getGlID(), GNEPoly::getGlID(), GUISUMOAbstractView::getGUIGlObjectsAtPosition(), GUIEdge::getIDs(), GUISUMOAbstractView::getObjectAtPosition(), GUISUMOAbstractView::getObjectsAtPosition(), GUIShapeContainer::getPOIIds(), GUIShapeContainer::getPolygonIDs(), GUIBaseVehicle::getPopUpMenu(), GUIContainer::getPopUpMenu(), GUIPerson::getPopUpMenu(), GUIEdge::getScaleValue(), GUITransportableControl::insertIDs(), GUIMEVehicleControl::insertVehicleIDs(), GUIVehicleControl::insertVehicleIDs(), isLaneOrEdgeSelected(), GUIVehicle::isSelected(), GUIContainer::isSelected(), GUIEdge::isSelected(), isSelected(), GUIPerson::isSelected(), GUISelectedStorage::isSelected(), GUISUMOViewParent::isSelected(), GUIGlChildWindow::isSelected(), GUIViewTraffic::onCmdAddRerouter(), GUIGLObjectPopupMenu::onCmdAddSelected(), GUIGLObjectPopupMenu::onCmdCenter(), GNEElementTree::onCmdCenterItem(), GUIViewTraffic::onCmdCloseEdge(), GUIViewTraffic::onCmdCloseLane(), GUIDialog_GLChosenEditor::onCmdDeselect(), GUIApplicationWindow::onCmdEditChosen(), GUIGLObjectPopupMenu::onCmdRemoveSelected(), GUIBaseVehicle::GUIBaseVehiclePopupMenu::onCmdStartTrack(), GUIContainer::GUIContainerPopupMenu::onCmdStartTrack(), GUIPerson::GUIPersonPopupMenu::onCmdStartTrack(), GUIDialog_ChooserAbstract::onCmdTrack(), GUIViewTraffic::onGamingClick(), GUIDialog_ChooserAbstract::refreshList(), GLObjectValuePassConnector< T >::removeObject(), GUIVehicle::selectBlockingFoes(), GUIPointOfInterest::setColor(), GUIPolygon::setColor(), GUIMessageWindow::setCursorPos(), GUIViewTraffic::showLaneReachability(), GUIGlObject::~GUIGlObject(), and GUIPerson::~GUIPerson().

◆ getHarmonoise_NoiseEmissions()

double MSLane::getHarmonoise_NoiseEmissions ( ) const
inherited

Returns the sum of last step noise emissions.

Returns
noise emissions of vehicles on this lane during the last step

Definition at line 3125 of file MSLane.cpp.

References MSLane::getVehiclesSecure(), MSLane::releaseVehicles(), and HelpersHarmonoise::sum().

Referenced by getColorValue(), getScaleValue(), and MSFullExport::writeLane().

Here is the caller graph for this function:

◆ getID()

const std::string & Named::getID ( ) const
inlineinherited

Returns the id.

Returns
The stored id

Definition at line 74 of file Named.h.

References Named::myID.

Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSCFModel_EIDM::_v(), MSCFModel_ACC::_v(), MSCFModel_IDM::_v(), MSCFModel_CACC::_v(), MSCFModel_Wiedemann::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSTransportableControl::abortAnyWaitingForVehicle(), MSLaneChangerSublane::abortLCManeuver(), MSTransportable::abortStage(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToJunctionLeader(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaderDistance(), MSVehicle::adaptToLeaders(), MSVehicleTransfer::add(), MSPModel_Striping::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSTractionSubstation::addChargeValueForOutput(), MSChargingStation::addChargeValueForOutput(), MSOverheadWire::addChargeValueForOutput(), NBNodeCont::addCluster2Join(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), NIXMLEdgesHandler::addEdge(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSLCM_SL2015::addLCSpeedAdvice(), MSLane::addLeaders(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), MSTractionSubstation::addOverheadWireClampToCircuit(), MSTractionSubstation::addOverheadWireInnerSegmentToCircuit(), MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSTriggeredRerouter::addParkValues(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), MSDevice_Taxi::addReservation(), MSDispatch::addReservation(), MSRouteHandler::addRideOrTransport(), RONet::addRouteDef(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), RORouteHandler::addStop(), ROVehicle::addStop(), MSBaseVehicle::addStop(), MSNet::addStoppingPlace(), MSRouteHandler::addTranship(), MSVehicle::addTransportable(), AGActivityTripWriter::addTrip(), MSRouteHandler::addVehicleStopsToImplicitRoute(), NIXMLConnectionsHandler::addWalkingArea(), MSBaseVehicle::allowsBoarding(), MSTransportable::appendStage(), LIBSUMO_NAMESPACE::Person::appendWalkingStage(), MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilterLateralDistanceSinglePass(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), MSLaneChanger::avoidDeadlock(), MSDevice_ToC::awarenessRecoveryStep(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), MSVehicle::boardTransportables(), NIVisumTL::build(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), MSTransportableDevice_Routing::buildDevices(), MSTransportableDevice_BTreceiver::buildDevices(), MSTransportableDevice_BTsender::buildDevices(), MSTransportableDevice_FCD::buildDevices(), NIImporter_VISUM::buildDistrictNode(), MSRailSignal::LinkInfo::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), NLDetectorBuilder::buildInductLoop(), NBEdge::buildInnerEdges(), NLTriggerBuilder::buildInnerOverheadWireSegments(), GNETLSEditorFrame::buildInternalLanes(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBOwnTLDef::buildNemaPhases(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSRailSignal::DriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), libsumo::Helper::buildStopParameters(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSVehicleDevice_BTreceiver::buildVehicleDevices(), MSVehicleDevice_BTsender::buildVehicleDevices(), MSDevice_DriverState::buildVehicleDevices(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice_FCD::buildVehicleDevices(), MSDevice_Friction::buildVehicleDevices(), MSDevice_GLOSA::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSDevice_SSM::buildVehicleDevices(), MSDevice_Taxi::buildVehicleDevices(), MSDevice_ToC::buildVehicleDevices(), MSDevice_Tripinfo::buildVehicleDevices(), MSDevice_Transportable::buildVehicleDevices(), MSDevice_Vehroutes::buildVehicleDevices(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), NEMALogic::calculateInitialPhases170(), MSE2Collector::calculateTimeLossAndTimeOnDetector(), MSStageDriving::canLeaveVehicle(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLCHelper::canSaveBlockerLength(), MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLCM_SL2015::changed(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSActuatedTrafficLightLogic::changeStepAndDuration(), MSSimpleTrafficLightLogic::changeStepAndDuration(), LIBSUMO_NAMESPACE::Vehicle::changeTarget(), MSTLLogicControl::check2Switch(), MSEdge::checkAndRegisterBiDirEdge(), MSLaneChanger::checkChange(), MSLaneChanger::checkChangeOpposite(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), NBEdgeCont::checkConsistency(), MSRailSignal::DriveWay::checkCrossingFlanks(), MSDevice_ToC::checkDynamicToC(), MSLane::checkFailure(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSE2Collector::checkPositioning(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MEVehicle::checkStop(), MSLCM_SL2015::checkStrategicChange(), MSAbstractLaneChangeModel::checkTraCICommands(), MSLaneChanger::checkTraCICommands(), MSLink::checkWalkingAreaFoe(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), MSDevice_SSM::closeEncounter(), MSRouteHandler::closeFlow(), RORouteHandler::closeRouteDistribution(), MSRouteHandler::closeVehicle(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), MSLCM_SL2015::commitManoeuvre(), IntermodalRouter< E, L, N, V >::compute(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), MSVehicle::computeAngle(), MSDispatch::computeDetourTime(), NBNodeShapeComputer::computeEdgeBoundaries(), MSVehicle::computeFurtherLanes(), MSDevice_SSM::computeGlobalMeasures(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), RODFNet::computeRoutesFor(), MSLaneChanger::computeSafeOppositeLength(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), MSLCM_LC2013::computeSpeedLat(), MSLCM_SL2015::computeSpeedLat(), MSDevice_SSM::computeSSMs(), MSLaneChanger::computeSurplusGap(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), NGNet::connect(), MSRailSignal::constraintsAllow(), NEMALogic::constructTimingAndPhaseDefs(), MSLaneChanger::continueChange(), MSLaneChangerSublane::continueChangeSublane(), libsumo::Helper::convertCartesianToRoadMap(), LIBSUMO_NAMESPACE::Person::convertTraCIStage(), NBLoadedSUMOTLDef::copyIndices(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GNETLSEditorFrame::TLSDefinition::createTLS(), GUINet::createTLWrapper(), MSDevice_Taxi::customerArrived(), NBNodeCont::customTLID(), MSDevice_ToC::deactivateDeliberateLCs(), MSRailSignal::DriveWay::deadlockLaneOccupied(), libsumo::Helper::debugPrint(), MSLCM_SL2015::decideDirection(), MSActuatedTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSVehicleControl::deleteVehicle(), MSDevice_ElecHybrid::deleteVehicleFromCircuit(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSE3Collector::detectorUpdate(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSRoute::dict_saveState(), MSEdge::dictionaryHint(), NBNodeCont::discardTrafficLights(), MSDispatch_Greedy::dispatch(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), MSDevice_Taxi::dispatchShared(), drawGL(), MSDevice_SSM::Encounter::Encounter(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), MSE3Collector::enter(), NEMAPhase::enter(), MSParkingArea::enter(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), MSTransportableControl::erase(), NEMALogic::error_handle_not_set(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), Command_RouteReplacement::execute(), MSDevice_BTreceiver::BTreceiverUpdate::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSVehicle::executeFractionalMove(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), LIBSUMO_NAMESPACE::Person::filterReservation(), NBLoadedSUMOTLDef::finalChecks(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSLaneChanger::findCandidate(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), LIBSUMO_NAMESPACE::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), MSDevice_SSM::flushGlobalMeasures(), MSCFModel_CACC::followSpeed(), MSCFModel_EIDM::followSpeed(), MSCFModel_W99::followSpeed(), NBTrafficLightDefinition::forbids(), MSLaneChanger::foundHilltop(), MSCFModel_EIDM::freeSpeed(), NBNodeCont::generateNodeClusters(), MSDevice_Tripinfo::generateOutput(), MSStopOut::generateOutputForUnfinished(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), MSLaneChanger::getBestLanesOpposite(), NBOwnTLDef::getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSRailSignal::getClickableTLLinkID(), LIBSUMO_NAMESPACE::Simulation::getCollisions(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSActuatedTrafficLightLogic::getConditions(), LIBSUMO_NAMESPACE::TrafficLight::getConstraintsByFoe(), LIBSUMO_NAMESPACE::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), MSCalibrator::getCurrentStateInterval(), NBNodeShapeComputer::getDefaultRadius(), MSLink::getDescription(), MSStop::getDescription(), NBTrafficLightDefinition::getDescription(), GUIPerson::getDestinationEdgeID(), GUIPerson::getDestinationStopID(), MSDevice_SSM::getDetectionRange(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), MSRailSignal::LinkInfo::getDriveWay(), MSSimpleTrafficLightLogic::getEarliest(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), LIBSUMO_NAMESPACE::RouteProbe::getEdgeID(), MSDevice_SSM::getExtraTime(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFirstVehicleInformation(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), NBEdge::getID(), MSRailSignal::getJunctionLinkID(), RORouteHandler::getJunctionTaz(), LIBSUMO_NAMESPACE::Calibrator::getLaneID(), MSParkingArea::getLastFreePos(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSSimpleTrafficLightLogic::getLatest(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLaneChangerSublane::getLeaders(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSDevice_BTsender::getLocation(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), MSDevice_SSM::getMeasuresAndThresholds(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPModel_Striping::getNeighboringObstacles(), MSCalibrator::getNewVehicleID(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSDevice_SSM::getOutputFilename(), MSDevice_ElecHybrid::getOverheadWireSegmentID(), MSOverheadWire::getOverheadWireSegmentName(), MSDevice_ToC::getParameter(), MSActuatedTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIContainer::getParameterWindow(), getParameterWindow(), getParentName(), MSLane::getPartialBehind(), MSSimpleDriverState::getPerceivedHeadway(), MSSimpleDriverState::getPerceivedSpeedDifference(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), MSBaseVehicle::getPrefixedParameter(), MSCFModel_CC::getRadarMeasurements(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), LIBSUMO_NAMESPACE::Vehicle::getRoadID(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::Vehicle::getRouteID(), LIBSUMO_NAMESPACE::Calibrator::getRouteProbeID(), MSBaseVehicle::getRouteValidity(), GUIBaseVehicle::getScaleValue(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getSingularType(), MSTransportable::getSingularType(), LIBSUMO_NAMESPACE::Person::getStage(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSStageDriving::getStageSummary(), MSStageTranship::getStageSummary(), MSStageTrip::getStageSummary(), MSStageWaiting::getStageSummary(), MSDevice_Taxi::getStopLane(), MSNet::getStoppingPlaceID(), MSDevice::getStringParam(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), MSRailSignal::getTLLinkID(), NIImporter_OpenDrive::getTLSSecure(), MSDevice_ElecHybrid::getTractionSubstationID(), PedestrianEdge< E, L, N, V >::getTravelTime(), MSVehicle::getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), LIBSUMO_NAMESPACE::Person::getVehicle(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), GUIPerson::getVehicleID(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSRailSignalConstraint::getVehID(), MSStageDriving::getWaitingDescription(), MSEdge::getWaitingVehicle(), MSLink::getZipperSpeed(), GNEEdge::GNEEdge(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSRailSignal::hasInsertionConstraint(), MSRailSignal::hasOncomingRailTraffic(), MSBaseVehicle::hasValidRouteStart(), MSVehicle::hasValidRouteStart(), MSBaseVehicle::haveValidStopEdges(), LIBSUMO_NAMESPACE::POI::highlight(), LIBSUMO_NAMESPACE::Vehicle::highlight(), MSIdling_Stop::idle(), MSIdling_RandomCircling::idle(), MSLink::ignoreFoe(), MSVehicle::ignoreRed(), MSVehicle::Influencer::implicitDeltaPosRemote(), NBNode::indirectLeftShape(), MSLCM_LC2013::inform(), MSLCM_SL2015::inform(), MSLCM_SL2015::informFollower(), MSLCM_LC2013::informFollower(), MSLCM_SL2015::informLeader(), MSLCM_LC2013::informLeader(), MSCalibrator::init(), NBEdge::init(), MSDelayBasedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSRailSignal::init(), NEMALogic::init(), MSActuatedTrafficLightLogic::initAttributeOverride(), MSE2Collector::initAuxiliaries(), MESegment::initialise(), MSTrafficLightLogic::initMesoTLSPenalties(), PolygonDynamics::initTrackedPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), MSPModel_Striping::initWalkingAreaPaths(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NIImporter_OpenStreetMap::insertEdge(), MSCFModel_IDM::insertionFollowSpeed(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSEdge::insertVehicle(), MSLane::integrateNewVehicles(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isAllowed(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MESegment::isOpen(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), RORoute::isValid(), MSStageDriving::isWaitingFor(), MESegment::jamThresholdForSpeed(), NBNodeCont::joinNodeCluster(), NBNodeCont::joinSameJunctions(), MSVehicle::joinTrainPartFront(), MSAbstractLaneChangeModel::laneChangeOutput(), MSVehicle::lateralDistanceToLane(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSVehicle::leaveLane(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), MSActuatedTrafficLightLogic::loadState(), ODDistrictCont::makeDistricts(), MSE2Collector::makeMoveNotification(), MSE2Collector::makeVehicleInfo(), MEVehicle::mayProceed(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::PState::moveTo(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), MSDevice_ToC::MRMExecutionStep(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSDevice_ElecHybrid::MSDevice_ElecHybrid(), MSDevice_Taxi::MSDevice_Taxi(), MSDevice_ToC::MSDevice_ToC(), MSE2Collector::MSE2Collector(), MSLCM_LC2013::MSLCM_LC2013(), MSParkingArea::MSParkingArea(), MSSimpleDriverState::MSSimpleDriverState(), MSLCM_SL2015::mustOvertakeStopped(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), MSStateHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSPModel_Striping::nextBlocking(), MSDevice_ElecHybrid::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_GLOSA::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), MSCalibrator::VehicleRemover::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDevice_ElecHybrid::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDevice_ElecHybrid::notifyMove(), MSDevice_Battery::notifyMove(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_GLOSA::notifyMove(), MSDevice_SSM::notifyMove(), MSE2Collector::notifyMove(), MSInductLoop::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_ToC::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GNETLSEditorFrame::TLSDefinition::onCmdResetCurrentProgram(), MSVehicle::onRemovalFromNet(), MSLink::opened(), RORouteHandler::openRoute(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), MSEdge::transportable_by_position_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), RODFNet::idComp::operator()(), MSLaneChangerSublane::outputLCStarted(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_stopPoints(), NIImporter_VISUM::parse_Turns(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildOverheadWireSection(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), MSRoutingEngine::patchSpeedForTurns(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSCFModel_CC::performAutoLaneChange(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), PolygonDynamics::PolygonDynamics(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), MSVehicle::Influencer::postProcessRemoteControl(), MSLCM_SL2015::prepareStep(), MSDevice_Taxi::prepareStop(), MSLCM_SL2015::preventSliding(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), MSStageDriving::proceed(), MSDevice_SSM::processEncounters(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSVehicle::processNextStop(), NIXMLNodesHandler::processNodeType(), TraCIServerAPI_Vehicle::processSet(), MSVehicle::processTraCISpeedControl(), NIXMLNodesHandler::processTrafficLightDefinitions(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), NBNodeCont::pruneSlipLaneNodes(), MSPModel_Striping::PState::PState(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdge::reduceGeometry(), MSNet::registerCollision(), MSRailSignalControl::registerProtectedDriveway(), MSLink::removeApproaching(), LIBSUMO_NAMESPACE::TrafficLight::removeConstraints(), MSVehicle::removePassedDriveItems(), MSCalibrator::removePending(), MSDispatch::removeReservation(), GNEJunction::removeTLSConnections(), NBNodeCont::rename(), NBTrafficLightLogicCont::rename(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::replaceStop(), MSTransportable::replaceVehicleType(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_SSM::requestsTrajectories(), MSDevice_ToC::requestToC(), MSPerson::reroute(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSTransportable::rerouteParkingArea(), MSDevice_ToC::resetDeliberateLCs(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), MSDevice_Bluelight::resetVehicle(), MSLaneChanger::resolveDeadlock(), LIBSUMO_NAMESPACE::Vehicle::resume(), MEVehicle::resumeFromStopping(), MSVehicle::resumeFromStopping(), MSRailSignal::retrieveDriveWay(), NIImporter_OpenDrive::retrieveSignalEdges(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSLane::safeInsertionSpeed(), LIBSUMO_NAMESPACE::RouteProbe::sampleCurrentRouteID(), LIBSUMO_NAMESPACE::RouteProbe::sampleLastRouteID(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSLCHelper::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSBaseVehicle::saveState(), MSLane::saveState(), MSTransportable::saveState(), MESegment::saveState(), MSDevice::saveState(), MSDevice_Routing::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSSimpleTrafficLightLogic::saveState(), MSStageDriving::saveState(), MSCalibrator::scheduleRemoval(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSVehicle::setAngle(), MSLink::setApproaching(), MSVehicle::setApproachingForAllLinks(), MSStageTrip::setArrived(), NBNodeCont::setAsTLControlled(), MSSimpleDriverState::setAwareness(), NLEdgeControlBuilder::setDefaultStopOffset(), MSBaseVehicle::setDepartAndArrivalEdge(), MSCalibrator::setFlow(), NBEdge::setGeometry(), MSBaseVehicle::setJunctionModelParameter(), MSTransportable::setJunctionModelParameter(), MSAbstractLaneChangeModel::setManeuverDist(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), MSLane::setOpposite(), MSLCM_SL2015::setOwnState(), MSDevice_ToC::setParameter(), MSActuatedTrafficLightLogic::setParameter(), MSSimpleTrafficLightLogic::setParameter(), NEMALogic::setParameter(), MSCFModel_CACC::setParameter(), MSCFModel_CC::setParameter(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), libsumo::Helper::setRemoteControlled(), MSLink::setRequestInformation(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), LIBSUMO_NAMESPACE::Vehicle::setRouteID(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), MSStageDriving::setVehicle(), MSOverheadWire::setVoltage(), NBEdge::shiftPositionAtNode(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSDispatch_TraCI::splitReservation(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSCFModel_EIDM::stopSpeed(), MSStopOut::stopStarted(), MSLane::succLinkSec(), LIBSUMO_NAMESPACE::TrafficLight::swapConstraints(), MSDevice_ToC::switchHolderType(), GNETLSEditorFrame::TLSDefinition::switchProgram(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), MSDevice_ToC::ToCPreparationStep(), libsumo::Helper::TransportableStateListener::transportableStateChanged(), TraCIServer::transportableStateChanged(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSDevice_ToC::triggerUpwardToC(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSActuatedTrafficLightLogic::trySwitch(), NEMALogic::trySwitch(), MSDevice_SSM::update(), MSSimpleDriverState::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffset(), MSVehicle::updateDriveItems(), MSRailSignal::updateDriveway(), MSDevice_SSM::updateEncounter(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::updateFurtherLanes(), MSLCM_SL2015::updateGaps(), GNENetHelper::AttributeCarriers::updateJunctionID(), MSDevice_Taxi::updateMove(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSVehicle::Influencer::updateRemoteControlRoute(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateShadowLane(), MSVehicle::updateState(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), MSDevice_SSM::useGeoCoords(), NEMALogic::validate_timing(), NBNodeTypeComputer::validateRailCrossings(), libsumo::Helper::VehicleStateListener::vehicleStateChanged(), TraCIServer::vehicleStateChanged(), MSDynamicShapeUpdater::vehicleStateChanged(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSInstantInductLoop::write(), NBParking::write(), MSElecHybridExport::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSRailSignalConstraint_Predecessor::write(), MSElecHybridExport::writeAggregated(), MSLink::writeApproaching(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), MSRoute::writeEdgeIDs(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), ROMAAssignments::writeInterval(), NWWriter_SUMO::writeJunction(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::writeLane(), MSDevice_SSM::writeLanesPositions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSTractionSubstation::writeOut(), MSDevice_ToC::writeOutput(), MSNet::writeOutput(), MSDevice_Vehroutes::writeOutput(), MSOverheadWire::writeOverheadWireSegmentOutput(), MSDevice_SSM::writePositions(), NWWriter_SUMO::writeRoundabout(), NWWriter_OpenDrive::writeSignals(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_SUMO::writeTrafficLight(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), MSLaneChanger::yieldToDeadlockOncoming(), MSLaneChanger::yieldToOppositeWaiting(), MSCalibrator::~MSCalibrator(), MSDevice_Transportable::~MSDevice_Transportable(), MSLaneSpeedTrigger::~MSLaneSpeedTrigger(), MSTriggeredRerouter::~MSTriggeredRerouter(), and RONet::~RONet().

◆ getIDSecure()

template<class T >
static std::string Named::getIDSecure ( const T *  obj,
const std::string &  fallBack = "NULL" 
)
inlinestaticinherited

get an identifier for Named-like object which may be Null

Definition at line 67 of file Named.h.

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::avoidDeadlock(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChangeOpposite(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), AStarRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), NBOwnTLDef::computeLogicAndConts(), NBPTLineCont::constructRoute(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSVehicle::executeMove(), NBRailwayTopologyAnalyzer::extendDirectionPriority(), MSRailSignal::DriveWay::findProtection(), NBPTLineCont::findWay(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), MSStopOut::generateOutputForUnfinished(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestCombination(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLaneID(), LIBSUMO_NAMESPACE::Person::getLaneID(), MSVehicle::getLatOffset(), MSLane::getLeaderOnConsecutive(), MSLaneChanger::getOncomingOppositeVehicle(), MSLaneChanger::getRealLeader(), GUIVehicle::getShadowLaneID(), GUIVehicle::getTargetLaneID(), MSDevice_SSM::getVehiclesOnJunction(), NBEdgeCont::guessRoundabouts(), MSCFModel_IDM::insertionFollowSpeed(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), libsumo::Helper::moveToXYMap_matchingRoutePosition(), MSDevice_Bluelight::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSDevice_Bluelight::notifyLeave(), MSVehicle::Influencer::postProcessRemoteControl(), MSVehicle::processNextStop(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), MSLaneChanger::resolveDeadlock(), MSLCHelper::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), MSVehicle::updateBestLanes(), MSAbstractLaneChangeModel::updateShadowLane(), and MSLaneChanger::yieldToDeadlockOncoming().

◆ getIncomingLanes()

◆ getIncomingLinkState()

LinkState MSLane::getIncomingLinkState ( ) const
inherited

get the state of the link from the logical predecessor to this lane

Definition at line 2957 of file MSLane.cpp.

References MSLane::getLinkTo(), MSLane::getLogicalPredecessorLane(), MSLink::getState(), and LINKSTATE_DEADEND.

◆ getIndex()

◆ getInternalFollowingLane()

const MSLane * MSLane::getInternalFollowingLane ( const MSLane * const  target) const
inherited

returns the internal lane leading to the given lane or nullptr, if there is none

Definition at line 2440 of file MSLane.cpp.

References MSLane::myLinks.

Referenced by MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSPModel_Striping::getNextLane(), MSVehicle::getUpcomingLanesUntil(), and NLTriggerBuilder::parseAndBuildOverheadWireSection().

Here is the caller graph for this function:

◆ getLaneStopOffsets()

const StopOffset & MSLane::getLaneStopOffsets ( ) const
inherited

Returns vehicle class specific stopOffsets.

Definition at line 3434 of file MSLane.cpp.

References MSLane::myLaneStopOffset.

◆ getLaneType()

const std::string & MSLane::getLaneType ( ) const
inlineinherited

return the type of this lane

Definition at line 521 of file MSLane.h.

References MSLane::myLaneType.

◆ getLastAnyVehicle()

MSVehicle * MSLane::getLastAnyVehicle ( ) const
inherited

returns the last vehicle that is fully or partially on this lane

Definition at line 2351 of file MSLane.cpp.

References MSLane::myPartialVehicles, and MSLane::myVehicles.

Referenced by MSVehicle::checkRewindLinkLanes(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSLane::getDepartSpeed(), MSLane::getLeaderOnConsecutive(), and MSLane::lastInsertion().

Here is the caller graph for this function:

◆ getLastFullVehicle()

MSVehicle * MSLane::getLastFullVehicle ( ) const
inherited

returns the last vehicle for which this lane is responsible or 0

Definition at line 2342 of file MSLane.cpp.

References MSLane::myVehicles.

Referenced by MSCalibrator::remainingVehicleCapacity().

Here is the caller graph for this function:

◆ getLastVehicleInformation()

const MSLeaderInfo MSLane::getLastVehicleInformation ( const MSVehicle ego,
double  latOffset,
double  minPos = 0,
bool  allowCached = true 
) const
inherited

Returns the last vehicles on the lane.

The information about the last vehicles in this lanes in all sublanes occupied by ego are returned. Partial occupators are included

Parameters
[in]egoThe vehicle for which to restrict the returned leaderInfo
[in]minPosThe minimum position from which to start search for leaders
[in]allowCachedWhether the cached value may be used
Returns
Information about the last vehicles

Definition at line 1303 of file MSLane.cpp.

References MSLeaderInfo::addLeader(), MSLane::anyVehiclesBegin(), DEBUG_COND2, gDebugFlag1, MSNet::getCurrentTimeStep(), Named::getID(), MSNet::getInstance(), MSVehicle::getLatOffset(), MSVehicle::getPositionOnLane(), MSGlobals::gNumSimThreads, MSLane::myLeaderInfo, MSLane::myLeaderInfoTime, MSLane::myWidth, and MSLeaderInfo::toString().

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

Here is the caller graph for this function:

◆ getLeader()

std::pair< MSVehicle *const, double > MSLane::getLeader ( const MSVehicle veh,
const double  vehPos,
const std::vector< MSLane * > &  bestLaneConts,
double  dist = -1,
bool  checkTmpVehicles = false 
) const
inherited

Returns the immediate leader of veh and the distance to veh starting on this lane.

Iterates over the current lane to find a leader and then uses getLeaderOnConsecutive()

Parameters
[in]vehThe vehicle for which the information shall be computed
[in]vehPosThe vehicle position relative to this lane (may be negative)
[in]bestLaneContsThe succeding lanes that shall be checked (if any)
[in]distOptional distance to override default (ego stopDist)
[in]checkTmpVehiclesWhether myTmpVehicles should be used instead of myVehicles
Returns

Definition at line 2589 of file MSLane.cpp.

References MSLane::anyVehiclesBegin(), MSLane::anyVehiclesEnd(), MSCFModel::brakeGap(), DEBUG_COND2, MSVehicle::getBackPositionOnLane(), MSVehicle::getCarFollowModel(), Named::getID(), MSVehicle::getLaneChangeModel(), MSLane::getLeaderOnConsecutive(), MSLane::getLength(), MSVehicleType::getMinGap(), MSVehicle::getPositionOnLane(), MSAbstractLaneChangeModel::getShadowLane(), MSVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), MSGlobals::gLaneChangeDuration, gPrecision, MSAbstractLaneChangeModel::isChangingLanes(), MSAbstractLaneChangeModel::isOpposite(), MSLane::myTmpVehicles, MSLane::myVehicles, and toString().

Referenced by libsumo::Helper::applySubscriptionFilters(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::insertVehicle(), and MSLane::lastInsertion().

Here is the caller graph for this function:

◆ getLeaderOnConsecutive()

std::pair< MSVehicle *const, double > MSLane::getLeaderOnConsecutive ( double  dist,
double  seen,
double  speed,
const MSVehicle veh,
const std::vector< MSLane * > &  bestLaneConts 
) const
inherited

Returns the immediate leader and the distance to him.

Goes along the vehicle's estimated used lanes (bestLaneConts). For each link, it is determined whether the vehicle will pass it. If so, the subsequent lane is investigated. If a vehicle (leader) is found, it is returned, together with the length of the investigated lanes until this vehicle's end, including the already seen place (seen).

If no leading vehicle was found, <0, -1> is returned.

Pretty slow, as it has to go along lanes.

Todo:
: There are some oddities:
  • what about crossing a link at red, or if a link is closed? Has a following vehicle to be regarded or not?
Parameters
[in]distThe distance to investigate
[in]seenThe already seen place (normally the place in front on own lane)
[in]speedThe speed of the vehicle used for determining whether a subsequent link will be opened at arrival time
[in]vehThe vehicle for which the information shall be computed
[in]bestLaneContsThe lanes the vehicle will use in future
Returns

Definition at line 2661 of file MSLane.cpp.

References MSCFModel::brakeGap(), DEBUG_COND2, gDebugFlag1, MSVehicle::getBackPositionOnLane(), MSVehicle::getCarFollowModel(), Named::getID(), Named::getIDSecure(), MSVehicle::getLane(), MSLane::getLastAnyVehicle(), MSLane::getLength(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSVehicle::getSpeed(), MSLane::getVehicleMaxSpeed(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), MSLane::isInternal(), MSVehicle::isLeader(), MSLane::isLinkEnd(), MSLane::myPartialVehicles, MSLane::releaseVehicles(), MSLane::succLinkSec(), and toString().

Referenced by MSLane::getLeader(), and MSVehicle::getLeader().

Here is the caller graph for this function:

◆ getLeadersOnConsecutive()

void MSLane::getLeadersOnConsecutive ( double  dist,
double  seen,
double  speed,
const MSVehicle ego,
const std::vector< MSLane * > &  bestLaneConts,
MSLeaderDistanceInfo result,
bool  oppositeDirection = false 
) const
inherited

◆ getLength()

double MSLane::getLength ( ) const
inlineinherited

Returns the lane's length.

Returns
This lane's length

Definition at line 575 of file MSLane.h.

References MSLane::myLength.

Referenced by MSPerson::MSPersonStage_Walking::activateLeaveReminders(), MSVehicle::adaptLaneEntering2MoveReminder(), MSVehicle::adaptToJunctionLeader(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), NLTriggerBuilder::addAccess(), NLHandler::addConnection(), MSPModel_Striping::addCrossingVehs(), NLHandler::addE2Detector(), MSLane::addIncomingLane(), MSLane::addLeaders(), MSParkingArea::addLotEntry(), MSTractionSubstation::addOverheadWireInnerSegmentToCircuit(), MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSBaseVehicle::addStop(), libsumo::Helper::applySubscriptionFilterLanes(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NLDetectorBuilder::buildE2Detector(), NLDetectorBuilder::buildInductLoop(), NLTriggerBuilder::buildInnerOverheadWireSegments(), MSRailSignal::DriveWay::buildRoute(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSE2Collector::checkPositioning(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSDevice_SSM::classifyEncounter(), MSVehicle::computeAngle(), MSLink::computeDistToDivergence(), MSVehicle::computeFurtherLanes(), debugDrawFoeIntersections(), MSLane::detectCollisionBetween(), GUIVehicle::drawAction_drawCarriageClass(), GUIEdge::drawMesoVehicles(), GUIVehicle::drawRouteHelper(), MSVehicle::estimateTimeToNextStop(), MSVehicle::executeMove(), MSLane::executeMovements(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSLane::freeInsertion(), MSMeanData_Net::getAttributeValue(), MSVehicle::getBackPositionOnLane(), getColorValue(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSVehicle::getDistanceToPosition(), MSE2Collector::getEstimateQueueLength(), MSLane::getFirstInternalInConnection(), MSLane::getFollowersOnConsecutive(), MSAbstractLaneChangeModel::getForwardPos(), MSLink::getInternalLengthsAfter(), MSLink::getInternalLengthsBefore(), libsumo::Helper::getLaneChecking(), NLShapeHandler::getLanePos(), MSLane::getLeader(), MSVehicle::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSLink::getLengthsBeforeCrossing(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSLane::getOppositeFollower(), MSVehicle::getPastLanesUntil(), NLTriggerBuilder::getPosition(), MSVehicle::getPositionAlongBestLanes(), NLDetectorBuilder::getPositionChecking(), MSLaneChanger::getRealLeader(), MSVehicle::getRerouteOrigin(), MSLCHelper::getRoundaboutDistBonus(), MSLane::getSpaceTillLastStanding(), MSLane::getSurroundingVehicles(), LIBSUMO_NAMESPACE::Lane::getTraveltime(), MSVehicle::getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSPModel_Striping::getVehicleObstacles(), MSLane::handleCollisionBetween(), MSVehicle::hasArrivedInternal(), MSLCM_LC2013::informFollower(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSE2Collector::initAuxiliaries(), MSPModel_Striping::initWalkingAreaPaths(), MSLane::insertVehicle(), MSCFModel_EIDM::internalspeedlimit(), MSLane::isInsertionSuccess(), MSLane::lastInsertion(), MSVehicle::leaveLane(), MSPModel_Striping::moveInDirectionOnLane(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), MSE2Collector::MSE2Collector(), MSParkingArea::MSParkingArea(), MSDevice_GLOSA::notifyEnter(), MSDevice_Tripinfo::notifyLeave(), MSDevice_ElecHybrid::notifyMove(), MSDevice_Bluelight::notifyMove(), NLTriggerBuilder::parseAndBeginParkingArea(), NLTriggerBuilder::parseAndBuildChargingStation(), NLTriggerBuilder::parseAndBuildOverheadWireSegment(), MSRouteHandler::parseWalkPositions(), MSVehicle::planMoveInternal(), MSVehicle::Influencer::postProcessRemoteControl(), MSDevice_Taxi::prepareStop(), MSVehicle::processLaneAdvances(), MSE2Collector::recalculateDetectorLength(), MSCalibrator::remainingVehicleCapacity(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSVehicle::setBlinkerInformation(), MSLane::setOpposite(), MSLink::setRequestInformation(), MSVehicle::unsafeLinkAhead(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::validatePosition(), MSLCM_DK2008::wantsChangeToLeft(), MSLCM_DK2008::wantsChangeToRight(), MSMeanData::writeEdge(), and MSQueueExport::writeLane().

◆ getLengthGeometryFactor()

double MSLane::getLengthGeometryFactor ( ) const
inlineinherited

return shape.length() / myLength

Definition at line 511 of file MSLane.h.

References MSLane::myLengthGeometryFactor.

Referenced by GUIBaseVehicle::drawOnPos().

Here is the caller graph for this function:

◆ getLinkCont()

const std::vector< MSLink * > & MSLane::getLinkCont ( ) const
inlineinherited

returns the container with all links !!!

Definition at line 675 of file MSLane.h.

References MSLane::myLinks.

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSPModel_Striping::addCrossingVehs(), MSRailSignal::DriveWay::buildRoute(), MSDevice_SSM::classifyEncounter(), MSVehicle::computeFurtherLanes(), MSLink::computeParallelLink(), MSLink::contIntersect(), debugDrawFoeIntersections(), drawGL(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), MSRailSignal::DriveWay::findProtection(), MSDevice_SSM::findSurroundingVehicles(), MSVehicle::getBestLanesContinuation(), MSLink::getCorrespondingExitLink(), LIBSUMO_NAMESPACE::Lane::getInternalFoes(), MSLink::getInternalLengthsAfter(), LIBSUMO_NAMESPACE::Vehicle::getLeader(), MSLink::getLeaderInfo(), MSLink::getLengthsBeforeCrossing(), MESegment::getLink(), LIBSUMO_NAMESPACE::Lane::getLinks(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextWalkingArea(), MSLink::getOppositeDirectionLink(), MSVehicle::getPastLanesUntil(), MSVehicle::getPositionAlongBestLanes(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::TrafficLight::getServedPersonCount(), MSLane::getSurroundingVehicles(), MSVehicle::getUpcomingLanesUntil(), MSActuatedTrafficLightLogic::init(), NEMALogic::init(), MSE2Collector::initAuxiliaries(), NEMALogic::isLeftTurnLane(), MSVehicle::isOppositeLane(), MSStateHandler::myStartElement(), MSVehicle::planMoveInternal(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), MSVehicle::processLaneAdvances(), MSVehicle::setBlinkerInformation(), MSLink::setRequestInformation(), MSVehicle::updateBestLanes(), MSVehicle::updateDriveItems(), MSLCM_DK2008::wantsChangeToLeft(), and MSLCM_DK2008::wantsChangeToRight().

Here is the caller graph for this function:

◆ getLinkTo()

◆ getLoadedEdgeWeight()

double GUILane::getLoadedEdgeWeight ( ) const

Returns the loaded weight (effort) for the edge of this lane.

Definition at line 1052 of file GUILane.cpp.

References MSNet::getInstance(), MSNet::getWeightsStorage(), MSEdgeWeightsStorage::knowsEffort(), MSLane::myEdge, MSEdgeWeightsStorage::retrieveExistingEffort(), and STEPS2TIME.

Referenced by getColorValue(), getParameterWindow(), and getScaleValue().

Here is the caller graph for this function:

◆ getLogicalPredecessorLane() [1/2]

◆ getLogicalPredecessorLane() [2/2]

MSLane * MSLane::getLogicalPredecessorLane ( const MSEdge fromEdge) const
inherited

return the (first) predecessor lane from the given edge

Definition at line 2901 of file MSLane.cpp.

References MSLane::myIncomingLanes.

◆ getMaximumBrakeDist()

double MSLane::getMaximumBrakeDist ( ) const
inherited

compute maximum braking distance on this lane

Definition at line 2578 of file MSLane.cpp.

References MSNet::getInstance(), MSVehicleControl::getMaxSpeedFactor(), MSVehicleControl::getMinDeceleration(), MSLane::getSpeedLimit(), MSNet::getVehicleControl(), MIN2(), MSLane::myPermissions, and SVC_SHIP.

Referenced by MSLane::getFollowersOnConsecutive(), MSLane::getOppositeFollower(), and MSVehicle::getUpstreamOppositeLanes().

Here is the caller graph for this function:

◆ getMeanSpeed()

double MSLane::getMeanSpeed ( ) const
inherited

Returns the mean speed on this lane.

Returns
The average speed of vehicles during the last step; default speed if no vehicle was on this lane

Definition at line 3079 of file MSLane.cpp.

References MSLane::getVehiclesSecure(), MSEdge::hasLaneChanger(), MSLane::myEdge, MSLane::myMaxSpeed, MSLane::myVehicles, and MSLane::releaseVehicles().

Referenced by getColorValue(), MSLane::getDepartSpeed(), getScaleValue(), LIBSUMO_NAMESPACE::Lane::getTraveltime(), MSCalibrator::invalidJam(), and MSFullExport::writeLane().

Here is the caller graph for this function:

◆ getMeanSpeedBike()

double MSLane::getMeanSpeedBike ( ) const
inherited

get the mean speed of all bicycles on this lane

Definition at line 3100 of file MSLane.cpp.

References MSLane::getVehiclesSecure(), MSLane::myMaxSpeed, MSLane::myVehicles, MSLane::releaseVehicles(), and SVC_BICYCLE.

◆ getMicrosimID()

const std::string & GUIGlObject::getMicrosimID ( ) const
inlineinherited

Returns the id of the object as known to microsim.

Definition at line 141 of file GUIGlObject.h.

References GUIGlObject::myMicrosimID.

Referenced by SUMORTree::addAdditionalGLObject(), GNETLSEditorFrame::controlsEdge(), GUIGlObject::createFullName(), GNENetHelper::AttributeCarriers::deleteEdgeType(), GNENetHelper::AttributeCarriers::deleteSingleEdge(), GNENetHelper::AttributeCarriers::deleteSingleJunction(), GNEAdditional::drawAdditionalID(), GUIGlObject::drawName(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEClosingLaneReroute::getAttribute(), GNEClosingReroute::getAttribute(), GNEContainerStop::getAttribute(), GNEDestProbReroute::getAttribute(), GNEInductionLoopDetector::getAttribute(), GNEInstantInductionLoopDetector::getAttribute(), GNELaneAreaDetector::getAttribute(), GNEMultiEntryExitDetector::getAttribute(), GNEOverheadWire::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingAreaReroute::getAttribute(), GNEParkingSpace::getAttribute(), GNERerouter::getAttribute(), GNERouteProbe::getAttribute(), GNERouteProbReroute::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNETractionSubstation::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEVariableSpeedSignStep::getAttribute(), GNEContainer::getAttribute(), GNEPerson::getAttribute(), GNERoute::getAttribute(), GNEStop::getAttribute(), GNEVehicle::getAttribute(), GNEVType::getAttribute(), GNEVTypeDistribution::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEEdgeType::getAttribute(), GNEJunction::getAttribute(), GNELane::getAttribute(), GNEWalkingArea::getAttribute(), GNEWalkingArea::getNBWalkingArea(), GUIDialog_ChooserAbstract::getObjectName(), GNEDialogACChooser::getObjectName(), GNEMultiEntryExitDetector::getParentName(), GNERerouter::getParentName(), GNETAZ::getParentName(), GNETractionSubstation::getParentName(), GNEVariableSpeedSign::getParentName(), GNEVType::getParentName(), GNEVTypeDistribution::getParentName(), GNEPOI::getParentName(), GNEPoly::getParentName(), GNEChange_TLS::GNEChange_TLS(), GNETLSEditorFrame::handleMultiChange(), GNENetHelper::AttributeCarriers::insertEdgeType(), GNEViewNet::mergeJunctions(), GUIGLObjectPopupMenu::onCmdCopyName(), GNENetHelper::AttributeCarriers::registerEdge(), GNENetHelper::AttributeCarriers::registerEdgeType(), GNENetHelper::AttributeCarriers::registerJunction(), SUMORTree::removeAdditionalGLObject(), and GNENet::splitEdge().

◆ getMissingRearGap()

double MSLane::getMissingRearGap ( const MSVehicle leader,
double  backOffset,
double  leaderSpeed 
) const
inherited

return by how much further the leader must be inserted to avoid rear end collisions

Definition at line 2562 of file MSLane.cpp.

References MSVehicle::getCarFollowModel(), MSLane::getFollowersOnConsecutive(), MSCFModel::getMaxDecel(), MSCFModel::getSecureGap(), and MSVehicle::getSpeed().

Referenced by MSLane::freeInsertion(), and MSLane::isInsertionSuccess().

Here is the caller graph for this function:

◆ getMoveReminders()

const std::vector< MSMoveReminder * > & MSLane::getMoveReminders ( ) const
inlineinherited

Return the list of this lane's move reminders.

Returns
Previously added move reminder

Definition at line 296 of file MSLane.h.

References MSLane::myMoveReminders.

Referenced by MSPerson::MSPersonStage_Walking::activateEntryReminders(), MSVehicle::adaptLaneEntering2MoveReminder(), MSVehicle::enterLaneAtInsertion(), MSVehicle::enterLaneAtLaneChange(), MSPerson::MSPersonStage_Walking::proceed(), and MSVehicle::processNextStop().

Here is the caller graph for this function:

◆ getNettoOccupancy()

double MSLane::getNettoOccupancy ( ) const
inherited

Returns the netto (excluding minGaps) occupancy of this lane during the last step (including minGaps)

Returns
The occupancy during the last step

Definition at line 3051 of file MSLane.cpp.

References MSLane::getFractionalVehicleLength(), MSVehicleType::getLength(), MSVehicle::getPositionOnLane(), MSLane::getVehiclesSecure(), MSBaseVehicle::getVehicleType(), MSLane::myLength, MSLane::myNettoVehicleLengthSum, MSLane::myVehicles, and MSLane::releaseVehicles().

Referenced by getColorValue(), getParameterWindow(), getScaleValue(), and MSFullExport::writeLane().

Here is the caller graph for this function:

◆ getNextNormal()

const MSEdge * MSLane::getNextNormal ( ) const
inherited

Returns the lane's follower if it is an internal lane, the edge of the lane otherwise.

Returns
This lane's follower

Definition at line 2175 of file MSLane.cpp.

References MSEdge::getNormalSuccessor(), and MSLane::myEdge.

Referenced by MSBaseVehicle::addStop(), MSRailSignal::DriveWay::buildRoute(), MSVehicle::getRerouteOrigin(), LIBSUMO_NAMESPACE::Vehicle::moveTo(), and MSVehicle::updateBestLanes().

Here is the caller graph for this function:

◆ getNormalIncomingLanes()

std::vector< const MSLane * > MSLane::getNormalIncomingLanes ( ) const
inherited

get the list of all direct (disregarding internal predecessors) non-internal predecessor lanes of this lane

Definition at line 2978 of file MSLane.cpp.

References MSLane::myApproachingLanes.

Referenced by MSTractionSubstation::addOverheadWireSegmentToCircuit(), and NLTriggerBuilder::parseAndBuildOverheadWireSection().

Here is the caller graph for this function:

◆ getNormalPredecessorLane()

const MSLane * MSLane::getNormalPredecessorLane ( ) const
inherited

get normal lane leading to this internal lane, for normal lanes, the lane itself is returned

Definition at line 2891 of file MSLane.cpp.

References MSLane::getLogicalPredecessorLane(), MSLane::getNormalPredecessorLane(), and MSLane::isInternal().

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLane::getNormalPredecessorLane(), MSVehicle::isLeader(), MSLink::setRequestInformation(), and MSVehicle::updateBestLanes().

Here is the caller graph for this function:

◆ getNumericalID()

int MSLane::getNumericalID ( ) const
inlineinherited

Returns this lane's numerical id.

Returns
This lane's numerical id

Definition at line 498 of file MSLane.h.

References MSLane::myNumericalID.

Referenced by MSDevice_ToC::checkDynamicToC(), MSDevice_ToC::notifyMove(), MSPModel_Striping::lane_by_numid_sorter::operator()(), and MSPModel_Striping::walkingarea_path_sorter::operator()().

Here is the caller graph for this function:

◆ getNumRNGs()

static int MSLane::getNumRNGs ( )
inlinestaticinherited

return the number of RNGs

Definition at line 250 of file MSLane.h.

References MSLane::myRNGs.

Referenced by MSLane::loadRNGState(), and MSLane::saveRNGStates().

Here is the caller graph for this function:

◆ getOpposite()

MSLane * MSLane::getOpposite ( ) const
inherited

return the neighboring opposite direction lane for lane changing or nullptr

Definition at line 4005 of file MSLane.cpp.

References MSLane::myOpposite.

Referenced by MSLaneChanger::changeOpposite(), MSVehicle::executeMove(), MSLink::getOppositeDirectionLink(), MSLink::getParallelLink(), MSVehicle::getUpstreamOppositeLanes(), MSLCM_SL2015::prepareStep(), MSLaneChangerSublane::startChangeSublane(), and MSLane::swapAfterLaneChange().

Here is the caller graph for this function:

◆ getOppositeFollower()

◆ getOppositeLeader()

std::pair< MSVehicle *const, double > MSLane::getOppositeLeader ( const MSVehicle ego,
double  dist,
bool  oppositeDir,
MinorLinkMode  mLinkMode = MinorLinkMode::FOLLOW_NEVER 
) const
inherited

◆ getOppositePos()

double MSLane::getOppositePos ( double  pos) const
inherited

◆ getOptionalName()

const std::string GUIGlObject::getOptionalName ( ) const
virtualinherited

Returns the name of the object (default "")

Reimplemented in GUIBaseVehicle, GUIBusStop, GUIChargingStation, GUIJunctionWrapper, GUIParkingArea, GUITrafficLightLogicWrapper, GNEEdge, and GUIEdge.

Definition at line 236 of file GUIGlObject.cpp.

Referenced by GUIDialog_ChooserAbstract::getObjectName().

Here is the caller graph for this function:

◆ getOutgoingViaLanes()

const std::vector< std::pair< const MSLane *, const MSEdge * > > MSLane::getOutgoingViaLanes ( ) const
inherited

get the list of outgoing lanes

Definition at line 2968 of file MSLane.cpp.

References MSLane::myLinks.

Referenced by MSTractionSubstation::addOverheadWireSegmentToCircuit(), and NLTriggerBuilder::parseAndBuildOverheadWireSection().

Here is the caller graph for this function:

◆ getParallelLane()

MSLane * MSLane::getParallelLane ( int  offset,
bool  includeOpposite = true 
) const
inherited

Returns the lane with the given offset parallel to this one or 0 if it does not exist.

Parameters
[in]offsetThe offset of the result lane

Definition at line 2521 of file MSLane.cpp.

References MSLane::myEdge, and MSEdge::parallelLane().

Referenced by libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilters(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChange(), MSLink::computeParallelLink(), MSLaneChanger::continueChange(), MSAbstractLaneChangeModel::determineTargetLane(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSAbstractLaneChangeModel::getShadowLane(), MSVehicle::lateralDistanceToLane(), MSLCM_SL2015::mustOvertakeStopped(), MSVehicle::planMoveInternal(), and MSAbstractLaneChangeModel::updateTargetLane().

Here is the caller graph for this function:

◆ getParallelOpposite()

◆ getParameter()

const std::string Parameterised::getParameter ( const std::string &  key,
const std::string  defaultValue = "" 
) const
virtualinherited

Returns the value for a given key.

Parameters
[in]keyThe key to ask for
[in]defaultValueThe default value to return if no value is stored under the key
Returns
The value stored under the key

Reimplemented in MSActuatedTrafficLightLogic, MSSimpleTrafficLightLogic, and NEMALogic.

Definition at line 71 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NBEdge::addRestrictedLane(), FareModul::addStop(), NBEdge::append(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_Battery::buildVehicleDevices(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), ROEdge::cacheParamRestrictions(), SUMOVTypeParameter::cacheParamRestrictions(), MSRailSignal::constraintsAllow(), GUINet::createTLWrapper(), GNEEdge::drawEdgeName(), GNEGenericData::drawFilteredAttribute(), GNEConnection::drawGL(), GUIEdge::drawGL(), EnergyParams::EnergyParams(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), LIBSUMO_NAMESPACE::Simulation::findIntermodalRoute(), MSSwarmTrafficLightLogic::getBetaNo(), MSSwarmTrafficLightLogic::getBetaSp(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSSwarmTrafficLightLogic::getChangePlanProbability(), GUIVehicle::getColorValue(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), GUIEdge::getColorValue(), getColorValue(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSSwarmTrafficLightLogic::getForgettingCox(), LIBSUMO_NAMESPACE::TrafficLight::getFutureTripIds(), MSSwarmTrafficLightLogic::getGammaNo(), MSSwarmTrafficLightLogic::getGammaSp(), MSTLLogicControl::WAUTSwitchProcedure::getGSPTime(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSSwarmTrafficLightLogic::getLearningCox(), MSSwarmTrafficLightLogic::getMaxCongestionDuration(), RORoutable::getMaxSpeed(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), GUIBaseVehicle::getOptionalName(), GUITrafficLightLogicWrapper::getOptionalName(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), MSSimpleTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSSwarmTrafficLightLogic::getPheroMaxVal(), MSSwarmTrafficLightLogic::getPoliciesParam(), MSBaseVehicle::getPrefixedParameter(), MSSwarmTrafficLightLogic::getReinforcementMode(), GUIBaseVehicle::getScaleValue(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSDevice::getStringParam(), MSSwarmTrafficLightLogic::getThetaInit(), MSSwarmTrafficLightLogic::getThetaMax(), MSSwarmTrafficLightLogic::getThetaMin(), MSSOTLTrafficLightLogic::getThreshold(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), MSRailSignalConstraint::getVehID(), MSTriggeredRerouter::getWeight(), MSRailSignal::hasInsertionConstraint(), MSLink::ignoreFoe(), MSSOTLPhasePolicy::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), PushButtonLogic::init(), SigmoidLogic::init(), SUMOVTypeParameter::initRailVisualizationParameters(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSAbstractLaneChangeModel::laneChangeOutput(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), MSDevice_GLOSA::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), GNEVType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), MSDevice_Bluelight::resetVehicle(), GNEEdgeData::setColor(), GNEEdgeRelData::setColor(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), NBEdge::setOrigID(), NBEdgeCont::splitAt(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), MSDevice_SSM::writePositions(), and NWWriter_OpenDrive::writeRoadObjects().

◆ getParametersMap()

const Parameterised::Map & Parameterised::getParametersMap ( ) const
inherited

Returns the inner key/value map.

Definition at line 126 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_SUMO::_loadNetwork(), NBEdge::addLane(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GNEGenericData::drawAttribute(), GNEGenericData::drawFilteredAttribute(), NLDetectorBuilder::endE3Detector(), GNEAccess::getACParametersMap(), GNECalibrator::getACParametersMap(), GNEDetector::getACParametersMap(), GNEMultiEntryExitDetector::getACParametersMap(), GNEOverheadWire::getACParametersMap(), GNEParkingSpace::getACParametersMap(), GNERerouter::getACParametersMap(), GNERouteProbe::getACParametersMap(), GNEStoppingPlace::getACParametersMap(), GNETAZ::getACParametersMap(), GNEVaporizer::getACParametersMap(), GNEVariableSpeedSign::getACParametersMap(), GNEDataInterval::getACParametersMap(), GNEDataSet::getACParametersMap(), GNEGenericData::getACParametersMap(), GNEContainer::getACParametersMap(), GNEPerson::getACParametersMap(), GNEPersonTrip::getACParametersMap(), GNERide::getACParametersMap(), GNERoute::getACParametersMap(), GNEStop::getACParametersMap(), GNETranship::getACParametersMap(), GNETransport::getACParametersMap(), GNEVehicle::getACParametersMap(), GNEVType::getACParametersMap(), GNEWalk::getACParametersMap(), GNEConnection::getACParametersMap(), GNECrossing::getACParametersMap(), GNEEdge::getACParametersMap(), GNEEdgeType::getACParametersMap(), GNEJunction::getACParametersMap(), GNELane::getACParametersMap(), GNELaneType::getACParametersMap(), GNEPOI::getACParametersMap(), GNEPoly::getACParametersMap(), MSRailSignalConstraint_Predecessor::getDescription(), getParameterWindow(), GNESingleParametersDialog::GNESingleParametersDialog(), MSRailCrossing::init(), MSActuatedTrafficLightLogic::init(), MSDevice_Taxi::initDispatch(), NIImporter_OpenStreetMap::insertEdge(), GNEEdgeData::isGenericDataVisible(), GNEEdgeRelData::isGenericDataVisible(), GNETAZRelData::isGenericDataVisible(), GNEGenericData::isVisibleInspectDeleteSelect(), NBEdge::NBEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GUIParameterTableWindow::numParams(), GNESingleParametersDialog::onCmdReset(), GNEVType::overwriteVType(), TraCIServerAPI_TrafficLight::processGet(), Parameterised::setParameters(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), and GNETAZRelData::writeGenericData().

◆ getParametersStr()

std::string Parameterised::getParametersStr ( const std::string  kvsep = "=",
const std::string  sep = "|" 
) const
inherited

Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".

Definition at line 132 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by GNEAccess::getAttribute(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEContainerStop::getAttribute(), GNEEntryExitDetector::getAttribute(), GNEInductionLoopDetector::getAttribute(), GNEInstantInductionLoopDetector::getAttribute(), GNELaneAreaDetector::getAttribute(), GNEMultiEntryExitDetector::getAttribute(), GNEOverheadWire::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingSpace::getAttribute(), GNERerouter::getAttribute(), GNERouteProbe::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNETractionSubstation::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEEdgeData::getAttribute(), GNEEdgeRelData::getAttribute(), GNETAZRelData::getAttribute(), GNEContainer::getAttribute(), GNEPerson::getAttribute(), GNERoute::getAttribute(), GNEVehicle::getAttribute(), GNEVType::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEEdgeType::getAttribute(), GNEJunction::getAttribute(), GNELane::getAttribute(), GNELaneType::getAttribute(), GNEPOI::getAttribute(), and GNEPoly::getAttribute().

Here is the caller graph for this function:

◆ getParameterWindow()

◆ getParentName()

std::string GUILane::getParentName ( ) const
inlineoverridevirtual

Returns the name of the parent object (if any)

Note
Inherited from GUIGlObject
Returns
This object's parent id

Reimplemented from GUIGlObject.

Definition at line 92 of file GUILane.h.

References MSLane::getEdge(), and Named::getID().

◆ getParkingVehicles()

const std::set< const MSBaseVehicle * > & MSLane::getParkingVehicles ( ) const
inlineinherited

retrieve the parking vehicles (see GUIParkingArea)

Definition at line 1177 of file MSLane.h.

References MSLane::myParkingVehicles.

Referenced by MSLane::StoringVisitor::add(), and GUIParkingArea::drawGL().

Here is the caller graph for this function:

◆ getPartialBehind()

MSVehicle * MSLane::getPartialBehind ( const MSVehicle ego) const
inherited

◆ getPartialBeyond()

MSLeaderInfo MSLane::getPartialBeyond ( ) const
inherited

get all vehicles that are inlapping from consecutive edges

Definition at line 3859 of file MSLane.cpp.

References MSLeaderInfo::addLeader(), MSVehicle::getLatOffset(), MSVehicle::isFrontOnLane(), MSLane::myPartialVehicles, and MSLane::myWidth.

◆ getPartialVehicleNumber()

int MSLane::getPartialVehicleNumber ( ) const
inlineinherited

Returns the number of vehicles partially on this lane (for which this lane is not responsible)

Returns
The number of vehicles touching this lane but with their front on another lane

Definition at line 445 of file MSLane.h.

References MSLane::myPartialVehicles.

◆ getPendingEmits()

double GUILane::getPendingEmits ( ) const
private

get number of vehicles waiting for departure on this lane

Definition at line 1518 of file GUILane.cpp.

References MSNet::getInsertionControl(), MSNet::getInstance(), and MSInsertionControl::getPendingEmits().

Referenced by getColorValue(), and getParameterWindow().

Here is the caller graph for this function:

◆ getPermissions()

SVCPermissions MSLane::getPermissions ( ) const
inlineinherited

Returns the vehicle class permissions for this lane.

Returns
This lane's allowed vehicle classes

Definition at line 583 of file MSLane.h.

References MSLane::myPermissions.

Referenced by MSSwarmTrafficLightLogic::allowLine(), MSInternalJunction::indirectBicycleTurn(), MSDelayBasedTrafficLightLogic::init(), GUIApplicationWindow::onCmdEditChosen(), and MSPModel_Striping::PState::PState().

Here is the caller graph for this function:

◆ getPopUpMenu()

◆ getReachability()

double GUILane::getReachability ( ) const
inline

Definition at line 244 of file GUILane.h.

References myReachability.

◆ getRightmostSublane()

int MSLane::getRightmostSublane ( ) const
inlineinherited

Definition at line 1122 of file MSLane.h.

References MSLane::myRightmostSublane.

Referenced by MSLCM_SL2015::_wantsChangeSublane().

Here is the caller graph for this function:

◆ getRightSideOnEdge()

◆ getRNG()

SumoRNG * MSLane::getRNG ( ) const
inlineinherited

return the associated RNG

Definition at line 245 of file MSLane.h.

References MSLane::myRNGIndex, and MSLane::myRNGs.

Referenced by MSBaseVehicle::getRNG().

Here is the caller graph for this function:

◆ getRNGIndex()

int MSLane::getRNGIndex ( ) const
inlineinherited

returns the associated RNG index

Definition at line 240 of file MSLane.h.

References MSLane::myRNGIndex.

Referenced by MSEdgeControl::changeLanes(), and MSBaseVehicle::getRNGIndex().

Here is the caller graph for this function:

◆ getScaleValue()

◆ getShape()

const PositionVector & GUILane::getShape ( ) const

Definition at line 1009 of file GUILane.cpp.

References MSLane::myShape.

Referenced by drawArrows(), drawBikeMarkings(), drawDirectionIndicators(), GUIEdge::drawGL(), GUIPerson::drawGLAdditional(), drawJunctionChangeProhibitions(), drawLane2LaneConnections(), drawLinkNo(), drawLinkRules(), drawMarkings(), GUIEdge::drawMesoVehicles(), GUIVehicle::drawRouteHelper(), GUIMEVehicle::drawRouteHelper(), drawTLSLinkNo(), and getColorValue().

Here is the caller graph for this function:

◆ getShapeLengths()

const std::vector< double > & GUILane::getShapeLengths ( ) const

Definition at line 1021 of file GUILane.cpp.

References myShapeLengths.

Referenced by GUIPerson::drawGLAdditional(), drawMarkings(), GUIVehicle::drawRouteHelper(), and GUIMEVehicle::drawRouteHelper().

Here is the caller graph for this function:

◆ getShapeRotations()

const std::vector< double > & GUILane::getShapeRotations ( ) const

Definition at line 1015 of file GUILane.cpp.

References myShapeRotations.

Referenced by GUIPerson::drawGLAdditional(), drawMarkings(), GUIVehicle::drawRouteHelper(), and GUIMEVehicle::drawRouteHelper().

Here is the caller graph for this function:

◆ getSpaceTillLastStanding()

double MSLane::getSpaceTillLastStanding ( const MSVehicle ego,
bool &  foundStopped 
) const
inherited

return the empty space up to the last standing vehicle or the empty space on the whole lane if no vehicle is standing

Todo:
if ego isn't on this lane, we could use a cached value

Definition at line 4271 of file MSLane.cpp.

References MSLane::getLength(), MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), MSGlobals::gSublane, MSVehicle::isFrontOnLane(), MSLane::myVehicles, and SUMO_const_haltingSpeed.

Referenced by MSVehicle::checkRewindLinkLanes().

Here is the caller graph for this function:

◆ getSpeedLimit()

◆ getStopWatch()

std::vector< StopWatch< std::chrono::nanoseconds > > & MSLane::getStopWatch ( )
inlineinherited

Definition at line 1209 of file MSLane.h.

References MSLane::myStopWatch.

Referenced by MSVehicle::planMoveInternal().

Here is the caller graph for this function:

◆ getStoredEdgeTravelTime()

double GUILane::getStoredEdgeTravelTime ( ) const

Returns the stored traveltime for the edge of this lane.

Definition at line 1039 of file GUILane.cpp.

References MSNet::getInstance(), MSNet::getWeightsStorage(), MSEdgeWeightsStorage::knowsTravelTime(), MSLane::myEdge, MSEdgeWeightsStorage::retrieveExistingTravelTime(), and STEPS2TIME.

Referenced by getColorValue(), getParameterWindow(), and getScaleValue().

Here is the caller graph for this function:

◆ getSurroundingVehicles()

std::set< MSVehicle * > MSLane::getSurroundingVehicles ( double  startPos,
double  downstreamDist,
double  upstreamDist,
std::shared_ptr< LaneCoverageInfo checkedLanes 
) const
inherited

Returns all vehicles closer than downstreamDist along the road network starting on the given position. Predecessor lanes are searched upstream for the given upstreamDistance.

Note
Re-implementation of the corresponding method in MSDevice_SSM, which cannot be easily adapted, as it gathers additional information for conflict lanes, etc.
Parameters
[in]startPos- start position of the search on the first lane
[in]downstreamDist- distance to search downstream
[in]upstreamDist- distance to search upstream
[in/out]checkedLanes - lanes, which were already scanned (current lane is added, if not present, otherwise the scan is aborted; TODO: this may disregard unscanned parts of the lane in specific circular set ups.)
Returns
vehs - List of vehicles found

Definition at line 3874 of file MSLane.cpp.

References Named::getID(), MSLane::getIncomingLanes(), MSLane::getLength(), MSLane::getLinkCont(), MSLane::getSurroundingVehicles(), MSLane::getVehiclesInRange(), MAX2(), MIN2(), Named::myID, and MSLane::myLength.

Referenced by libsumo::Helper::applySubscriptionFilterLanes(), and MSLane::getSurroundingVehicles().

Here is the caller graph for this function:

◆ getThreadIndex()

int MSLane::getThreadIndex ( ) const
inlineinherited

returns the associated thread index

Definition at line 235 of file MSLane.h.

References MSGlobals::gNumSimThreads, and MSLane::myRNGIndex.

◆ getType()

GUIGlObjectType GUIGlObject::getType ( ) const
inlineinherited

Returns the type of the object as coded in GUIGlObjectType.

See also
GUIGlObjectType

Definition at line 154 of file GUIGlObject.h.

References GUIGlObject::myGLObjectType.

Referenced by GUIGlObject::buildSelectionPopupEntry(), GUIVehicle::drawAction_drawCarriageClass(), GUIVehicle::drawAction_drawLinkItems(), GUIBaseVehicle::drawAction_drawPersonsAndContainers(), GUIPerson::drawAction_drawWalkingareaPath(), GNEAdditional::drawAdditionalID(), GNEAdditional::drawAdditionalName(), GNEViewNet::drawDeleteContour(), GNEEdge::drawEdgeGeometryPoints(), GNEVehicle::drawFlowLabel(), GUIBusStop::drawGL(), GUICalibrator::drawGL(), GUIChargingStation::drawGL(), GUIJunctionWrapper::drawGL(), GUILaneSpeedTrigger::drawGL(), GUIOverheadWire::drawGL(), GUIOverheadWireClamp::drawGL(), GUIParkingArea::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GNEAccess::drawGL(), GNEBusStop::drawGL(), GNEChargingStation::drawGL(), GNEContainerStop::drawGL(), GNEEntryExitDetector::drawGL(), GNEInductionLoopDetector::drawGL(), GNEInstantInductionLoopDetector::drawGL(), GNELaneAreaDetector::drawGL(), GNEParkingArea::drawGL(), GNEParkingSpace::drawGL(), GNETAZ::drawGL(), GNEContainer::drawGL(), GNEPerson::drawGL(), GNEVehicle::drawGL(), GNEConnection::drawGL(), GNECrossing::drawGL(), GNEJunction::drawGL(), GNELane::drawGL(), GUIContainer::drawGL(), drawGL(), GUIPerson::drawGL(), GNEPOI::drawGL(), GNEPoly::drawGL(), GUIBaseVehicle::drawGLAdditional(), GUIPerson::drawGLAdditional(), GNEDemandElement::drawJunctionLine(), GNEAdditional::drawListedAddtional(), GUIBaseVehicle::drawOnPos(), GNELaneAreaDetector::drawPartialGL(), GNEOverheadWire::drawPartialGL(), GNEEdgeData::drawPartialGL(), GNEEdgeRelData::drawPartialGL(), GNERoute::drawPartialGL(), GNEVehicle::drawPartialGL(), GNEDemandElement::drawPersonPlanPartial(), GNEViewNet::drawSelectContour(), GNEAdditional::drawSquaredAdditional(), GNEVehicle::drawStackLabel(), GNEStop::drawStopPersonOverBusStop(), GNEStop::drawStopPersonOverEdge(), GNEStop::drawVehicleStop(), GNEViewNet::getAttributeCarriersInBoundary(), GUIJunctionWrapper::getColorValue(), GUIEdge::getColorValue(), GNEViewNet::getConnectionAtPopupPosition(), GNEViewNet::getCrossingAtPopupPosition(), GNEViewNet::getEdgeAtPopupPosition(), GNEViewNet::getJunctionAtPopupPosition(), GNEViewNet::getLaneAtPopupPosition(), GUISUMOAbstractView::getObjectsAtPosition(), GUIEdge::getScaleValue(), GNEViewNet::getWalkingAreaAtPopupPosition(), GNEAdditional::isGLObjectLocked(), GNEDemandElement::isGLObjectLocked(), GNENetworkElement::isGLObjectLocked(), GUISelectedStorage::isSelected(), GUISUMOViewParent::isSelected(), GUIGlChildWindow::isSelected(), GUIGLObjectPopupMenu::onCmdCopyEdgeName(), GNESelectorFrame::SelectionOperation::onCmdLoad(), GUISUMOViewParent::onCmdSpeedFactor(), GUIDialog_ChooserAbstract::onCmdTrack(), GUISUMOAbstractView::onLeftBtnPress(), GUISUMOViewParent::onUpdSpeedFactor(), LayeredRTree::selectLayer(), GUIPolygon::setColor(), GNEJunction::setJunctionType(), GNEViewNetHelper::ObjectsUnderCursor::updateGenericDataElements(), GNEViewNetHelper::ObjectsUnderCursor::updateNetworkElements(), GNEViewNetHelper::ObjectsUnderCursor::updateShapeElements(), and GNEViewNetHelper::ObjectsUnderCursor::updateTAZElements().

◆ getTypeParameterWindow()

GUIParameterTableWindow * GUIGlObject::getTypeParameterWindow ( GUIMainWindow app,
GUISUMOAbstractView parent 
)
virtualinherited

Returns an own type parameter window (optional)

Parameters
[in]appThe application needed to build the parameter window
[in]parentThe parent window needed to build the parameter window
Returns
The built parameter window

Reimplemented in GUIVehicle, GUIMEVehicle, GUIContainer, GUIEdge, GUIPerson, and GUIBaseVehicle.

Definition at line 197 of file GUIGlObject.cpp.

References UNUSED_PARAMETER.

Referenced by GUIGLObjectPopupMenu::onCmdShowTypePars().

Here is the caller graph for this function:

◆ getUpcomingJunctions()

std::vector< const MSJunction * > MSLane::getUpcomingJunctions ( double  pos,
double  range,
const std::vector< MSLane * > &  contLanes 
) const
inherited

Returns all upcoming junctions within given range along the given (non-internal) continuation lanes measured from given position.

Definition at line 3946 of file MSLane.cpp.

References MSLane::getUpcomingLinks().

◆ getUpcomingLinks()

std::vector< const MSLink * > MSLane::getUpcomingLinks ( double  pos,
double  range,
const std::vector< MSLane * > &  contLanes 
) const
inherited

Returns all upcoming links within given range along the given (non-internal) continuation lanes measured from given position.

Definition at line 3957 of file MSLane.cpp.

References MSLane::getEntryLink(), Named::getID(), MSLink::getInternalLengthsAfter(), MSLink::getLane(), MSLane::getLength(), MSLane::getLinkTo(), and MSLane::isInternal().

Referenced by libsumo::Helper::applySubscriptionFilterTurn(), and MSLane::getUpcomingJunctions().

Here is the caller graph for this function:

◆ getVehicleMaxSpeed()

double MSLane::getVehicleMaxSpeed ( const SUMOTrafficObject *const  veh) const
inlineinherited

Returns the lane's maximum speed, given a vehicle's speed limit adaptation.

Parameters
[in]Thevehicle to return the adapted speed limit for
Returns
This lane's resulting max. speed

Definition at line 547 of file MSLane.h.

References SUMOTrafficObject::getChosenSpeedFactor(), SUMOTrafficObject::getMaxSpeed(), SUMOTrafficObject::getVClass(), MIN2(), MSLane::myMaxSpeed, and MSLane::myRestrictions.

Referenced by MSCFModel_EIDM::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDevice_GLOSA::adaptSpeed(), MSLCM_LC2013::anticipateFollowSpeed(), MSE2Collector::calculateTimeLossAndTimeOnDetector(), MSLaneChanger::changeOpposite(), GUIApplicationWindow::checkGamingEvents(), MSLaneChanger::checkOppositeStop(), MSLCM_SL2015::commitManoeuvre(), MSLaneChanger::computeOvertakingTime(), MSLaneChanger::computeSurplusGap(), MEVehicle::estimateLeaveSpeed(), MSVehicle::estimateTimeToNextStop(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_IDM::finalizeSpeed(), MSCFModel_CACC::followSpeed(), MSCFModel_IDM::followSpeed(), MSCFModel_IDM::freeSpeed(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSLane::getCriticalLeader(), MSLane::getDepartSpeed(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSVehicle::getMaxSpeedOnLane(), GUIBaseVehicle::getScaleValue(), MSLink::getZipperSpeed(), MSVehicle::Influencer::implicitSpeedRemote(), MSCFModel::interactionGap(), MSCFModel_EIDM::interactionGap(), MSCFModel_IDM::interactionGap(), MSCFModel_EIDM::internalspeedlimit(), MSLane::isInsertionSuccess(), MSDevice_Bluelight::notifyMove(), MSDevice_GLOSA::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), MSCFModel_Krauss::patchSpeedBeforeLC(), MSVehicle::planMoveInternal(), MSVehicle::processNextStop(), MSVehicle::setBlinkerInformation(), MSCFModel_IDM::stopSpeed(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::updateTimeLoss(), MSEdge::validateDepartSpeed(), MSLCM_DK2008::wantsChangeToLeft(), and MSLCM_DK2008::wantsChangeToRight().

Here is the caller graph for this function:

◆ getVehicleNumber()

int MSLane::getVehicleNumber ( ) const
inlineinherited

Returns the number of vehicles on this lane (for which this lane is responsible)

Returns
The number of vehicles with their front on this lane

Definition at line 429 of file MSLane.h.

References MSLane::myVehicles.

Referenced by MSLane::executeMovements(), MSCalibrator::invalidJam(), MSVehicle::planMoveInternal(), MSCalibrator::remainingVehicleCapacity(), and MSFullExport::writeLane().

Here is the caller graph for this function:

◆ getVehicleNumberWithPartials()

int MSLane::getVehicleNumberWithPartials ( ) const
inlineinherited

Returns the number of vehicles on this lane (including partial occupators)

Returns
The number of vehicles with intersecting this lane

Definition at line 437 of file MSLane.h.

References MSLane::myPartialVehicles, and MSLane::myVehicles.

Referenced by MSLane::detectCollisions(), MSPModel_Striping::getNextLaneObstacles(), MSLane::isInsertionSuccess(), MSPModel_Striping::moveInDirectionOnLane(), MSVehicle::planMoveInternal(), and MSPModel_Striping::PState::PState().

Here is the caller graph for this function:

◆ getVehiclesInRange()

std::set< MSVehicle * > MSLane::getVehiclesInRange ( const double  a,
const double  b 
) const
inherited

Returns all vehicles on the lane overlapping with the interval [a,b].

Note
Does not consider vehs with front on subsequent lanes

Definition at line 3926 of file MSLane.cpp.

References MSLane::getVehiclesSecure(), and MSLane::releaseVehicles().

Referenced by libsumo::Helper::applySubscriptionFilterLanes(), and MSLane::getSurroundingVehicles().

Here is the caller graph for this function:

◆ getVehiclesSecure()

const MSLane::VehCont & GUILane::getVehiclesSecure ( ) const
overridevirtual

Returns the vehicles container; locks it for microsimulation.

Locks "myLock" preventing usage by microsimulation.

Please note that it is necessary to release the vehicles container afterwards using "releaseVehicles".

Returns
The vehicles on this lane
See also
MSLane::getVehiclesSecure

Reimplemented from MSLane.

Definition at line 132 of file GUILane.cpp.

References myLock, and MSLane::myVehicles.

Referenced by drawGL().

Here is the caller graph for this function:

◆ getVehicleStopOffset()

double MSLane::getVehicleStopOffset ( const MSVehicle veh) const
inherited

Returns vehicle class specific stopOffset for the vehicle.

Definition at line 3421 of file MSLane.cpp.

References StopOffset::getOffset(), StopOffset::getPermissions(), MSBaseVehicle::getVClass(), StopOffset::isDefined(), and MSLane::myLaneStopOffset.

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

Here is the caller graph for this function:

◆ getWaitingSeconds()

double MSLane::getWaitingSeconds ( ) const
inherited

Returns the overall waiting time on this lane.

Returns
The sum of the waiting time of all vehicles during the last step;

Definition at line 3066 of file MSLane.cpp.

References MSLane::myVehicles.

◆ getWidth()

double MSLane::getWidth ( ) const
inlineinherited

Returns the lane's width.

Returns
This lane's width

Definition at line 590 of file MSLane.h.

References MSLane::myWidth.

Referenced by MSLCM_SL2015::_wantsChangeSublane(), MSPModel_Striping::addCrossingVehs(), MSLaneChanger::checkChange(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), MSLaneChangerSublane::checkChangeToNewLane(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSDevice_SSM::classifyEncounter(), MSEdge::closeBuilding(), MSLaneChanger::computeOvertakingTime(), MSLCM_SL2015::computeSublaneShift(), MSLaneChanger::continueChange(), MSAbstractLaneChangeModel::determineTargetLane(), GUIVehicle::drawAction_drawCarriageClass(), drawGL(), GUIBaseVehicle::drawStopLabels(), MSVehicle::enterLaneAtMove(), MSLaneChangerSublane::findClosestLeader(), MSVehicle::getCenterOnEdge(), MSStoppingPlace::getCenterPos(), MSLane::getDepartPosLat(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLateralOverlap(), MSVehicle::getLatOffset(), MSLink::getLeaderInfo(), MSVehicle::getLeftSideOnLane(), LIBSUMO_NAMESPACE::Vehicle::getNeighbors(), MSLCM_SL2015::getNeighRight(), MSPModel_Striping::getNextLaneObstacles(), MEVehicle::getRightSideOnEdge(), MSVehicle::getRightSideOnLane(), MSLane::getSpaceTillLastStanding(), MSLCM_SL2015::getSublaneWidth(), MSLCM_SL2015::getVehicleCenter(), MSPModel_Striping::getVehicleObstacles(), MSStoppingPlace::getWaitPosition(), GUIBusStop::GUIBusStop(), GUIParkingArea::GUIParkingArea(), MSPModel_Striping::initWalkingAreaPaths(), MSLane::insertVehicle(), MSRouteHandler::interpretDepartPosLat(), MSLCM_SL2015::keepLatGap(), MSVehicle::lateralDistanceToLane(), MSPModel_Striping::moveInDirection(), LIBSUMO_NAMESPACE::Person::moveTo(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), MSParkingArea::MSParkingArea(), MSLCM_SL2015::mustOvertakeStopped(), MSPModel_Striping::nextBlocking(), MSDevice_Bluelight::notifyMove(), MSPModel_Striping::numStripes(), MSVehicle::planMoveInternal(), MSLCM_SL2015::prepareStep(), MSVehicle::processLinkApproaches(), MSPModel_Striping::PState::PState(), MSAbstractLaneChangeModel::saveNeighbors(), GUIVehicle::selectBlockingFoes(), MSLink::setRequestInformation(), MSLaneChangerSublane::startChangeSublane(), MSAbstractLaneChangeModel::startLaneChangeManeuver(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), and MSLCM_SL2015::wantsChange().

◆ hadPermissionChanges()

bool MSLane::hadPermissionChanges ( ) const
inherited

Definition at line 4165 of file MSLane.cpp.

References MSLane::myPermissionChanges.

◆ handleCollisionBetween()

void MSLane::handleCollisionBetween ( SUMOTime  timestep,
const std::string &  stage,
const MSVehicle collider,
const MSVehicle victim,
double  gap,
double  latGap,
std::set< const MSVehicle *, ComparatorNumericalIdLess > &  toRemove,
std::set< const MSVehicle *, ComparatorNumericalIdLess > &  toTeleport 
) const
protectedinherited

take action upon collision

Definition at line 1886 of file MSLane.cpp.

References GeomHelper::angleDiff(), MSCFModel::brakeGap(), MSNet::COLLISION, SUMOVehicleParameter::Stop::collision, MSLane::COLLISION_ACTION_REMOVE, MSLane::COLLISION_ACTION_TELEPORT, MSLane::COLLISION_ACTION_WARN, MSVehicle::collisionStopTime(), DEBUG_COND2, SUMOVehicleParameter::Stop::duration, SUMOVehicleParameter::Stop::endPos, MSVehicle::getAngle(), MSEdge::getBidiEdge(), MSVehicle::getCarFollowModel(), MSLane::getEdge(), MSCFModel::getEmergencyDecel(), Named::getID(), MSVehicle::getInfluencer(), MSNet::getInstance(), MSVehicle::getLane(), MSVehicle::getLaneChangeModel(), MSLane::getLength(), MSVehicleType::getLength(), MSVehicle::getPositionOnLane(), MSVehicle::getSpeed(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSGlobals::gSublane, MSVehicle::hasInfluencer(), MSVehicle::ignoreCollision(), MSNet::informVehicleStateListener(), MSLane::isInternal(), MSAbstractLaneChangeModel::isOpposite(), MSVehicle::Influencer::isRemoteAffected(), SUMOVehicleParameter::Stop::lane, MAX3(), MIN2(), MSLane::myCollisionAction, MSLane::myCollisionStopTime, SUMOVehicleParameter::Stop::parametersSet, RAD2DEG, MSVehicleControl::registerCollision(), MSNet::registerCollision(), SPEED2DIST, SUMOVehicleParameter::Stop::startPos, STOP_DURATION_SET, STOP_END_SET, STOP_START_SET, std::swap(), time2string(), toString(), and WRITE_WARNING.

Referenced by MSLane::detectCollisionBetween(), and MSLane::detectCollisions().

Here is the caller graph for this function:

◆ hasApproaching() [1/2]

bool MSLane::hasApproaching ( ) const
inherited

Definition at line 3334 of file MSLane.cpp.

References MSLane::myLinks.

Referenced by MSLane::saveState().

Here is the caller graph for this function:

◆ hasApproaching() [2/2]

bool MSLane::hasApproaching ( const std::vector< MSLink * > &  links) const
protectedinherited

check whether any of the outgoing links are being approached

◆ hasPedestrians()

bool MSLane::hasPedestrians ( ) const
inherited

◆ incorporateVehicle()

void GUILane::incorporateVehicle ( MSVehicle veh,
double  pos,
double  speed,
double  posLat,
const MSLane::VehCont::iterator &  at,
MSMoveReminder::Notification  notification = MSMoveReminder::NOTIFICATION_DEPARTED 
)
overrideprotectedvirtual

Inserts the vehicle into this lane, and informs it about entering the network.

Calls the vehicles enterLaneAtInsertion function, updates statistics and modifies the active state as needed

Parameters
[in]vehThe vehicle to be incorporated
[in]posThe position of the vehicle
[in]speedThe speed of the vehicle
[in]posLatThe lateral position of the vehicle
[in]at
[in]notificationThe cause of insertion (i.e. departure, teleport, parking) defaults to departure
See also
MSLane::incorporateVehicle

Reimplemented from MSLane.

Definition at line 122 of file GUILane.cpp.

References MSLane::incorporateVehicle(), and myLock.

◆ initCollisionOptions()

void MSLane::initCollisionOptions ( const OptionsCont oc)
staticinherited

◆ initRestrictions()

void MSLane::initRestrictions ( )
inherited

initialized vClass-specific speed limits

Definition at line 290 of file MSLane.cpp.

References MSEdge::getEdgeType(), MSNet::getInstance(), MSNet::getRestrictions(), MSGlobals::gUnitTests, MSLane::myEdge, and MSLane::myRestrictions.

Referenced by MSLane::MSLane().

Here is the caller graph for this function:

◆ initRNGs()

void MSLane::initRNGs ( const OptionsCont oc)
staticinherited

initialize rngs

Definition at line 4220 of file MSLane.cpp.

References OptionsCont::getBool(), OptionsCont::getInt(), RandHelper::initRand(), MSLane::myRNGs, and toString().

Referenced by NLBuilder::initRandomness().

Here is the caller graph for this function:

◆ insertIDs()

void MSLane::insertIDs ( std::vector< std::string > &  into)
staticinherited

Adds the ids of all stored lanes into the given vector.

Parameters
[in,filled]into The vector to add the IDs into

Definition at line 2231 of file MSLane.cpp.

References MSLane::myDict.

◆ insertVehicle()

bool MSLane::insertVehicle ( MSVehicle v)
inherited

Tries to insert the given vehicle.

The insertion position and speed are determined in dependence to the vehicle's departure definition, first.

Then, the vehicle is tried to be inserted into the lane using these values by a call to "isInsertionSuccess". The result of "isInsertionSuccess" is returned.

Parameters
[in]vThe vehicle to insert
Returns
Whether the vehicle could be inserted
See also
isInsertionSuccess
MSVehicle::getDepartureDefinition
MSVehicle::DepartArrivalDefinition

Definition at line 630 of file MSLane.cpp.

References BASE, MSBaseVehicle::basePos(), DEBUG_COND2, DEFAULT, DELTA_T, SUMOVehicleParameter::departPos, SUMOVehicleParameter::departPosLatProcedure, SUMOVehicleParameter::departPosProcedure, MSVehicle::executeFractionalMove(), FALLTHROUGH, FREE, MSLane::freeInsertion(), MSVehicle::getBestLanesContinuation(), MSVehicle::getCarFollowModel(), MSBaseVehicle::getDepartDelay(), MSLane::getDepartPosLat(), MSLane::getDepartSpeed(), MSStop::getEndPos(), Named::getID(), MSNet::getInsertionControl(), MSNet::getInstance(), MSLane::getLeader(), MSLane::getLength(), MSCFModel::getMaxDecel(), MSBaseVehicle::getNextStop(), MSBaseVehicle::getParameter(), MSCFModel::getSecureGap(), MSVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), MSLane::getWidth(), MSVehicleType::getWidth(), GIVEN, MSGlobals::gLateralResolution, gPrecisionRandom, MSBaseVehicle::hasStops(), MSLane::isInsertionSuccess(), MSStop::lane, LAST, MSLane::lastInsertion(), MAX2(), MIN2(), MSLane::myEdge, MSLane::myExtrapolateSubstepDepart, MSLane::myLength, MSMoveReminder::NOTIFICATION_DEPARTED, RandHelper::rand(), RANDOM, RANDOM_FREE, MSInsertionControl::retractDescheduleDeparture(), roundDecimal(), SIMTIME, STEPS2TIME, and STOP.

Referenced by MSEdge::insertVehicle().

Here is the caller graph for this function:

◆ integrateNewVehicles()

void GUILane::integrateNewVehicles ( )
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 186 of file GUILane.cpp.

References MSLane::integrateNewVehicles(), and myLock.

◆ interpolateGeometryPosToLanePos()

double MSLane::interpolateGeometryPosToLanePos ( double  geometryPos) const
inlineinherited

Definition at line 539 of file MSLane.h.

References MSLane::myLengthGeometryFactor.

Referenced by libsumo::Helper::convertCartesianToRoadMap(), MSLaneChanger::foundHilltop(), getPopUpMenu(), libsumo::Helper::moveToXYMap(), and MSLink::setRequestInformation().

Here is the caller graph for this function:

◆ interpolateLanePosToGeometryPos()

◆ isAccelLane()

bool MSLane::isAccelLane ( ) const
inlineinherited

return whether this lane is an acceleration lane

Definition at line 516 of file MSLane.h.

References MSLane::myIsRampAccel.

Referenced by MSLCM_LC2013::informFollower().

Here is the caller graph for this function:

◆ isApproachedFrom() [1/2]

bool MSLane::isApproachedFrom ( MSEdge *const  edge)
inlineinherited

Definition at line 885 of file MSLane.h.

References MSLane::myApproachingLanes.

◆ isApproachedFrom() [2/2]

bool MSLane::isApproachedFrom ( MSEdge *const  edge,
MSLane *const  lane 
)
inherited

Definition at line 2552 of file MSLane.cpp.

References MSLane::myApproachingLanes.

◆ isBlocked()

bool GUIGlObject::isBlocked ( ) const
inlineinherited

get blocking status

Definition at line 164 of file GUIGlObject.h.

References GUIGlObject::myAmBlocked.

◆ isClosed()

bool GUILane::isClosed ( ) const
inline

Definition at line 260 of file GUILane.h.

References myAmClosed.

Referenced by GUIEdge::closeTraffic().

Here is the caller graph for this function:

◆ isEmpty()

bool MSLane::isEmpty ( ) const
inlineinherited

Returns the information whether the lane is has no vehicle and no partial occupation

Definition at line 814 of file MSLane.h.

References MSLane::myPartialVehicles, and MSLane::myVehicles.

Referenced by MSRailSignal::hasOncomingRailTraffic().

Here is the caller graph for this function:

◆ isGLObjectLocked()

bool GUIGlObject::isGLObjectLocked ( )
virtualinherited

check if element is locked (Currently used only in NETEDIT)

Reimplemented in GNEAdditional, GNEDemandElement, and GNENetworkElement.

Definition at line 205 of file GUIGlObject.cpp.

◆ isInsertionSuccess()

bool MSLane::isInsertionSuccess ( MSVehicle vehicle,
double  speed,
double  pos,
double  posLat,
bool  recheckNextLanes,
MSMoveReminder::Notification  notification 
)
inherited

Tries to insert the given vehicle with the given state (speed and pos)

Checks whether the vehicle can be inserted at the given position with the given speed so that no collisions with leader/follower occur and the speed does not cause unexpected behaviour on consecutive lanes. Returns false if the vehicle can not be inserted.

If the insertion can take place, incorporateVehicle() is called and true is returned.

Parameters
[in]vehicleThe vehicle to insert
[in]speedThe speed with which it shall be inserted
[in]posThe position at which it shall be inserted
[in]posLatThe lateral position at which it shall be inserted
[in]recheckNextLanesForces patching the speed for not being too fast on next lanes
[in]notificationThe cause of insertion (i.e. departure, teleport, parking) defaults to departure
Returns
Whether the vehicle could be inserted
See also
MSVehicle::enterLaneAtInsertion

the oncoming check differs depending on whether the train may brake

Definition at line 771 of file MSLane.cpp.

References ARRIVAL_SPEED, SUMOVehicleParameter::arrivalSpeed, SUMOVehicleParameter::arrivalSpeedProcedure, MSRoute::begin(), BIDI, MSCFModel::brakeGap(), MSLane::checkFailure(), MSLane::checkForPedestrians(), COLLISION, DEBUG_COND, DEBUG_COND2, MSInsertionControl::descheduleDeparture(), SUMOVehicleParameter::Stop::endPos, FOLLOWER_GAP, MSCFModel::freeSpeed(), MSGlobals::gCheckRoutes, MSVehicle::getActionStepLengthSecs(), MSBaseVehicle::getArrivalPos(), MSVehicle::getBackPositionOnLane(), MSVehicle::getBestLaneDist(), MSVehicle::getBestLaneOffset(), MSVehicle::getBestLanesContinuation(), MSEdge::getBidiEdge(), MSLane::getBidiLane(), MSVehicle::getCarFollowModel(), MSNet::getCurrentTimeStep(), MSLane::getEdge(), MSAbstractLaneChangeModel::getExtraReservation(), MSLane::getFollowersOnConsecutive(), Named::getID(), Named::getIDSecure(), MSBaseVehicle::getImpatience(), MSNet::getInsertionControl(), MSNet::getInstance(), MSLink::getJunction(), MSVehicle::getLaneChangeModel(), MSRoute::getLastEdge(), MSLane::getLastVehicleInformation(), MSLane::getLength(), MSVehicleType::getLength(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSLane::getMissingRearGap(), MSBaseVehicle::getNextStop(), MSBaseVehicle::getParameter(), MSVehicle::getPositionOnLane(), MSBaseVehicle::getRoute(), MSCFModel::getSecureGap(), MSAbstractLaneChangeModel::getShadowLane(), MSVehicle::getSpeed(), MSLink::getTLLogic(), MSEdge::getToJunction(), MSJunction::getType(), MSBaseVehicle::getVClass(), MSLane::getVehicleMaxSpeed(), MSLane::getVehicleNumberWithPartials(), MSLane::getVehicleStopOffset(), MSBaseVehicle::getVehicleType(), GIVEN, MSRailSignal::hasInsertionConstraint(), MSRailSignal::hasOncomingRailTraffic(), MSBaseVehicle::hasStops(), MSLeaderInfo::hasVehicles(), MSLane::incorporateVehicle(), SUMOVehicleParameter::insertionChecks, MSCFModel::insertionStopSpeed(), INVALID_SPEED, MSLane::isLinkEnd(), isRailway(), JUNCTION, MSStop::lane, LANECHANGE, LEADER_GAP, LINKSTATE_ALLWAY_STOP, LINKSTATE_EQUAL, LINKSTATE_MINOR, LINKSTATE_STOP, MAX2(), MIN2(), MSLane::myEdge, Named::myID, MSLane::myLength, MSLane::myManeuverReservations, MSLane::myPartialVehicles, MSLane::myVehicles, NONE, MSMoveReminder::NOTIFICATION_DEPARTED, MSLeaderInfo::numFreeSublanes(), MSLeaderInfo::numSublanes(), ONCOMING_TRAIN, MSStop::pars, RAIL_SIGNAL, MSVehicle::registerInsertionApproach(), MSLane::safeInsertionSpeed(), Parameterised::setParameter(), MSVehicle::setTentativeLaneAndPosition(), SIMTIME, SPEED_LIMIT, STOP, MSCFModel::stopSpeed(), MSLane::succLinkSec(), SUMO_const_haltingSpeed, TIME2STEPS, TL, MSLeaderInfo::toString(), toString(), Parameterised::unsetParameter(), MSVehicle::updateBestLanes(), WRITE_ERROR, and WRITE_WARNINGF.

Referenced by MSVehicleTransfer::checkInsertions(), MSLane::freeInsertion(), MSLane::insertVehicle(), and MSLane::lastInsertion().

Here is the caller graph for this function:

◆ isInternal()

bool MSLane::isInternal ( ) const
inherited

Returns whether the lane pertains to an internal edge

Definition at line 2330 of file MSLane.cpp.

References MSEdge::isInternal(), and MSLane::myEdge.

Referenced by MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSRouteHandler::addStop(), MSBaseVehicle::addStop(), libsumo::Helper::applySubscriptionFilterTurn(), MSLaneChanger::changeOpposite(), MSDevice_ToC::checkDynamicToC(), MSVehicle::checkReversal(), MSDevice_SSM::classifyEncounter(), MSVehicle::computeAngle(), MSVehicle::computeFurtherLanes(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLCHelper::divergentRoute(), drawGL(), drawLinkRule(), GUIVehicle::drawRouteHelper(), MSVehicle::executeFractionalMove(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), MSDevice_SSM::findSurroundingVehicles(), MSLink::getCorrespondingEntryLink(), MSLane::getCriticalLeader(), MSVehicle::getDistanceToPosition(), MSLane::getEntryLink(), MSLane::getFirstInternalInConnection(), LIBSUMO_NAMESPACE::Lane::getInternalFoes(), MSLogicJunction::getInternalLanes(), MSNoLogicJunction::getInternalLanes(), MSLink::getInternalLengthsAfter(), MSLink::getInternalLengthsBefore(), LIBSUMO_NAMESPACE::Vehicle::getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getLinkTo(), MSVehicle::getNextEdgePtr(), MSLane::getNormalPredecessorLane(), MSVehicle::getPastLanesUntil(), MSVehicle::getPositionAlongBestLanes(), GUIVehicle::getPreviousLane(), MSVehicle::getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSLane::handleCollisionBetween(), MSE2Collector::initAuxiliaries(), MSBaseVehicle::insertStop(), MSVehicle::isLeader(), MSVehicle::isOppositeLane(), MSVehicle::joinTrainPartFront(), MSLink::MSLink(), MSDevice_Routing::notifyEnter(), MSLane::incoming_lane_priority_sorter::operator()(), NLTriggerBuilder::parseAndBuildOverheadWireSegment(), MSVehicle::planMoveInternal(), MSDevice_Taxi::prepareStop(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSBaseVehicle::replaceStop(), MSBaseVehicle::rerouteBetweenStops(), MSLane::succLinkSec(), MSVehicle::updateBestLanes(), MSVehicle::updateDriveItems(), MSElecHybridExport::write(), MSFCDExport::write(), and MSElecHybridExport::writeAggregated().

◆ isLaneOrEdgeSelected()

bool GUILane::isLaneOrEdgeSelected ( ) const
private

whether this lane or its parent edge is selected in the GUI

Definition at line 1513 of file GUILane.cpp.

References GUIGlObject::getGlID(), GLO_EDGE, gSelected, isSelected(), GUISelectedStorage::isSelected(), and MSLane::myEdge.

Referenced by getColorValue(), and getScaleValue().

Here is the caller graph for this function:

◆ isLinkEnd() [1/2]

bool MSLane::isLinkEnd ( std::vector< MSLink * >::const_iterator &  i) const
inlineinherited

Returns the information whether the given link shows at the end of the list of links (is not valid)

Definition at line 802 of file MSLane.h.

References MSLane::myLinks.

Referenced by MSLaneChanger::checkChange(), MSLane::getCriticalLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSCFModel_EIDM::internalspeedlimit(), MSLane::isInsertionSuccess(), MSDevice_GLOSA::notifyEnter(), MSVehicle::planMoveInternal(), and MSVehicle::unsafeLinkAhead().

Here is the caller graph for this function:

◆ isLinkEnd() [2/2]

bool MSLane::isLinkEnd ( std::vector< MSLink * >::iterator &  i)
inlineinherited

Returns the information whether the given link shows at the end of the list of links (is not valid)

Definition at line 808 of file MSLane.h.

References MSLane::myLinks.

◆ isNormal()

bool MSLane::isNormal ( ) const
inherited

Returns whether the lane pertains to a normal edge

Definition at line 2336 of file MSLane.cpp.

References MSEdge::isNormal(), and MSLane::myEdge.

Referenced by MSLink::getLeaderInfo(), and MSPModel_Striping::PState::moveTo().

Here is the caller graph for this function:

◆ isParameterValid()

bool Parameterised::isParameterValid ( const std::string &  value,
const std::string &  kvsep,
const std::string &  sep 
)
staticprivateinherited

check if given string can be parsed to a parameter of type "key=value"

Definition at line 251 of file Parameterised.cpp.

References StringTokenizer::getVector(), and SUMOXMLDefinitions::isValidParameterKey().

Referenced by Parameterised::areAttributesValid(), and Parameterised::areParametersValid().

Here is the caller graph for this function:

◆ isSelected()

bool GUILane::isSelected ( ) const
overridevirtual

whether this lane is selected in the GUI

Reimplemented from MSLane.

Definition at line 1508 of file GUILane.cpp.

References GUIGlObject::getGlID(), GLO_LANE, gSelected, and GUISelectedStorage::isSelected().

Referenced by isLaneOrEdgeSelected().

Here is the caller graph for this function:

◆ knowsParameter()

bool Parameterised::knowsParameter ( const std::string &  key) const
inherited

Returns whether the parameter is known.

Parameters
[in]keyThe key to ask for
Returns
Whether the key is known

Definition at line 65 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NBEdge::append(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), GUINet::createTLWrapper(), NWWriter_DlrNavteq::getBrunnelType(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), getColorValue(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSDevice::getStringParam(), MSTriggeredRerouter::getWeight(), SUMOVTypeParameter::initRailVisualizationParameters(), MSEdge::insertVehicle(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), GNEVType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), MSDevice_SSM::writePositions(), and NWWriter_OpenDrive::writeRoadObjects().

Here is the caller graph for this function:

◆ lastInsertion()

bool MSLane::lastInsertion ( MSVehicle veh,
double  mspeed,
double  posLat,
bool  patchSpeed 
)
inherited

inserts vehicle as close as possible to the last vehicle on this lane (or at the end of the lane if there is no leader)

look for a leaders on consecutive lanes

Definition at line 432 of file MSLane.cpp.

References MSCFModel::brakeGap(), MSVehicle::getBackPositionOnLane(), MSVehicle::getBestLanesContinuation(), MSVehicle::getCarFollowModel(), MSLane::getLastAnyVehicle(), MSLane::getLeader(), MSLane::getLength(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSCFModel::getSecureGap(), MSVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), MSLane::isInsertionSuccess(), MIN2(), MSMoveReminder::NOTIFICATION_DEPARTED, MSVehicle::setTentativeLaneAndPosition(), and MSVehicle::updateBestLanes().

Referenced by MSLane::insertVehicle().

Here is the caller graph for this function:

◆ leftByLaneChange()

void MSLane::leftByLaneChange ( MSVehicle v)
inherited

Definition at line 2992 of file MSLane.cpp.

References MSVehicleType::getLength(), MSVehicleType::getLengthWithGap(), MSBaseVehicle::getVehicleType(), MSLane::myBruttoVehicleLengthSum, and MSLane::myNettoVehicleLengthSum.

Referenced by MSAbstractLaneChangeModel::primaryLaneChanged().

Here is the caller graph for this function:

◆ loadRNGState()

void MSLane::loadRNGState ( int  index,
const std::string &  state 
)
staticinherited

load random number generator state for the given rng index

Definition at line 4243 of file MSLane.cpp.

References MSLane::getNumRNGs(), RandHelper::loadState(), MSLane::myRNGs, and toString().

Referenced by MSStateHandler::myStartElement().

Here is the caller graph for this function:

◆ loadState()

void MSLane::loadState ( const std::vector< std::string > &  vehIDs,
MSVehicleControl vc 
)
inherited

Loads the state of this segment with the given parameters.

This method is called for every internal que the segment has. Every vehicle is retrieved from the given MSVehicleControl and added to this lane.

Parameters
[in]vehIDsThe vehicle ids for the current que
[in]vcThe vehicle control to retrieve references vehicles from
Todo:

What about throwing an IOError?

What about throwing an error if something else fails (a vehicle can not be referenced)?

Definition at line 3403 of file MSLane.cpp.

References MSNet::getInstance(), MSVehicle::getLastActionTime(), MSVehicle::getLateralPositionOnLane(), MSVehicle::getPositionOnLane(), MSVehicle::getSpeed(), MSVehicleControl::getVehicle(), MSLane::incorporateVehicle(), MSLane::myVehicles, MSMoveReminder::NOTIFICATION_LOAD_STATE, MSVehicle::processNextStop(), MSVehicle::resetActionOffset(), and MSVehicle::updateBestLanes().

Referenced by MSStateHandler::myStartElement().

Here is the caller graph for this function:

◆ markAsFrontElement()

void GUIGlObject::markAsFrontElement ( )
virtualinherited

mark element as front element (Currently used only in NETEDIT)

Reimplemented in GNEAdditional, GNEDemandElement, and GNENetworkElement.

Definition at line 212 of file GUIGlObject.cpp.

◆ mouseWithinGeometry() [1/5]

void GUIGlObject::mouseWithinGeometry ( const Position pos,
const double  width,
const double  height,
const double  offsetX,
const double  offsetY,
const double  rot 
) const
protectedinherited

check if mouse is within elements geometry (for rectangles)

Definition at line 456 of file GUIGlObject.cpp.

References PositionVector::add(), GUIPostDrawing::addElementUnderCursor(), PositionVector::around(), DEG2RAD, gPostDrawing, GUIPostDrawing::mousePos, and PositionVector::rotate2D().

◆ mouseWithinGeometry() [2/5]

void GUIGlObject::mouseWithinGeometry ( const Position  center,
const double  radius 
) const
protectedinherited

◆ mouseWithinGeometry() [3/5]

void GUIGlObject::mouseWithinGeometry ( const PositionVector  shape) const
protectedinherited

check if mouse is within elements geometry (for filled shapes)

Definition at line 432 of file GUIGlObject.cpp.

References GUIPostDrawing::addElementUnderCursor(), PositionVector::around(), gPostDrawing, and GUIPostDrawing::mousePos.

◆ mouseWithinGeometry() [4/5]

void GUIGlObject::mouseWithinGeometry ( const PositionVector  shape,
const double  width 
) const
protectedinherited

check if mouse is within elements geometry (for shapes)

Definition at line 440 of file GUIGlObject.cpp.

References GUIPostDrawing::addElementUnderCursor(), PositionVector::distance2D(), gPostDrawing, and GUIPostDrawing::mousePos.

◆ mouseWithinGeometry() [5/5]

void GUIGlObject::mouseWithinGeometry ( const PositionVector  shape,
const double  width,
GUIGlObject parent 
) const
protectedinherited

check if mouse is within elements geometry (for edges)

Definition at line 448 of file GUIGlObject.cpp.

References GUIPostDrawing::addElementUnderCursor(), PositionVector::distance2D(), gPostDrawing, and GUIPostDrawing::mousePos.

◆ mustCheckJunctionCollisions()

bool MSLane::mustCheckJunctionCollisions ( ) const
inherited

whether this lane must check for junction collisions

Definition at line 4265 of file MSLane.cpp.

References MSEdge::isInternal(), MSLane::myCheckJunctionCollisions, MSLane::myEdge, and MSLane::myLinks.

Referenced by MSLane::detectCollisions(), and MSVehicle::processLaneAdvances().

Here is the caller graph for this function:

◆ needsCollisionCheck()

bool MSLane::needsCollisionCheck ( ) const
inlineinherited

short-circut collision check if nothing changed since the last check

Definition at line 656 of file MSLane.h.

References MSLane::myNeedsCollisionCheck.

◆ nextBlocking()

PersonDist MSLane::nextBlocking ( double  minPos,
double  minRight,
double  maxLeft,
double  stopTime = 0,
bool  bidi = false 
) const
inherited

This is just a wrapper around MSPModel::nextBlocking. You should always check using hasPedestrians before calling this method.

Definition at line 4178 of file MSLane.cpp.

References MSNet::getInstance(), MSTransportableControl::getMovementModel(), MSNet::getPersonControl(), and MSPModel::nextBlocking().

Referenced by MSLCM_LC2013::adaptSpeedToPedestrians(), MSLaneChanger::checkChange(), MSLane::checkForPedestrians(), MSLane::detectCollisions(), MSVehicle::planMoveInternal(), and MSLCM_SL2015::updateExpectedSublaneSpeeds().

Here is the caller graph for this function:

◆ onLeftBtnPress()

virtual void GUIGlObject::onLeftBtnPress ( void *  )
inlinevirtualinherited

notify object about left click

Reimplemented in GUITriggeredRerouter::GUITriggeredRerouterEdge.

Definition at line 213 of file GUIGlObject.h.

Referenced by GUISUMOAbstractView::onLeftBtnPress().

Here is the caller graph for this function:

◆ planMovements()

void GUILane::planMovements ( const SUMOTime  t)
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 145 of file GUILane.cpp.

References myLock, and MSLane::planMovements().

◆ releaseVehicles()

void GUILane::releaseVehicles ( ) const
overridevirtual

Allows to use the container for microsimulation again.

Unlocks "myLock" preventing usage by microsimulation.

See also
MSLane::releaseVehicles

Reimplemented from MSLane.

Definition at line 139 of file GUILane.cpp.

References myLock.

Referenced by drawGL().

Here is the caller graph for this function:

◆ removeActiveAddVisualisation()

virtual void GUIGlObject::removeActiveAddVisualisation ( GUISUMOAbstractView * const  ,
int   
)
inlinevirtualinherited

remove additional user-griggered visualisations

Reimplemented in GUIBaseVehicle, and GUIPerson.

Definition at line 210 of file GUIGlObject.h.

◆ removedPopupMenu()

virtual void GUIGlObject::removedPopupMenu ( )
inlinevirtualinherited

notify object about popup menu removal

Reimplemented in GUIBaseVehicle.

Definition at line 122 of file GUIGlObject.h.

Referenced by GUIGLObjectPopupMenu::~GUIGLObjectPopupMenu().

Here is the caller graph for this function:

◆ removeParameterTable()

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 369 of file GUIGlObject.cpp.

References GUIGlObject::myParamWindows.

Referenced by GUIParameterTableWindow::~GUIParameterTableWindow().

Here is the caller graph for this function:

◆ removeParking()

void GUILane::removeParking ( MSBaseVehicle veh)
overridevirtual

remove parking vehicle

Reimplemented from MSLane.

Definition at line 172 of file GUILane.cpp.

References myLock, and MSLane::removeParking().

◆ removeVehicle()

MSVehicle * GUILane::removeVehicle ( MSVehicle remVehicle,
MSMoveReminder::Notification  notification,
bool  notify 
)
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 165 of file GUILane.cpp.

References myLock, and MSLane::removeVehicle().

◆ requireCollisionCheck()

void MSLane::requireCollisionCheck ( )
inlineinherited

require another collision check due to relevant changes in the simulation

Definition at line 661 of file MSLane.h.

References MSLane::myNeedsCollisionCheck.

Referenced by MSLaneChanger::continueChange().

Here is the caller graph for this function:

◆ resetManeuverReservation()

void MSLane::resetManeuverReservation ( MSVehicle v)
virtualinherited

Unregisters a vehicle, which previously registered for maneuvering into this lane.

Parameters
[in]vThe vehicle

Definition at line 389 of file MSLane.cpp.

References DEBUG_COND2, Named::getID(), MSLane::myManeuverReservations, and SIMTIME.

Referenced by MSAbstractLaneChangeModel::cleanupTargetLane(), and MSAbstractLaneChangeModel::updateTargetLane().

Here is the caller graph for this function:

◆ resetPartialOccupation()

void GUILane::resetPartialOccupation ( MSVehicle v)
overridevirtual

Removes the information about a vehicle lapping into this lane.

Parameters
[in]vThe vehicle which laps into this lane

Reimplemented from MSLane.

Definition at line 207 of file GUILane.cpp.

References myLock, and MSLane::resetPartialOccupation().

◆ resetPermissions()

void MSLane::resetPermissions ( long long  transientID)
inherited

Definition at line 4150 of file MSLane.cpp.

References MSLane::myOriginalPermissions, MSLane::myPermissionChanges, MSLane::myPermissions, and SVCAll.

Referenced by closeTraffic(), MSTriggeredRerouter::setPermissions(), and MSLane::setPermissions().

Here is the caller graph for this function:

◆ safeInsertionSpeed()

double MSLane::safeInsertionSpeed ( const MSVehicle veh,
double  seen,
const MSLeaderInfo leaders,
double  speed 
)
protectedinherited

return the maximum safe speed for insertion behind leaders (a negative value indicates that safe insertion is impossible)

Definition at line 1270 of file MSLane.cpp.

References COLLISION, DEBUG_COND2, MSVehicle::getBackPositionOnLane(), MSVehicle::getCarFollowModel(), Named::getID(), MSCFModel::getMaxDecel(), MSVehicleType::getMinGap(), MSBaseVehicle::getParameter(), MSVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), SUMOVehicleParameter::insertionChecks, MSCFModel::insertionFollowSpeed(), INVALID_SPEED, MIN2(), MSLeaderInfo::numSublanes(), and SIMTIME.

Referenced by MSLane::isInsertionSuccess().

Here is the caller graph for this function:

◆ saveRNGStates()

void MSLane::saveRNGStates ( OutputDevice out)
staticinherited

save random number generator states to the given output device

Definition at line 4233 of file MSLane.cpp.

References OutputDevice::closeTag(), MSLane::getNumRNGs(), MSLane::myRNGs, OutputDevice::openTag(), RandHelper::saveState(), SUMO_ATTR_INDEX, SUMO_ATTR_STATE, SUMO_TAG_RNGLANE, and OutputDevice::writeAttr().

Referenced by MSStateHandler::saveRNGs().

Here is the caller graph for this function:

◆ saveState()

◆ selectGLObject()

void GUIGlObject::selectGLObject ( )
virtualinherited

select GLObject (Currently used only in NETEDIT)

Reimplemented in GNEAdditional, GNEGenericData, GNEDemandElement, and GNENetworkElement.

Definition at line 224 of file GUIGlObject.cpp.

◆ setBlocked()

void GUIGlObject::setBlocked ( const bool  state = true)
inlineinherited

set blocking status

Definition at line 169 of file GUIGlObject.h.

References GUIGlObject::myAmBlocked.

Referenced by GUIGlObjectStorage::getObjectBlocking().

Here is the caller graph for this function:

◆ setColor()

RGBColor GUILane::setColor ( const GUIVisualizationSettings s) const
private

sets the color according to the currente settings

Definition at line 1078 of file GUILane.cpp.

References GUIPropertySchemeStorage< T >::getActive(), GUIPropertyScheme< T >::getColor(), getColorValue(), GUIPropertySchemeStorage< T >::getScheme(), MSGlobals::gUseMesoSim, GUIVisualizationSettings::laneColorer, MESO_USE_LANE_COLOR, MSLane::myEdge, GLHelper::setColor(), setFunctionalColor(), and setMultiColor().

Referenced by drawGL(), and drawMarkings().

Here is the caller graph for this function:

◆ setFrictionCoefficient()

void MSLane::setFrictionCoefficient ( double  val)
inherited

Sets a new friction coefficient for the lane [to be later (used by TraCI and MSCalibrator)].

Parameters
[in]valthe new friction coefficient [0..1]

Definition at line 2475 of file MSLane.cpp.

References MSLane::myEdge, MSLane::myFrictionCoefficient, and MSEdge::recalcCache().

◆ setFunctionalColor()

◆ setID()

virtual void Named::setID ( const std::string &  newID)
inlinevirtualinherited

resets the id

Parameters
[in]newIDThe new id of this object

Reimplemented in MSBaseVehicle, MSTransportable, and NBLoadedSUMOTLDef.

Definition at line 82 of file Named.h.

References Named::myID.

Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::rename(), NBNodeCont::rename(), GNEJunction::setAttribute(), NBLoadedSUMOTLDef::setID(), and IntermodalNetwork< E, L, N, V >::splitEdge().

Here is the caller graph for this function:

◆ setJunctionApproaches()

void GUILane::setJunctionApproaches ( const SUMOTime  t) const
overridevirtual

the same as in MSLane, but locks the access for the visualisation first; the access will be granted at the end of this method

Reimplemented from MSLane.

Definition at line 151 of file GUILane.cpp.

References myLock, and MSLane::setJunctionApproaches().

◆ setLaneStopOffset()

void MSLane::setLaneStopOffset ( const StopOffset stopOffset)
inherited

Set vehicle class specific stopOffsets.

Definition at line 3440 of file MSLane.cpp.

References MSLane::myLaneStopOffset.

◆ setLength()

void MSLane::setLength ( double  val)
inherited

Sets a new length for the lane (used by TraCI only)

Parameters
[in]valthe new length in m

Definition at line 2482 of file MSLane.cpp.

References MSLane::myEdge, MSLane::myLength, and MSEdge::recalcCache().

◆ setManeuverReservation()

void MSLane::setManeuverReservation ( MSVehicle v)
virtualinherited

Registers the lane change intentions (towards this lane) for the given vehicle.

Definition at line 378 of file MSLane.cpp.

References DEBUG_COND2, Named::getID(), MSLane::myManeuverReservations, and SIMTIME.

Referenced by MSAbstractLaneChangeModel::updateTargetLane().

Here is the caller graph for this function:

◆ setMaxSpeed()

void MSLane::setMaxSpeed ( double  val)
inherited

Sets a new maximum speed for the lane (used by TraCI and MSCalibrator)

Parameters
[in]valthe new speed in m/s

Definition at line 2468 of file MSLane.cpp.

References MSLane::myEdge, MSLane::myMaxSpeed, and MSEdge::recalcCache().

Referenced by MSCalibrator::execute().

Here is the caller graph for this function:

◆ setMicrosimID()

void GUIGlObject::setMicrosimID ( const std::string &  newID)
virtualinherited

Changes the microsimID of the object.

Note
happens in NETEDIT

Reimplemented in GNEEdge.

Definition at line 242 of file GUIGlObject.cpp.

References GUIGlObjectStorage::changeName(), GUIGlObject::createFullName(), GUIGlObjectStorage::gIDStorage, GUIGlObject::myFullName, and GUIGlObject::myMicrosimID.

Referenced by GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEClosingLaneReroute::setAttribute(), GNEClosingReroute::setAttribute(), GNEContainerStop::setAttribute(), GNEDestProbReroute::setAttribute(), GNEInductionLoopDetector::setAttribute(), GNEInstantInductionLoopDetector::setAttribute(), GNELaneAreaDetector::setAttribute(), GNEMultiEntryExitDetector::setAttribute(), GNEOverheadWire::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingAreaReroute::setAttribute(), GNERerouter::setAttribute(), GNERouteProbe::setAttribute(), GNERouteProbReroute::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNETractionSubstation::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEContainer::setAttribute(), GNEPerson::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEVType::setAttribute(), GNEVTypeDistribution::setAttribute(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), GNELane::setIndex(), GNEEdge::setMicrosimID(), GNENetHelper::AttributeCarriers::updateEdgeTypeID(), GNEConnection::updateID(), and GNENetHelper::AttributeCarriers::updateJunctionID().

Here is the caller graph for this function:

◆ setMultiColor()

bool GUILane::setMultiColor ( const GUIVisualizationSettings s,
const GUIColorer c,
RGBColor col 
) const
private

sets multiple colors according to the current scheme index and some lane function

Definition at line 1147 of file GUILane.cpp.

References GUIPropertySchemeStorage< T >::getActive(), GUIPropertyScheme< T >::getColor(), getColorValue(), GUIPropertySchemeStorage< T >::getScheme(), MAX2(), MSLane::myShape, and myShapeColors.

Referenced by setColor().

Here is the caller graph for this function:

◆ setOpposite()

void MSLane::setOpposite ( MSLane oppositeLane)
inherited

Adds a neighbor to this lane.

Parameters
[in]idThe lane's id

Definition at line 316 of file MSLane.cpp.

References Named::getID(), MSLane::getLength(), MSLane::myOpposite, TL, and WRITE_WARNINGF.

◆ setParameter()

void Parameterised::setParameter ( const std::string &  key,
const std::string &  value 
)
virtualinherited

◆ setParameters()

void Parameterised::setParameters ( const Parameterised params)
inherited

set the inner key/value map in map<string, string> format

Definition at line 148 of file Parameterised.cpp.

References Parameterised::getParametersMap(), Parameterised::myMap, and Parameterised::setParameter().

◆ setParametersMap()

void Parameterised::setParametersMap ( const Parameterised::Map paramsMap)
inherited

set the inner key/value map in map<string, string> format

Definition at line 159 of file Parameterised.cpp.

References Parameterised::myMap, and Parameterised::setParameter().

Referenced by GNESingleParametersDialog::onCmdAccept().

Here is the caller graph for this function:

◆ setParametersStr()

void Parameterised::setParametersStr ( const std::string &  paramsString,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
inherited

set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"

Parameters
[in]paramsStringA serialized key-value map
[in]kvsepThe separater between key and value
[in]sepThe separater between map entries

Definition at line 170 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::myMap, and Parameterised::setParameter().

Referenced by MSDevice_Taxi::initDispatch(), GNEAccess::setAttribute(), GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEContainerStop::setAttribute(), GNEEntryExitDetector::setAttribute(), GNEInductionLoopDetector::setAttribute(), GNEInstantInductionLoopDetector::setAttribute(), GNELaneAreaDetector::setAttribute(), GNEMultiEntryExitDetector::setAttribute(), GNEOverheadWire::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingSpace::setAttribute(), GNERerouter::setAttribute(), GNERouteProbe::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNETractionSubstation::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEEdgeData::setAttribute(), GNEEdgeRelData::setAttribute(), GNETAZRelData::setAttribute(), GNEContainer::setAttribute(), GNEPerson::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEVType::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEEdgeType::setAttribute(), GNEJunction::setAttribute(), GNELane::setAttribute(), GNELaneType::setAttribute(), GNEPOI::setAttribute(), and GNEPoly::setAttribute().

Here is the caller graph for this function:

◆ setPartialOccupation()

double GUILane::setPartialOccupation ( MSVehicle v)
overridevirtual

Sets the information about a vehicle lapping into this lane.

This vehicle is added to myVehicles and may be distinguished from regular vehicles by the disparity between this lane and v->getLane()

Parameters
[in]vThe vehicle which laps into this lane
Returns
This lane's length

Reimplemented from MSLane.

Definition at line 200 of file GUILane.cpp.

References myLock, and MSLane::setPartialOccupation().

◆ setPermissions()

void MSLane::setPermissions ( SVCPermissions  permissions,
long long  transientID 
)
inherited

Sets the permissions to the given value. If a transientID is given, the permissions are recored as temporary.

Parameters
[in]permissionsThe new permissions
[in]transientIDThe id of the permission-modification or the special value PERMANENT

Definition at line 4138 of file MSLane.cpp.

References MSLane::CHANGE_PERMISSIONS_PERMANENT, MSLane::myOriginalPermissions, MSLane::myPermissionChanges, MSLane::myPermissions, and MSLane::resetPermissions().

Referenced by closeTraffic(), LIBSUMO_NAMESPACE::Lane::setAllowed(), LIBSUMO_NAMESPACE::Lane::setDisallowed(), and MSTriggeredRerouter::setPermissions().

Here is the caller graph for this function:

◆ setReachability()

void GUILane::setReachability ( double  value)
inline

Definition at line 240 of file GUILane.h.

References myReachability.

Referenced by GUIViewTraffic::showLaneReachability().

Here is the caller graph for this function:

◆ setRightSideOnEdge()

void MSLane::setRightSideOnEdge ( double  value,
int  rightmostSublane 
)
inlineinherited

Definition at line 1108 of file MSLane.h.

References MSLane::myRightmostSublane, and MSLane::myRightSideOnEdge.

◆ sortManeuverReservations()

void MSLane::sortManeuverReservations ( )
inherited

sorts myManeuverReservations

Definition at line 2311 of file MSLane.cpp.

References DEBUG_COND, Named::getID(), MSLane::myManeuverReservations, and toString().

◆ sortPartialVehicles()

void MSLane::sortPartialVehicles ( )
inherited

sorts myPartialVehicles

Definition at line 2303 of file MSLane.cpp.

References MSLane::myPartialVehicles.

Referenced by MSLane::integrateNewVehicles(), and MSLane::swapAfterLaneChange().

Here is the caller graph for this function:

◆ splitAtSegments()

PositionVector GUILane::splitAtSegments ( const PositionVector shape)
private

add intermediate points at segment borders

Definition at line 1480 of file GUILane.cpp.

References Position::distanceTo(), OptionsCont::getOptions(), MSGlobals::gUseMesoSim, PositionVector::indexOfClosest(), PositionVector::insertAtClosest(), MSLane::myLength, mySegmentStartIndex, myShapeSegments, MELoop::numSegmentsFor(), and PositionVector::positionAtOffset().

Referenced by GUILane().

Here is the caller graph for this function:

◆ succLinkSec()

std::vector< MSLink * >::const_iterator MSLane::succLinkSec ( const SUMOVehicle veh,
int  nRouteSuccs,
const MSLane succLinkSource,
const std::vector< MSLane * > &  conts 
)
staticinherited

Same as succLink, but does not throw any assertions when the succeeding link could not be found; Returns the myLinks.end() instead; Further, the number of edges to look forward may be given

Definition at line 2379 of file MSLane.cpp.

References Named::getID(), MSNet::getInstance(), MSVehicleType::getVehicleClass(), SUMOTrafficObject::getVehicleType(), MSLane::isInternal(), MSLane::myLinks, SUMOVehicle::succEdge(), time2string(), and WRITE_WARNING.

Referenced by MSLane::appropriate(), MSLaneChanger::checkChange(), MSLane::executeMovements(), MSLane::getCriticalLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), LIBSUMO_NAMESPACE::Vehicle::getNextTLS(), MSCFModel_EIDM::internalspeedlimit(), MSLane::isInsertionSuccess(), MSDevice_GLOSA::notifyEnter(), MSVehicle::planMoveInternal(), MSVehicle::setBlinkerInformation(), and MSVehicle::unsafeLinkAhead().

Here is the caller graph for this function:

◆ swapAfterLaneChange()

void GUILane::swapAfterLaneChange ( SUMOTime  t)
overrideprotectedvirtual

moves myTmpVehicles int myVehicles after a lane change procedure

Reimplemented from MSLane.

Definition at line 179 of file GUILane.cpp.

References myLock, and MSLane::swapAfterLaneChange().

◆ unsetParameter()

void Parameterised::unsetParameter ( const std::string &  key)
inherited

Removes a parameter.

Parameters
[in]keyThe parameter's name

Definition at line 51 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_OpenStreetMap::insertEdge(), MSLane::isInsertionSuccess(), and GNEVType::setAttribute().

Here is the caller graph for this function:

◆ updateGLObject()

void GUIGlObject::updateGLObject ( )
virtualinherited

update GLObject (geometry, ID, etc.) (optional)

Reimplemented in GNEAdditional, GNEGenericData, GNEDemandElement, GNEConnection, GNECrossing, GNEEdge, GNEEdgeType, GNEInternalLane, GNEJunction, GNELane, GNELaneType, and GNEWalkingArea.

Definition at line 230 of file GUIGlObject.cpp.

◆ updateLeaderInfo()

void MSLane::updateLeaderInfo ( const MSVehicle veh,
VehCont::reverse_iterator &  vehPart,
VehCont::reverse_iterator &  vehRes,
MSLeaderInfo ahead 
) const
inherited

This updates the MSLeaderInfo argument with respect to the given MSVehicle. All leader-vehicles on the same edge, which are relevant for the vehicle (i.e. with position > vehicle's position) and not already integrated into the LeaderInfo, are integrated. The given iterators vehPart and vehRes give access to these vehicles which are either partial occupators or have issued a maneuver reservation for the lane (the latter occurs only for the sublane model).

Definition at line 1462 of file MSLane.cpp.

References MSLeaderInfo::addLeader(), DEBUG_COND, MSVehicle::getPositionOnLane(), MSGlobals::gLaneChangeDuration, MSLane::myManeuverReservations, and MSLane::myPartialVehicles.

Referenced by MSLane::planMovements().

Here is the caller graph for this function:

◆ updateLengthSum()

void MSLane::updateLengthSum ( )
inherited

updated current vehicle length sum (delayed to avoid lane-order-dependency)

Definition at line 2155 of file MSLane.cpp.

References MSLane::myBruttoVehicleLengthSum, MSLane::myBruttoVehicleLengthSumToRemove, MSLane::myNettoVehicleLengthSum, MSLane::myNettoVehicleLengthSumToRemove, and MSLane::myVehicles.

◆ updateParameters()

void Parameterised::updateParameters ( const Parameterised::Map mapArg)
inherited

Adds or updates all given parameters from the map.

Parameters
[in]mapArgThe keys/values to insert

Definition at line 57 of file Parameterised.cpp.

References Parameterised::setParameter().

Referenced by NIImporter_SUMO::_loadNetwork(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NLHandler::closeEdge(), NLJunctionControlBuilder::closeJunction(), NLJunctionControlBuilder::closeTrafficLightLogic(), NBTrafficLightDefinition::compute(), NLDetectorBuilder::endE3Detector(), NIImporter_OpenStreetMap::insertEdge(), NBEdge::NBEdge(), and NBLoadedSUMOTLDef::NBLoadedSUMOTLDef().

Here is the caller graph for this function:

◆ visit()

void MSLane::visit ( const MSLane::StoringVisitor cont) const
inlineinherited

Callback for visiting the lane when traversing an RTree.

This is used in the TraCIServerAPI_Lane for context subscriptions.

Parameters
[in]contThe context doing all the work
See also
libsumo::Helper::LaneStoringVisitor::add

Definition at line 1258 of file MSLane.h.

References MSLane::StoringVisitor::add().

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

Here is the caller graph for this function:

◆ writeParams()

void Parameterised::writeParams ( OutputDevice device) const
inherited

write Params in the given outputdevice

Definition at line 185 of file Parameterised.cpp.

References OutputDevice::closeTag(), StringUtils::escapeXML(), Parameterised::myMap, OutputDevice::openTag(), SUMO_ATTR_KEY, SUMO_ATTR_VALUE, SUMO_TAG_PARAM, and OutputDevice::writeAttr().

Referenced by MSTransportable::routeOutput(), ROPerson::saveAsXML(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), SUMOVTypeParameter::write(), NBPTStop::write(), MSRailSignalConstraint_Predecessor::write(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEContainerStop::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERouteProbe::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), NWWriter_SUMO::writeConnection(), GNEContainer::writeDemandElement(), GNEPerson::writeDemandElement(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), NWWriter_SUMO::writeTrafficLight(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().

Here is the caller graph for this function:

Field Documentation

◆ CHANGE_PERMISSIONS_GUI

const long MSLane::CHANGE_PERMISSIONS_GUI = 1
staticinherited

Definition at line 1281 of file MSLane.h.

Referenced by closeTraffic().

◆ CHANGE_PERMISSIONS_PERMANENT

const long MSLane::CHANGE_PERMISSIONS_PERMANENT = 0
staticinherited

◆ GUIGlObjectTypeNamesInitializer

StringBijection< GUIGlObjectType >::Entry GUIGlObject::GUIGlObjectTypeNamesInitializer
staticprivateinherited

vector for TypeNames Initializer

Definition at line 343 of file GUIGlObject.h.

◆ INVALID_ID

◆ MESO_USE_LANE_COLOR

const RGBColor GUILane::MESO_USE_LANE_COLOR
staticprivate

special color to signify alternative coloring scheme

Definition at line 382 of file GUILane.h.

Referenced by setColor().

◆ myAmBlocked

bool GUIGlObject::myAmBlocked
privateinherited

whether the object can be deleted

Definition at line 329 of file GUIGlObject.h.

Referenced by GUIGlObject::isBlocked(), and GUIGlObject::setBlocked().

◆ myAmClosed

bool GUILane::myAmClosed
private

state for dynamic lane closings

Definition at line 372 of file GUILane.h.

Referenced by closeTraffic(), getPopUpMenu(), and isClosed().

◆ myApproachingLanes

std::map<MSEdge*, std::vector<MSLane*> > MSLane::myApproachingLanes
protectedinherited

All direct internal and direct (disregarding internal predecessors) non-internal predecessor lanes of this lane.

Definition at line 1459 of file MSLane.h.

Referenced by MSLane::addApproachingLane(), MSLane::getNormalIncomingLanes(), and MSLane::isApproachedFrom().

◆ myBruttoVehicleLengthSum

double MSLane::myBruttoVehicleLengthSum
protectedinherited

◆ myBruttoVehicleLengthSumToRemove

double MSLane::myBruttoVehicleLengthSumToRemove
protectedinherited

The length of all vehicles that have left this lane in the current step (this lane, including their minGaps)

Definition at line 1449 of file MSLane.h.

Referenced by MSLane::clearState(), MSLane::executeMovements(), and MSLane::updateLengthSum().

◆ myCachedGUISettings

GUIVisualizationSettings * GUILane::myCachedGUISettings
staticprivate

cached for tracking color value

Definition at line 375 of file GUILane.h.

Referenced by getColorValueForTracker(), and getParameterWindow().

◆ myCanonicalPredecessorLane

MSLane* MSLane::myCanonicalPredecessorLane
mutableprotectedinherited

Similar to LogicalPredecessorLane,.

See also
getCanonicalPredecessorLane()

Definition at line 1437 of file MSLane.h.

Referenced by MSLane::getCanonicalPredecessorLane().

◆ myCanonicalSuccessorLane

MSLane* MSLane::myCanonicalSuccessorLane
mutableprotectedinherited

Main successor lane,.

See also
getCanonicalSuccessorLane()

Definition at line 1440 of file MSLane.h.

Referenced by MSLane::getCanonicalSuccessorLane().

◆ myChangeLeft

SVCPermissions MSLane::myChangeLeft
protectedinherited

The vClass permissions for changing from this lane.

Definition at line 1421 of file MSLane.h.

Referenced by MSLane::allowsChangingLeft().

◆ myChangeRight

SVCPermissions MSLane::myChangeRight
protectedinherited

Definition at line 1422 of file MSLane.h.

Referenced by MSLane::allowsChangingRight().

◆ myCheckJunctionCollisionMinGap

double MSLane::myCheckJunctionCollisionMinGap
staticprivateinherited

Definition at line 1512 of file MSLane.h.

Referenced by MSLane::detectCollisions(), and MSLane::initCollisionOptions().

◆ myCheckJunctionCollisions

bool MSLane::myCheckJunctionCollisions
staticprivateinherited

Definition at line 1511 of file MSLane.h.

Referenced by MSLane::initCollisionOptions(), and MSLane::mustCheckJunctionCollisions().

◆ myCollisionAction

MSLane::CollisionAction MSLane::myCollisionAction
staticprivateinherited

◆ myCollisionMinGapFactor

double MSLane::myCollisionMinGapFactor
staticprivateinherited

Definition at line 1514 of file MSLane.h.

Referenced by MSLane::detectCollisionBetween(), and MSLane::initCollisionOptions().

◆ myCollisionStopTime

SUMOTime MSLane::myCollisionStopTime
staticprivateinherited

Definition at line 1513 of file MSLane.h.

Referenced by MSLane::handleCollisionBetween(), and MSLane::initCollisionOptions().

◆ myDict

MSLane::DictType MSLane::myDict
staticprotectedinherited

Static dictionary to associate string-ids with objects.

Definition at line 1501 of file MSLane.h.

Referenced by MSLane::clear(), MSLane::dictionary(), MSLane::dictSize(), MSLane::fill(), and MSLane::insertIDs().

◆ myEdge

◆ myExtrapolateSubstepDepart

bool MSLane::myExtrapolateSubstepDepart
staticprivateinherited

Definition at line 1515 of file MSLane.h.

Referenced by MSLane::initCollisionOptions(), and MSLane::insertVehicle().

◆ myFollowerInfo

MSLeaderInfo MSLane::myFollowerInfo
mutableprotectedinherited

followers on all sublanes as seen by vehicles on consecutive lanes (cached)

Definition at line 1464 of file MSLane.h.

Referenced by MSLane::getFirstVehicleInformation().

◆ myFollowerInfoTime

SUMOTime MSLane::myFollowerInfoTime
mutableprotectedinherited

time step for which myFollowerInfo was last updated

Definition at line 1469 of file MSLane.h.

Referenced by MSLane::clearState(), and MSLane::getFirstVehicleInformation().

◆ myFrictionCoefficient

double MSLane::myFrictionCoefficient
protectedinherited

Lane-wide friction coefficient [0..1].

Definition at line 1415 of file MSLane.h.

Referenced by MSLane::getFrictionCoefficient(), and MSLane::setFrictionCoefficient().

◆ myFullName

std::string GUIGlObject::myFullName
privateinherited

full name of GL Object

Definition at line 323 of file GUIGlObject.h.

Referenced by GUIGlObject::getFullName(), GUIGlObject::GUIGlObject(), and GUIGlObject::setMicrosimID().

◆ myGlID

const GUIGlID GUIGlObject::myGlID
privateinherited

The numerical id of the object.

Definition at line 314 of file GUIGlObject.h.

Referenced by GUIGlObject::getGlID().

◆ myGLObjectType

const GUIGlObjectType GUIGlObject::myGLObjectType
privateinherited

◆ myHalfLaneWidth

double GUILane::myHalfLaneWidth
private

◆ myIcon

FXIcon* GUIGlObject::myIcon
privateinherited

icon associatd with this GL Object

Definition at line 326 of file GUIGlObject.h.

Referenced by GUIGlObject::buildPopupHeader(), and GUIGlObject::getGLIcon().

◆ myID

std::string Named::myID
protectedinherited

◆ myIncomingLanes

std::vector<IncomingLaneInfo> MSLane::myIncomingLanes
protectedinherited

◆ myIndex

int MSLane::myIndex
protectedinherited

The lane index.

Definition at line 1350 of file MSLane.h.

Referenced by drawGL(), drawJunctionChangeProhibitions(), drawMarkings(), and MSLane::getIndex().

◆ myIsRampAccel

const bool MSLane::myIsRampAccel
protectedinherited

whether this lane is an acceleration lane

Definition at line 1475 of file MSLane.h.

Referenced by MSLane::isAccelLane().

◆ myLaneStopOffset

StopOffset MSLane::myLaneStopOffset
protectedinherited

Lane's vClass specific stop offset [m]. The map is either of length 0, which means no special stopOffset was set, or of length 1, where the key is a bitset representing a subset of the SUMOVehicleClass Enum and the value is the offset in meters.

Definition at line 1407 of file MSLane.h.

Referenced by drawLinkRules(), MSLane::getLaneStopOffsets(), MSLane::getVehicleStopOffset(), and MSLane::setLaneStopOffset().

◆ myLaneType

const std::string MSLane::myLaneType
protectedinherited

the type of this lane

Definition at line 1478 of file MSLane.h.

Referenced by MSLane::getLaneType(), and getParameterWindow().

◆ myLeaderInfo

MSLeaderInfo MSLane::myLeaderInfo
mutableprotectedinherited

leaders on all sublanes as seen by approaching vehicles (cached)

Definition at line 1462 of file MSLane.h.

Referenced by MSLane::getLastVehicleInformation().

◆ myLeaderInfoTime

SUMOTime MSLane::myLeaderInfoTime
mutableprotectedinherited

time step for which myLeaderInfo was last updated

Definition at line 1467 of file MSLane.h.

Referenced by MSLane::clearState(), and MSLane::getLastVehicleInformation().

◆ myLength

◆ myLengthGeometryFactor

const double MSLane::myLengthGeometryFactor
protectedinherited

◆ myLinks

◆ myLock

FXMutex GUILane::myLock
mutableprivate

◆ myLogicalPredecessorLane

MSLane* MSLane::myLogicalPredecessorLane
mutableprotectedinherited

Definition at line 1434 of file MSLane.h.

Referenced by MSLane::getLogicalPredecessorLane().

◆ myManeuverReservations

VehCont MSLane::myManeuverReservations
protectedinherited

The vehicles which registered maneuvering into the lane within their current action step. This is currently only relevant for sublane simulation, since continuous lanechanging uses the partial vehicle mechanism.

The entering vehicles are inserted at the front of this container and the leaving ones leave from the back.

Definition at line 1391 of file MSLane.h.

Referenced by MSLane::clearState(), MSLane::isInsertionSuccess(), MSLane::planMovements(), MSLane::resetManeuverReservation(), MSLane::setManeuverReservation(), MSLane::sortManeuverReservations(), and MSLane::updateLeaderInfo().

◆ myMap

◆ myMaxSpeed

double MSLane::myMaxSpeed
protectedinherited

◆ myMicrosimID

std::string GUIGlObject::myMicrosimID
privateinherited

ID of GL object.

Definition at line 320 of file GUIGlObject.h.

Referenced by GUIGlObject::getMicrosimID(), and GUIGlObject::setMicrosimID().

◆ myMoveReminders

std::vector< MSMoveReminder* > MSLane::myMoveReminders
privateinherited

This lane's move reminder.

Definition at line 1507 of file MSLane.h.

Referenced by MSLane::addMoveReminder(), and MSLane::getMoveReminders().

◆ myNeedsCollisionCheck

bool MSLane::myNeedsCollisionCheck
protectedinherited

◆ myNettoVehicleLengthSum

double MSLane::myNettoVehicleLengthSum
protectedinherited

◆ myNettoVehicleLengthSumToRemove

double MSLane::myNettoVehicleLengthSumToRemove
protectedinherited

The length of all vehicles that have left this lane in the current step (this lane, excluding their minGaps)

Definition at line 1452 of file MSLane.h.

Referenced by MSLane::clearState(), MSLane::executeMovements(), and MSLane::updateLengthSum().

◆ myNumericalID

int MSLane::myNumericalID
protectedinherited

Unique numerical ID (set on reading by netload)

Definition at line 1344 of file MSLane.h.

Referenced by MSLane::getNumericalID().

◆ myOpposite

MSLane* MSLane::myOpposite
protectedinherited

◆ myOriginalPermissions

SVCPermissions MSLane::myOriginalPermissions
protectedinherited

The original vClass permissions for this lane (before temporary modifications)

Definition at line 1425 of file MSLane.h.

Referenced by MSLane::resetPermissions(), and MSLane::setPermissions().

◆ myParamWindows

std::set<GUIParameterTableWindow*> GUIGlObject::myParamWindows
privateinherited

Parameter table windows which refer to this object.

Definition at line 332 of file GUIGlObject.h.

Referenced by GUIGlObject::addParameterTable(), GUIGlObject::removeParameterTable(), and GUIGlObject::~GUIGlObject().

◆ myParkingAreas

std::vector<MSParkingArea*>* GUILane::myParkingAreas
mutableprivate

list of parkingAreas on this lane

Definition at line 362 of file GUILane.h.

Referenced by getColorValue(), and ~GUILane().

◆ myParkingVehicles

std::set<const MSBaseVehicle*> MSLane::myParkingVehicles
protectedinherited

◆ myPartialVehicles

VehCont MSLane::myPartialVehicles
protectedinherited

The lane's partial vehicles. This container holds all vehicles that are partially on this lane but which are in myVehicles of another lane. Reasons for partial occupancies include the following.

  • the back is still on this lane during regular movement
  • the vehicle is performing a continuous lane-change maneuver
  • sub-lane simulation where vehicles can freely move laterally among the lanes of an edge

The entering vehicles are inserted at the front of this container and the leaving ones leave from the back.

Definition at line 1375 of file MSLane.h.

Referenced by MSLane::anyVehiclesBegin(), MSLane::anyVehiclesEnd(), MSLane::anyVehiclesUpstreamBegin(), MSLane::clearState(), MSLane::detectCollisions(), MSLane::freeInsertion(), MSLane::getFirstAnyVehicle(), MSLane::getFractionalVehicleLength(), MSLane::getLastAnyVehicle(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLane::getPartialBehind(), MSLane::getPartialBeyond(), MSLane::getPartialVehicleNumber(), MSLaneChanger::getRealLeader(), MSLane::getVehicleNumberWithPartials(), MSLane::integrateNewVehicles(), MSLane::isEmpty(), MSLane::isInsertionSuccess(), MSLane::planMovements(), MSLane::resetPartialOccupation(), MSLane::setPartialOccupation(), MSLane::sortPartialVehicles(), and MSLane::updateLeaderInfo().

◆ myPermissionChanges

std::map<long long, SVCPermissions> MSLane::myPermissionChanges
protectedinherited

◆ myPermissions

◆ myQuarterLaneWidth

double GUILane::myQuarterLaneWidth
private

Quarter of lane width, for speed-up.

Definition at line 356 of file GUILane.h.

Referenced by drawDirectionIndicators(), drawGL(), and GUILane().

◆ myReachability

double GUILane::myReachability
private

the time distance from a particular edge

Definition at line 359 of file GUILane.h.

Referenced by getColorValue(), getReachability(), and setReachability().

◆ myRestrictions

const std::map<SUMOVehicleClass, double>* MSLane::myRestrictions
protectedinherited

The vClass speed restrictions for this lane.

Definition at line 1428 of file MSLane.h.

Referenced by MSLane::getVehicleMaxSpeed(), and MSLane::initRestrictions().

◆ myRightmostSublane

int MSLane::myRightmostSublane
protectedinherited

the index of the rightmost sublane of this lane on myEdge

Definition at line 1483 of file MSLane.h.

Referenced by MSLane::getRightmostSublane(), and MSLane::setRightSideOnEdge().

◆ myRightSideOnEdge

double MSLane::myRightSideOnEdge
protectedinherited

the combined width of all lanes with lower index on myEdge

Definition at line 1481 of file MSLane.h.

Referenced by MSLane::getCenterOnEdge(), MSLane::getRightSideOnEdge(), and MSLane::setRightSideOnEdge().

◆ myRNGIndex

int MSLane::myRNGIndex
protectedinherited

◆ myRNGs

std::vector< SumoRNG > MSLane::myRNGs
staticprotectedinherited

◆ mySegmentStartIndex

std::vector<int> GUILane::mySegmentStartIndex
private

the shape indices where the meso segment changes (for segmentsIndex > 0)

Definition at line 350 of file GUILane.h.

Referenced by drawGL(), and splitAtSegments().

◆ myShape

◆ myShapeColors

std::vector<RGBColor> GUILane::myShapeColors
mutableprivate

The color of the shape parts (cached)

Definition at line 345 of file GUILane.h.

Referenced by drawGL(), GUILane(), and setMultiColor().

◆ myShapeLengths

std::vector<double> GUILane::myShapeLengths
private

The lengths of the shape parts.

Definition at line 342 of file GUILane.h.

Referenced by drawBikeMarkings(), drawDirectionIndicators(), drawGL(), drawJunctionChangeProhibitions(), drawMarkings(), getShapeLengths(), and GUILane().

◆ myShapeRotations

std::vector<double> GUILane::myShapeRotations
private

The rotations of the shape parts.

Definition at line 339 of file GUILane.h.

Referenced by drawBikeMarkings(), drawDirectionIndicators(), drawGL(), drawJunctionChangeProhibitions(), drawMarkings(), getShapeRotations(), and GUILane().

◆ myShapeSegments

std::vector<int> GUILane::myShapeSegments
private

the meso segment index for each geometry segment

Definition at line 348 of file GUILane.h.

Referenced by drawGL(), GUILane(), and splitAtSegments().

◆ myStopWatch

std::vector<StopWatch<std::chrono::nanoseconds> > MSLane::myStopWatch
privateinherited

Definition at line 1669 of file MSLane.h.

Referenced by MSLane::getStopWatch().

◆ myTesselation

TesselatedPolygon* GUILane::myTesselation
mutableprivate

An object that stores the tesselation.

Definition at line 365 of file GUILane.h.

Referenced by drawGL(), and ~GUILane().

◆ myTmpVehicles

VehCont MSLane::myTmpVehicles
protectedinherited

Container for lane-changing vehicles. After completion of lane-change- process, the containers will be swapped with myVehicles.

Definition at line 1379 of file MSLane.h.

Referenced by MSLane::anyVehiclesBegin(), MSLane::anyVehiclesEnd(), MSLane::anyVehiclesUpstreamBegin(), MSLane::getLeader(), and MSLane::swapAfterLaneChange().

◆ myVehBuffer

MFXSynchQue<MSVehicle*, std::vector<MSVehicle*> > MSLane::myVehBuffer
protectedinherited

Buffer for vehicles that moved from their previous lane onto this one. Integrated after all vehicles executed their moves.

Definition at line 1383 of file MSLane.h.

Referenced by MSLane::checkBufferType(), MSLane::empty(), MSLane::executeMovements(), and MSLane::integrateNewVehicles().

◆ myVehicles

VehCont MSLane::myVehicles
protectedinherited

The lane's vehicles. This container holds all vehicles that have their front (longitudinally) and their center (laterally) on this lane. These are the vehicles that this lane is 'responsibly' for (i.e. when executing movements)

The entering vehicles are inserted at the front of this container and the leaving ones leave from the back, e.g. the vehicle in front of the junction (often called first) is myVehicles.back() (if it exists). And if it is an iterator at a vehicle, ++it points to the vehicle in front. This is the interaction vehicle.

Definition at line 1363 of file MSLane.h.

Referenced by MSLane::addMoveReminder(), MSLane::anyVehiclesBegin(), MSLane::anyVehiclesEnd(), MSLane::anyVehiclesUpstreamBegin(), MSLane::clearState(), MSLane::detectCollisions(), MSLane::empty(), MSLane::executeMovements(), firstWaitingTime(), MSLane::forceVehicleInsertion(), MSLane::freeInsertion(), MSLane::getBruttoOccupancy(), MSLane::getFirstAnyVehicle(), MSLane::getLastAnyVehicle(), MSLane::getLastFullVehicle(), MSLane::getLeader(), MSLane::getMeanSpeed(), MSLane::getMeanSpeedBike(), MSLane::getNettoOccupancy(), MSLane::getSpaceTillLastStanding(), MSLane::getVehicleNumber(), MSLane::getVehicleNumberWithPartials(), MSLane::getVehiclesSecure(), getVehiclesSecure(), MSLane::getWaitingSeconds(), MSLane::incorporateVehicle(), MSLane::integrateNewVehicles(), MSLane::isEmpty(), MSLane::isInsertionSuccess(), MSLane::loadState(), MSLane::planMovements(), MSLane::removeVehicle(), MSLane::saveState(), MSLane::setJunctionApproaches(), MSLane::swapAfterLaneChange(), MSLane::updateLengthSum(), and MSQueueExport::writeLane().

◆ myWidth

◆ TypeNames

StringBijection< GUIGlObjectType > GUIGlObject::TypeNames
staticinherited

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