Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
MELSegment Class Reference

A single mesoscopic segment (cell) More...

#include <MELSegment.h>

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

Public Member Functions

void addReminders (MEVehicle *veh) const
 add this lanes MoveReminders to the given vehicle
 
void addTo (const StoringVisitor &cont) const
 Adds this object to the given container.
 
double getBruttoOccupancy () const
 Returns the occupany of the segment (the sum of the vehicle lengths + minGaps)
 
double getCapacity () const
 Returns the sum of the lengths of all usable lanes of the segment in meters.
 
int getCarNumber () const
 Returns the total number of cars on the segment.
 
const MSEdgegetEdge () const
 Returns the edge this segment belongs to.
 
double getEntryBlockTimeSeconds () const
 get the earliest entry time in seconds
 
SUMOTime getEventTime () const
 Returns the (planned) time at which the next vehicle leaves this segment.
 
double getEventTimeSeconds () const
 Like getEventTime but returns seconds (for visualization)
 
double getFlow () const
 returns flow based on headway
 
const std::string & getID () const
 Returns the id.
 
int getIndex () const
 Returns the running index of the segment in the edge (0 is the most upstream).
 
double getLastHeadwaySeconds () const
 get the last headway time in seconds
 
double getLength () const
 Returns the length of the segment in meters.
 
MSLinkgetLink (const MEVehicle *veh, bool tlsPenalty=false) const
 Returns the link the given car will use when passing the next junction.
 
SUMOTime getLinkPenalty (const MEVehicle *veh) const
 Returns the penalty time for passing a link (if using gMesoTLSPenalty > 0 or gMesoMinorPenalty > 0)
 
double getMeanSpeed () const
 wrapper to satisfy the FunctionBinding signature
 
double getMeanSpeed (bool useCache) const
 Returns the average speed of vehicles on the segment in meters per second. If there is no vehicle on the segment it returns the maximum allowed speed.
 
SUMOTime getMinimumHeadwayTime () const
 return the minimum headway-time with which vehicles may enter or leave this segment
 
SUMOTime getMinTauWithVehLength (double lengthWithGap, double vehicleTau) const
 convert net time gap (leader back to follower front) to gross time gap (leader front to follower front)
 
SUMOTime getNextInsertionTime (SUMOTime earliestEntry) const
 return a time after earliestEntry at which a vehicle may be inserted at full speed
 
MESegmentgetNextSegment () const
 Returns the following segment on the same edge (0 if it is the last).
 
const std::vector< MEVehicle * > & getQueue (int index) const
 Returns the cars in the queue with the given index for visualization.
 
SUMOTime getQueueBlockTime (int index) const
 
double getRelativeJamThreshold () const
 Returns the relative occupany of the segment (percentage of road used)) at which the segment is considered jammed.
 
double getRelativeOccupancy () const
 Returns the relative occupany of the segment (percentage of road used))
 
std::vector< const MEVehicle * > getVehicles () const
 returns all vehicles (for debugging)
 
double getWaitingSeconds () const
 Get the waiting time for vehicles in all queues.
 
SUMOTime hasSpaceFor (const MEVehicle *const veh, const SUMOTime entryTime, int &qIdx, const bool init=false) const
 Returns whether the given vehicle would still fit into the segment.
 
bool initialise (MEVehicle *veh, SUMOTime time)
 Inserts (emits) vehicle into the segment.
 
void initSegment (const MesoEdgeType &edgeType, const MSEdge &parent, const double capacity)
 set model parameters (may be updated from additional file after network loading is complete)
 
bool isOpen (const MEVehicle *veh) const
 Returns whether the vehicle may use the next link.
 
 MELSegment (const std::string &id, const MSEdge &parent, MESegment *next, const double length, const double speed, const int idx, const bool multiQueue, const MesoEdgeType &edgeType)
 constructor
 
int numQueues () const
 return the number of queues
 
void overrideTLSPenalty ()
 whether the traffic light should use normal junction control despite penalty options
 
void receive (MEVehicle *veh, const int qIdx, SUMOTime time, const bool isDepart=false, const bool isTeleport=false, const bool newEdge=false)
 Adds the vehicle to the segment, adapting its parameters.
 
int remainingVehicleCapacity (const double vehLength) const
 return the remaining physical space on this segment
 
MEVehicleremoveCar (MEVehicle *v, SUMOTime leaveTime, const MSMoveReminder::Notification reason)
 Removes the given car from the edge's que.
 
void resetCachedSpeeds ()
 reset myLastMeanSpeedUpdate
 
void send (MEVehicle *veh, MESegment *const next, const int nextQIdx, SUMOTime time, const MSMoveReminder::Notification reason) override
 Removes the vehicle from the segment, adapting its parameters.
 
virtual void setID (const std::string &newID)
 resets the id
 
void setSpeed (double newSpeed, SUMOTime currentTime, double jamThresh=DO_NOT_PATCH_JAM_THRESHOLD, int qIdx=-1)
 reset mySpeed and patch the speed of all vehicles in it. Also set/recompute myJamThreshold
 
void updateEntryBlockTime (SUMOTime time) override
 update entry blockTime for all queues
 
void updatePermissions ()
 called when permissions change due to Rerouter or TraCI
 
bool vaporizeAnyCar (SUMOTime currentTime, const MSDetectorFileOutput *filter)
 tries to remove any car from this segment
 
void writeVehicles (OutputDevice &of) const
 
Measure collection
void addDetector (MSMoveReminder *data, int queueIndex=-1)
 Adds a data collector for a detector to this segment.
 
void prepareDetectorForWriting (MSMoveReminder &data, int queueIndex=-1)
 Removes a data collector for a detector from this segment.
 
State saving/loading
void saveState (OutputDevice &out) const
 Saves the state of this segment into the given stream.
 
void clearState ()
 Remove all vehicles before quick-loading state.
 
void loadState (const std::vector< SUMOVehicle * > &vehs, const SUMOTime blockTime, const SUMOTime entryBlockTime, const int queIdx)
 Loads the state of this segment with the given parameters.
 

Static Public Member Functions

template<class T >
static std::string getIDSecure (const T *obj, const std::string &fallBack="NULL")
 get an identifier for Named-like object which may be Null
 
static bool isInvalid (const MESegment *segment)
 whether the given segment is 0 or encodes vaporization
 

Static Public Attributes

static const double DO_NOT_PATCH_JAM_THRESHOLD
 
static const std::string OVERRIDE_TLS_PENALTIES
 special param value
 
static const int PARKING_QUEUE = -1
 

Protected Member Functions

SUMOTime getTauJJ (double nextQueueSize, double nextQueueCapacity, double nextJamThreshold) const
 
bool hasBlockedLeader () const
 whether a leader in any queue is blocked
 
bool hasSpaceForInsertion (const Queue &q, int qIdx, double newOccupancy, SUMOTime entryTime) const override
 check jam-avoidance constraints during insertion
 
double jamThresholdForSpeed (double speed, double jamThresh) const
 compute jam threshold for the given speed and jam-threshold option
 
bool limitedControlOverride (const MSLink *link) const
 whether the given link may be passed because the option meso-junction-control.limited is set
 
SUMOTime newArrival (const MEVehicle *const v, double newSpeed, SUMOTime currentTime)
 compute the new arrival time when switching speed
 
bool overtake ()
 
void recomputeJamThreshold (double jamThresh)
 compute a value for myJamThreshold if jamThresh is negative, compute a value which allows free flow at mySpeed interpret jamThresh as the relative occupation at which jam starts
 
void setSpeedForQueue (double newSpeed, SUMOTime currentTime, SUMOTime blockTime, const std::vector< MEVehicle * > &vehs)
 
SUMOTime tauWithVehLength (SUMOTime tau, double lengthWithGap, double vehicleTau) const
 convert net time gap (leader back to follower front) to gross time gap (leader front to follower front)
 
void updateBlockTime (Queue &q, const Queue &qNext, const MESegment *const next, const MEVehicle *veh) override
 update blockTime of Queue q
 

Protected Attributes

double myCapacity = 0.
 The number of lanes represented by the queue * the length of the lane.
 
const MSEdgemyEdge
 The microsim edge this segment belongs to.
 
std::map< const MSEdge *, int > myFollowerMap
 The follower edge to allowed que index mapping for multi queue segments.
 
std::string myID
 The name of the object.
 
const int myIndex
 Running number of the segment in the edge.
 
double myJamThreshold
 The space (in m) which needs to be occupied before the segment is considered jammed.
 
SUMOTime myLastHeadway
 the last headway
 
SUMOTime myLastMeanSpeedUpdate
 the time at which myMeanSpeed was last updated
 
const double myLength
 The segment's length.
 
double myMeanSpeed
 the mean speed on this segment. Updated at event time or on demand
 
MESegmentmyNextSegment
 The next segment of this edge, 0 if this is the last segment of this edge.
 
int myNumVehicles
 The cached value for the number of vehicles.
 
double myQueueCapacity = 0.
 The number of lanes represented by the queue * the length of the lane.
 
std::vector< QueuemyQueues
 The car queues. Vehicles are inserted in the front and removed in the back.
 
double myTau_length
 Headway parameter for computing gross time headyway from net time headway, length and edge speed.
 
Model constants that may be reset once via additional file
SUMOTime myTau_ff
 The time headway parameters, see the Eissfeldt thesis.
 
SUMOTime myTau_fj
 
SUMOTime myTau_jf
 
SUMOTime myTau_jj
 
bool myTLSPenalty
 Whether tls penalty is enabled.
 
bool myCheckMinorPenalty
 penalty for minor links
 
SUMOTime myMinorPenalty
 
bool myJunctionControl
 Whether junction control is enabled.
 
bool myOvertaking
 Whether overtaking is permitted on this segment.
 

Static Protected Attributes

static MSEdge myDummyParent
 
static MESegment myVaporizationTarget
 

Private Types

typedef std::vector< SUMOTimeGapTimes
 upstream arrival times of traveling gaps between cars (for each queue)
 

Private Member Functions

 MELSegment (const MELSegment &)
 Invalidated copy constructor.
 
 MELSegment (const std::string &id)
 constructor for dummy segment
 
MELSegmentoperator= (const MELSegment &)
 Invalidated assignment operator.
 

Private Attributes

std::vector< GapTimesmyGapTimes
 

Detailed Description

A single mesoscopic segment (cell)

Definition at line 38 of file MELSegment.h.

Member Typedef Documentation

◆ GapTimes

typedef std::vector<SUMOTime> MELSegment::GapTimes
private

upstream arrival times of traveling gaps between cars (for each queue)

Definition at line 82 of file MELSegment.h.

Constructor & Destructor Documentation

◆ MELSegment() [1/3]

MELSegment::MELSegment ( const std::string &  id,
const MSEdge parent,
MESegment next,
const double  length,
const double  speed,
const int  idx,
const bool  multiQueue,
const MesoEdgeType edgeType 
)

constructor

Parameters
[in]idThe id of this segment (currently: "<EDGEID>:<SEGMENTNO>")
[in]parentThe edge this segment is located within
[in]nextThe following segment (belonging to the same edge)
[in]lengthThe segment's length
[in]speedThe speed allowed on this segment
[in]idxThe running index of this segment within the segment's edge
[in]multiQueuewhether to install multiple queues on this segment
[in]edgeTypeedge type specific meso parameters such as the different taus

Definition at line 65 of file MELSegment.cpp.

References myGapTimes, and MESegment::myQueues.

◆ MELSegment() [2/3]

MELSegment::MELSegment ( const MELSegment )
private

Invalidated copy constructor.

◆ MELSegment() [3/3]

MELSegment::MELSegment ( const std::string &  id)
private

constructor for dummy segment

Member Function Documentation

◆ addDetector()

void MESegment::addDetector ( MSMoveReminder data,
int  queueIndex = -1 
)
inherited

Adds a data collector for a detector to this segment.

Parameters
[in]dataThe data collector to add
[in]queueIndexThe queue (aka lane) to use, -1 means all

Definition at line 262 of file MESegment.cpp.

References MESegment::myQueues.

Referenced by MSDriveWay::buildRoute(), MSMeanData::init(), MEInductLoop::MEInductLoop(), METriggeredCalibrator::METriggeredCalibrator(), MSInductLoop::MSInductLoop(), MSRouteProbe::MSRouteProbe(), and MSTriggeredRerouter::MSTriggeredRerouter().

Here is the caller graph for this function:

◆ addReminders()

void MESegment::addReminders ( MEVehicle veh) const
inherited

add this lanes MoveReminders to the given vehicle

Definition at line 643 of file MESegment.cpp.

References MEVehicle::getQueIndex(), MESegment::myQueues, and MESegment::PARKING_QUEUE.

Referenced by MESegment::loadState(), MESegment::receive(), and MELoop::teleportVehicle().

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 117 of file Named.h.

References Named::StoringVisitor::add().

Referenced by MSMeanData::writeAggregatedTAZ().

Here is the caller graph for this function:

◆ clearState()

void MESegment::clearState ( )
inherited

Remove all vehicles before quick-loading state.

Definition at line 842 of file MESegment.cpp.

References MESegment::myQueues.

◆ getBruttoOccupancy()

double MESegment::getBruttoOccupancy ( ) const
inlineinherited

Returns the occupany of the segment (the sum of the vehicle lengths + minGaps)

Returns
the occupany of the segment in meters

Definition at line 270 of file MESegment.h.

References MESegment::myQueues.

Referenced by MESegment::getRelativeOccupancy(), METriggeredCalibrator::invalidJam(), MESegment::limitedControlOverride(), and MESegment::overtake().

Here is the caller graph for this function:

◆ getCapacity()

double MESegment::getCapacity ( ) const
inlineinherited

Returns the sum of the lengths of all usable lanes of the segment in meters.

Returns
the capacity of the segment

Definition at line 262 of file MESegment.h.

References MESegment::myCapacity.

◆ getCarNumber()

int MESegment::getCarNumber ( ) const
inlineinherited

Returns the total number of cars on the segment.

Returns
the total number of cars on the segment

Definition at line 213 of file MESegment.h.

References MESegment::myNumVehicles.

Referenced by MESegment::getFlow(), GUIEdge::getParameterWindow(), and MSXMLRawOut::writeEdge().

Here is the caller graph for this function:

◆ getEdge()

const MSEdge & MESegment::getEdge ( ) const
inlineinherited

◆ getEntryBlockTimeSeconds()

double MESegment::getEntryBlockTimeSeconds ( ) const
inlineinherited

get the earliest entry time in seconds

Definition at line 401 of file MESegment.h.

References MIN2(), MESegment::myQueues, STEPS2TIME, and SUMOTime_MAX.

Referenced by GUIEdge::getParameterWindow().

Here is the caller graph for this function:

◆ getEventTime()

SUMOTime MESegment::getEventTime ( ) const
inherited

Returns the (planned) time at which the next vehicle leaves this segment.

Returns
The time the vehicle thinks it leaves

Definition at line 804 of file MESegment.cpp.

References MESegment::myQueues, and SUMOTime_MAX.

Referenced by MELoop::checkCar(), and MESegment::getEventTimeSeconds().

Here is the caller graph for this function:

◆ getEventTimeSeconds()

double MESegment::getEventTimeSeconds ( ) const
inlineinherited

Like getEventTime but returns seconds (for visualization)

Definition at line 391 of file MESegment.h.

References MESegment::getEventTime(), and STEPS2TIME.

Referenced by GUIEdge::getParameterWindow().

Here is the caller graph for this function:

◆ getFlow()

double MESegment::getFlow ( ) const
inherited

returns flow based on headway

Note
: returns magic number 10000 when headway cannot be computed

Definition at line 896 of file MESegment.cpp.

References MESegment::getCarNumber(), MESegment::getMeanSpeed(), and MESegment::myLength.

Referenced by GUIEdge::getParameterWindow().

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 73 of file Named.h.

References Named::myID.

Referenced by MSLCM_LC2013::_patchSpeed(), MSLCM_SL2015::_patchSpeed(), MSDriveWay::_saveState(), MSCFModel_EIDM::_v(), MSCFModel_ACC::_v(), MSCFModel_IDM::_v(), MSCFModel_CACC::_v(), MSCFModel_Wiedemann::_v(), MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChangerSublane::abortLCManeuver(), MSTransportable::abortStage(), MSDevice_GLOSA::adaptSpeed(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToJunctionLeader(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaderDistance(), MSVehicle::adaptToLeaders(), MSVehicle::adaptToOncomingLeader(), MSVehicleTransfer::add(), MSDetectorControl::add(), MSPModel_JuPedSim::add(), MSPModel_Striping::add(), PCPolyContainer::add(), ShapeContainer::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSDriveWay::addBidiFoes(), MSTractionSubstation::addChargeValueForOutput(), MSChargingStation::addChargeValueForOutput(), MSOverheadWire::addChargeValueForOutput(), NBNodeCont::addCluster2Join(), NLHandler::addConflict(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), MSDevice_Taxi::addCustomer(), RODFDetectorCon::addDetector(), NIXMLEdgesHandler::addEdge(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), RONet::addLaneProhibition(), MSLane::addLeaders(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), MSLaneChangerSublane::addOutsideLeaders(), MSTractionSubstation::addOverheadWireClampToCircuit(), MSTractionSubstation::addOverheadWireInnerSegmentToCircuit(), MSTractionSubstation::addOverheadWireSegmentToCircuit(), MSDriveWay::addParallelFoes(), NIImporter_SUMO::addPhase(), RONet::addProhibition(), GUIEdge::addRerouter(), MSDevice_Taxi::addReservation(), MSDispatch::addReservation(), MSDriveWay::addReversalFoes(), MSRouteHandler::addRideOrTransport(), RONet::addRouteDef(), MSDriveWay::addSidings(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), RORouteHandler::addStop(), ROVehicle::addStop(), MSBaseVehicle::addStop(), MSNet::addStoppingPlace(), MSRouteHandler::addTranship(), MSVehicle::addTransportable(), AGActivityTripWriter::addTrip(), MSPModel_JuPedSim::addWaitingSet(), NIXMLConnectionsHandler::addWalkingArea(), MSBaseVehicle::allowsBoarding(), MSTransportable::appendStage(), LIBSUMO_NAMESPACE::Person::appendWalkingStage(), MSCFModel::applyHeadwayAndSpeedDifferencePerceptionErrors(), MSCFModel::applyHeadwayPerceptionError(), libsumo::Helper::applySubscriptionFilterLanes(), libsumo::Helper::applySubscriptionFilterLateralDistance(), libsumo::Helper::applySubscriptionFilterLateralDistanceSinglePass(), libsumo::Helper::applySubscriptionFilters(), libsumo::Helper::applySubscriptionFilterTurn(), NBEdgeCont::attachRemoved(), MSLaneChanger::avoidDeadlock(), MSDevice_ToC::awarenessRecoveryStep(), GUITrafficLightLogicWrapper::begin2TrackPhases(), NLEdgeControlBuilder::beginEdgeParsing(), MSPModel_Interacting::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), MSVehicle::boardTransportables(), MSVehicle::brakeForOverlap(), NIVisumTL::build(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), MSTransportableDevice_Routing::buildDevices(), MSTransportableDevice_BTreceiver::buildDevices(), MSTransportableDevice_BTsender::buildDevices(), MSTransportableDevice_FCD::buildDevices(), MSTransportableDevice_FCDReplay::buildDevices(), NIImporter_VISUM::buildDistrictNode(), MSDriveWay::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), NLDetectorBuilder::buildInductLoop(), NBEdge::buildInnerEdges(), NLTriggerBuilder::buildInnerOverheadWireSegments(), GNETLSEditorFrame::buildInternalLanes(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBOwnTLDef::buildNemaPhases(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSPModel_JuPedSim::buildPedestrianNetwork(), MSDriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), libsumo::Helper::buildStopParameters(), MSDriveWay::buildSubFoe(), MSDevice_Bluelight::buildVehicleDevices(), MSVehicleDevice_BTreceiver::buildVehicleDevices(), MSVehicleDevice_BTsender::buildVehicleDevices(), MSDevice_DriverState::buildVehicleDevices(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice_FCD::buildVehicleDevices(), MSDevice_FCDReplay::buildVehicleDevices(), MSDevice_Friction::buildVehicleDevices(), MSDevice_GLOSA::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSDevice_SSM::buildVehicleDevices(), MSDevice_Taxi::buildVehicleDevices(), MSDevice_ToC::buildVehicleDevices(), MSDevice_Tripinfo::buildVehicleDevices(), MSDevice_Transportable::buildVehicleDevices(), MSDevice_Vehroutes::buildVehicleDevices(), MSDevice_Battery::buildVehicleDevices(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), NEMALogic::calculateInitialPhases170(), MSE2Collector::calculateTimeLossAndTimeOnDetector(), MSDevice_Taxi::cancelCurrentCustomers(), MSDevice_Taxi::cancelCustomer(), MSStageDriving::canLeaveVehicle(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLCHelper::canSaveBlockerLength(), MSDriveWay::canUseSiding(), MSLaneChanger::change(), MSLaneChangerSublane::change(), MSLCM_SL2015::changed(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSActuatedTrafficLightLogic::changeStepAndDuration(), MSSimpleTrafficLightLogic::changeStepAndDuration(), LIBSUMO_NAMESPACE::Vehicle::changeTarget(), MSCFModel_CC::changeWholePlatoonLane(), MSTLLogicControl::check2Switch(), MSEdge::checkAndRegisterBiDirEdge(), MSLaneChanger::checkChange(), MSLaneChanger::checkChangeOpposite(), MSLaneChangerSublane::checkChangeOpposite(), MSLaneChangerSublane::checkChangeSublane(), NBEdgeCont::checkConsistency(), MSDriveWay::checkCrossingFlanks(), MSDevice_ToC::checkDynamicToC(), MSLane::checkFailure(), MSDriveWay::checkFlanks(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSE2Collector::checkPositioning(), MSRoute::checkRemoval(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MEVehicle::checkStop(), MSTriggeredRerouter::checkStopSwitch(), MSLCM_SL2015::checkStrategicChange(), MSDevice_Taxi::checkTaskSwap(), MSAbstractLaneChangeModel::checkTraCICommands(), MSLaneChanger::checkTraCICommands(), MSLink::checkWalkingAreaFoe(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), MSDevice_SSM::closeEncounter(), RORouteHandler::closeRouteDistribution(), MSRouteHandler::closeVehicle(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), MSLCM_SL2015::commitManoeuvre(), IntermodalRouter< E, L, N, V >::compute(), NBTrafficLightDefinition::compute(), ROJTRRouter::compute(), MSVehicle::computeAngle(), MSDispatch::computeDetourTime(), MSDispatch_Greedy::computeDispatch(), MSDispatch_GreedyClosest::computeDispatch(), MSLink::computeDistToDivergence(), NBNodeShapeComputer::computeEdgeBoundaries(), MSVehicle::computeFurtherLanes(), MSDevice_SSM::computeGlobalMeasures(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), NBRampsComputer::computeRamps(), RODFNet::computeRoutesFor(), MSLaneChanger::computeSafeOppositeLength(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), MSLCM_LC2013::computeSpeedLat(), MSLCM_SL2015::computeSpeedLat(), MSDevice_SSM::computeSSMs(), MSLaneChanger::computeSurplusGap(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), MSDriveWay::conflictLaneOccupied(), NGNet::connect(), MSRailSignal::constraintsAllow(), NEMALogic::constructTimingAndPhaseDefs(), MSLaneChanger::continueChange(), MSLaneChangerSublane::continueChangeSublane(), libsumo::Helper::convertCartesianToRoadMap(), LIBSUMO_NAMESPACE::Person::convertTraCIStage(), NBLoadedSUMOTLDef::copyIndices(), NBOwnTLDef::correctConflicting(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GNETLSEditorFrame::TLSPrograms::createTLS(), GUINet::createTLWrapper(), MSDevice_Taxi::customerArrived(), NBNodeCont::customTLID(), MSDevice_ToC::deactivateDeliberateLCs(), libsumo::Helper::debugPrint(), MSLCM_SL2015::decideDirection(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSVehicleControl::deleteVehicle(), MSDevice_ElecHybrid::deleteVehicleFromCircuit(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSE3Collector::detectorUpdate(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSEdge::dictionaryHint(), NBNodeCont::discardTrafficLights(), MSDispatch_Greedy::dispatch(), MSDispatch_GreedyShared::dispatch(), MSDispatch_RouteExtension::dispatch(), MSDevice_Taxi::dispatchShared(), GUILane::drawGL(), MSDevice_SSM::Encounter::Encounter(), MSAbstractLaneChangeModel::endLaneChangeManeuver(), MSE3Collector::enter(), NEMAPhase::enter(), MSParkingArea::enter(), MSDriveWay::enterDriveWay(), MSVehicle::enterLaneAtInsertion(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), MSTransportableControl::erase(), NEMALogic::error_handle_not_set(), MSDevice_StationFinder::estimateConsumption(), MSStoppingPlaceRerouter::evaluateDestination(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), Command_RouteReplacement::execute(), MSDevice_BTreceiver::BTreceiverUpdate::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSPModel_JuPedSim::execute(), MSVehicle::executeFractionalMove(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), MSDevice_SSM::filterByConflictType(), LIBSUMO_NAMESPACE::Person::filterReservation(), NBLoadedSUMOTLDef::finalChecks(), MSCFModel::finalizeSpeed(), MSCFModel_Daniel1::finalizeSpeed(), MSCFModel_EIDM::finalizeSpeed(), MSLaneChanger::findCandidate(), MSDevice_StationFinder::findChargingStation(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), MSRailSignalControl::findDeadlockFoes(), MSDriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), LIBSUMO_NAMESPACE::Simulation::findRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), MSDevice_SSM::flushGlobalMeasures(), MSDriveWay::foeDriveWayOccupied(), MSCFModel_CACC::followSpeed(), MSCFModel_EIDM::followSpeed(), MSCFModel_W99::followSpeed(), NBTrafficLightDefinition::forbids(), MSLaneChanger::foundHilltop(), MSCFModel_EIDM::freeSpeed(), NBNodeCont::generateNodeClusters(), MSDevice_Tripinfo::generateOutput(), MSDevice_StationFinder::generateOutput(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), LIBSUMO_NAMESPACE::Vehicle::getBestLanes(), MSLaneChanger::getBestLanesOpposite(), NBOwnTLDef::getBestPair(), LIBSUMO_NAMESPACE::Edge::getBidiEdge(), LIBSUMO_NAMESPACE::Lane::getBidiLane(), SUMOTrafficObject::getBoolParam(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSDriveWay::getClickableTLLinkID(), GUIVehicle::getColorValue(), MSLaneChanger::getColumnleader(), MSActuatedTrafficLightLogic::getConditions(), LIBSUMO_NAMESPACE::TrafficLight::getConstraintsByFoe(), LIBSUMO_NAMESPACE::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), MSCalibrator::getCurrentStateInterval(), MSCFModel_Rail::getCurveResistance(), NBNodeShapeComputer::getDefaultRadius(), MSDriveWay::getDepartureDriveway(), MSLink::getDescription(), MSRailSignalConstraint_Predecessor::getDescription(), NBTrafficLightDefinition::getDescription(), MSStop::getDescription(), MSStageTrip::getDestinationDescription(), GUIPerson::getDestinationEdgeID(), GUIPerson::getDestinationStopID(), MSDevice_SSM::getDetectionRange(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), MSRailSignal::LinkInfo::getDriveWay(), MSRailSignal::LinkInfo::getDriveWay(), GUIVehicle::getDriveWays(), GUIMEVehicle::getDriveWays(), MSSimpleTrafficLightLogic::getEarliest(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), LIBSUMO_NAMESPACE::RouteProbe::getEdgeID(), MSDevice_SSM::getExtraTime(), MSLane::getFirstVehicleInformation(), SUMOTrafficObject::getFloatParam(), MSBaseVehicle::getFlowID(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSPModel_InteractingState::getID(), MSPModel_Striping::PStateVehicle::getID(), NBEdge::getID(), LIBSUMO_NAMESPACE::Vehicle::getJunctionFoes(), MSDriveWay::getJunctionLinkID(), GUIPerson::getLaneID(), LIBSUMO_NAMESPACE::Calibrator::getLaneID(), NEMALogic::getLaneInfoFromNEMAState(), 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(), ROVehicle::getMandatoryEdges(), MSDevice_SSM::getMDRAC_PRT(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), MSDevice_SSM::getMeasuresAndThresholds(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPModel_Striping::getNeighboringObstacles(), MSRailSignal::getNewDrivewayID(), MSCalibrator::getNewVehicleID(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSPModel_Striping::getNextLaneObstacles(), LIBSUMO_NAMESPACE::Vehicle::getNextLinks(), MSLaneChanger::getOncomingOppositeVehicle(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSStageTrip::getOriginDescription(), MSDevice_SSM::getOutputFilename(), MSDevice_ElecHybrid::getOverheadWireSegmentID(), MSOverheadWire::getOverheadWireSegmentName(), MSDevice_StationFinder::getParameter(), MSDevice_ToC::getParameter(), MSActuatedTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), GUIContainer::getParameterWindow(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUILane::getParentName(), MSLane::getPartialBehind(), MSSimpleDriverState::getPerceivedHeadway(), MSSimpleDriverState::getPerceivedSpeedDifference(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), MSBaseVehicle::getPrefixedParameter(), MSCFModel_CC::getRadarMeasurements(), MSLaneChanger::getRealFollower(), MSLaneChanger::getRealLeader(), LIBSUMO_NAMESPACE::Vehicle::getRoadID(), MSLCHelper::getRoundaboutDistBonus(), LIBSUMO_NAMESPACE::Vehicle::getRouteID(), LIBSUMO_NAMESPACE::Calibrator::getRouteProbeID(), MSBaseVehicle::getRouteValidity(), GUIBaseVehicle::getScaleValue(), MSAbstractLaneChangeModel::getShadowLane(), MSBaseVehicle::getSingularType(), MSTransportable::getSingularType(), LIBSUMO_NAMESPACE::Person::getStage(), MSPerson::MSPersonStage_Access::getStageSummary(), MSStageDriving::getStageSummary(), MSStageTranship::getStageSummary(), MSStageWaiting::getStageSummary(), MSStageWalking::getStageSummary(), MSDevice_Taxi::getStopLane(), MSNet::getStoppingPlaceID(), SUMOTrafficObject::getStringParam(), MSStopOptimizer::StopPathNode::getSuccessor(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), LIBSUMO_NAMESPACE::Vehicle::getTeleportingIDList(), SUMOTrafficObject::getTimeParam(), MSDriveWay::getTLLinkID(), NIImporter_OpenDrive::getTLSSecure(), MSDevice_ElecHybrid::getTractionSubstationID(), PedestrianEdge< E, L, N, V >::getTravelTime(), MSVehicle::getUpcomingLanesUntil(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSRailSignalConstraint::getVeh(), LIBSUMO_NAMESPACE::Person::getVehicle(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), GUIPerson::getVehicleID(), MSPModel_Striping::getVehicleObstacles(), MSStageTrip::getVehicles(), MSDevice_SSM::getVehiclesOnJunction(), MSStageDriving::getWaitingDescription(), MSEdge::getWaitingVehicle(), MSStoppingPlaceRerouter::getWeight(), MSLink::getZipperSpeed(), GNEEdge::GNEEdge(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSLane::handleIntermodalCollisionBetween(), MSRailSignal::hasInsertionConstraint(), MSDriveWay::hasJoin(), MSDriveWay::hasLinkConflict(), MSBaseVehicle::hasValidRouteStart(), MSVehicle::hasValidRouteStart(), MSRailSignalControl::haveDeadlock(), MSBaseVehicle::haveValidStopEdges(), LIBSUMO_NAMESPACE::POI::highlight(), LIBSUMO_NAMESPACE::Vehicle::highlight(), MSIdling_Stop::idle(), MSIdling_RandomCircling::idle(), MSIdling_TaxiStand::idle(), MSLink::ignoreFoe(), MSVehicle::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(), MSMeanData::init(), MSCalibrator::init(), NBEdge::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSRailSignal::init(), NEMALogic::init(), MSActuatedTrafficLightLogic::initAttributeOverride(), MSE2Collector::initAuxiliaries(), MESegment::initialise(), MSTrafficLightLogic::initMesoTLSPenalties(), NBOwnTLDef::initNeedsContRelation(), PolygonDynamics::initTrackedPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NIImporter_OpenStreetMap::insertEdge(), MSCFModel_IDM::insertionFollowSpeed(), MSBaseVehicle::insertStop(), MSLane::insertVehicle(), MSEdge::insertVehicle(), MSPModel_Striping::insertWalkArePaths(), MSLane::integrateNewVehicles(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isAllowed(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSBaseVehicle::isJumping(), MSVehicle::isLeader(), MESegment::isOpen(), MSCFModel_CC::isPlatoonLaneChangeSafe(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), RORoute::isValid(), MSStageDriving::isWaitingFor(), MESegment::jamThresholdForSpeed(), NBNodeCont::joinNodeCluster(), MSVehicle::joinTrainPartFront(), MSAbstractLaneChangeModel::laneChangeOutput(), MSVehicle::lateralDistanceToLane(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSVehicle::leaveLane(), MSVehicle::leaveLaneBack(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), MSStopOut::loadedContainers(), MSStopOut::loadedPersons(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), MSDevice_Taxi::loadState(), MEVehicle::loadState(), MSVehicle::loadState(), MSVehicleTransfer::loadState(), MSTrafficLightLogic::loadState(), MSActuatedTrafficLightLogic::loadState(), ODDistrictCont::makeDistricts(), MSE2Collector::makeMoveNotification(), MSE2Collector::makeVehicleInfo(), NWWriter_OpenDrive::mapmatchRoadObjects(), MSDriveWay::match(), MEVehicle::mayProceed(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSDevice_FCDReplay::move(), MSTransportableDevice_FCDReplay::move(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), MSPModel_Striping::PState::moveTo(), MSPModel_Striping::PState::moveToNextLane(), LIBSUMO_NAMESPACE::Person::moveToXY(), LIBSUMO_NAMESPACE::Vehicle::moveToXY(), MSPModel_Striping::PState::moveToXY(), libsumo::Helper::moveToXYMap(), MSDevice_ToC::MRMExecutionStep(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSDevice_ElecHybrid::MSDevice_ElecHybrid(), MSDevice_Taxi::MSDevice_Taxi(), MSDevice_ToC::MSDevice_ToC(), MSDevice_Transportable::MSDevice_Transportable(), MSE2Collector::MSE2Collector(), MSE2Collector::MSE2Collector(), MSLCM_LC2013::MSLCM_LC2013(), MSParkingArea::MSParkingArea(), MSSimpleDriverState::MSSimpleDriverState(), MSLCM_SL2015::mustOvertakeStopped(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), MSStateHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSDevice_FCDReplay::FCDHandler::myStartElement(), MSPModel_Interacting::nextBlocking(), MSLane::AnyVehicleIterator::nextIsMyVehicles(), MSDevice_ElecHybrid::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_GLOSA::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), MSCalibrator::VehicleRemover::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDriveWay::notifyEnter(), MSDevice_ElecHybrid::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSDriveWay::notifyLeave(), MSDriveWay::notifyLeaveBack(), MSDevice_ElecHybrid::notifyMove(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_GLOSA::notifyMove(), MSDevice_SSM::notifyMove(), MSE2Collector::notifyMove(), MSInductLoop::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_StationFinder::notifyMove(), MSDevice_ToC::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSDevice_Battery::notifyMoveInternal(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), MSDriveWay::notifyReroute(), GNETLSEditorFrame::TLSPrograms::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()(), MSStopOptimizer::optimizeSkipped(), MSLaneChangerSublane::outputLCStarted(), MSTriggeredRerouter::overtakingTrain(), 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(), MSDevice_StationFinder::planOpportunisticCharging(), MSPModel_JuPedSim::polygonChanged(), 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(), MSPModel_Striping::PState::PState(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), MSLink::recheckSetRequestInformation(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdge::reduceGeometry(), MSNet::registerCollision(), MSPModel_Striping::registerCrossingApproach(), MSLink::removeApproaching(), MSLink::removeApproachingPerson(), LIBSUMO_NAMESPACE::TrafficLight::removeConstraints(), MSVehicle::removePassedDriveItems(), MSCalibrator::removePending(), MSDispatch::removeReservation(), GNEJunction::removeTLSConnections(), NBNodeCont::removeUnwishedNodes(), NBNodeCont::rename(), NBTrafficLightLogicCont::rename(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSBaseVehicle::replaceParkingArea(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), MSBaseVehicle::replaceStop(), MSStop::replaceStoppingPlace(), MSTransportable::replaceVehicleType(), MSPerson::replaceWalk(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_SSM::requestsTrajectories(), MSDevice_ToC::requestToC(), MSStageTrip::reroute(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSVehicle::rerouteParkingArea(), MSTransportable::rerouteParkingArea(), MSStoppingPlaceRerouter::rerouteStoppingPlace(), MSDevice_StationFinder::rerouteToChargingStation(), MSDriveWay::reserve(), MSDevice_ToC::resetDeliberateLCs(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), MSDevice_Bluelight::resetVehicle(), MSLaneChanger::resolveDeadlock(), LIBSUMO_NAMESPACE::Vehicle::resume(), MSRailSignal::retrieveDriveWay(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), MSStageDriving::routeOutput(), MSStageTranship::routeOutput(), MSStageTrip::routeOutput(), MSStageWaiting::routeOutput(), MSStageWalking::routeOutput(), MSLane::safeInsertionSpeed(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSLCM_LC2013::saveBlockerLength(), MSLane::saveState(), MESegment::saveState(), MSDevice::saveState(), MSDevice_Routing::saveState(), MSDevice_Taxi::saveState(), MSDevice_Transportable::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), MSDevice_Battery::saveState(), MSDevice_StationFinder::saveState(), MSStageDriving::saveState(), MSSimpleTrafficLightLogic::saveStateAttrs(), MSCalibrator::scheduleRemoval(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSDispatch::servedReservation(), MSVehicle::setAngle(), MSLink::setApproaching(), MSLink::setApproaching(), MSVehicle::setApproachingForAllLinks(), NBNodeCont::setAsTLControlled(), GNEJunction::setAttribute(), MSSimpleDriverState::setAwareness(), MSLane::setBidiLane(), MSEdge::setBidiLanes(), NLEdgeControlBuilder::setDefaultStopOffset(), MSBaseVehicle::setDepartAndArrivalEdge(), MSCalibrator::setFlow(), NBEdge::setGeometry(), MSBaseVehicle::setJunctionModelParameter(), MSTransportable::setJunctionModelParameter(), MSAbstractLaneChangeModel::setManeuverDist(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), MSDevice_Battery::setMaximumChargeRate(), NBEdge::setNodeBorder(), MSLane::setOpposite(), MSLCM_SL2015::setOwnState(), MSDevice_ToC::setParameter(), MSActuatedTrafficLightLogic::setParameter(), MSSimpleTrafficLightLogic::setParameter(), NEMALogic::setParameter(), MSCFModel_CACC::setParameter(), MSCFModel_CC::setParameter(), MSLane::setPartialOccupation(), NBEdgePriorityComputer::setPriorityJunctionPriorities(), libsumo::Helper::setRemoteControlled(), libsumo::Helper::setRemoteControlled(), MSLink::setRequestInformation(), LIBSUMO_NAMESPACE::Vehicle::setRoute(), LIBSUMO_NAMESPACE::Vehicle::setRouteID(), MSDevice_Battery::setStoppingThreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), MSStageDriving::setVehicle(), MSOverheadWire::setVoltage(), NBEdge::shiftPositionAtNode(), MSLCM_SL2015::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSVehicle::slowDownForSchedule(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSCFModel_EIDM::stopSpeed(), MSRailSignal::storeTraCIVehicles(), MSLane::succLinkSec(), LIBSUMO_NAMESPACE::TrafficLight::swapConstraints(), MSDispatch::swappedRunning(), MSDevice_ToC::switchHolderType(), GNETLSEditorFrame::TLSPrograms::switchProgram(), GUITrafficLightLogicWrapper::switchTLSLogic(), MSDevice_StationFinder::teleportToChargingStation(), MELoop::teleportVehicle(), MSDevice_ToC::ToCPreparationStep(), libsumo::Helper::TransportableStateListener::transportableStateChanged(), TraCIServer::transportableStateChanged(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSTriggeredRerouter::triggerRouting(), MSDevice_ToC::triggerUpwardToC(), MSTransportable::tripInfoOutput(), MSPerson::MSPersonStage_Access::tripInfoOutput(), METriggeredCalibrator::tryEmit(), MSPModel_JuPedSim::tryPedestrianInsertion(), MSSOTLTrafficLightLogic::trySwitch(), MSActuatedTrafficLightLogic::trySwitch(), NEMALogic::trySwitch(), MSStopOut::unloadedContainers(), MSStopOut::unloadedPersons(), MSPModel_Interacting::unregisterCrossingApproach(), MSDevice_SSM::update(), MSSimpleDriverState::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), MSVehicle::updateBestLanes(), MSLCHelper::updateBlockerLength(), MSLCM_SL2015::updateCFRelated(), MSDevice_StationFinder::updateChargeLimit(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffset(), MSRailSignal::updateCurrentPhase(), MSVehicle::updateDriveItems(), MSDevice_SSM::updateEncounter(), MSLCM_SL2015::updateExpectedSublaneSpeeds(), MSVehicle::updateFurtherLanes(), MSLCM_SL2015::updateGaps(), GNENetHelper::AttributeCarriers::updateJunctionID(), MSDevice_Taxi::updateMove(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSVehicle::Influencer::updateRemoteControlRoute(), MSDispatch::updateReservationFromPos(), 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(), MSFCDExport::write(), MSElecHybridExport::write(), MSEmissionExport::write(), MSBatteryExport::write(), MSRailSignalConstraint_Predecessor::write(), MSElecHybridExport::writeAggregated(), MSLink::writeApproaching(), MSDriveWay::writeBlocks(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), MSDriveWay::writeDepatureBlocks(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), MSRoute::writeEdgeIDs(), NWWriter_XML::writeEdgesAndConnections(), MSEmissionExport::writeEmissions(), 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(), MSFullExport::writePersons(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_SUMO::writeRoundabout(), NWWriter_OpenDrive::writeSignals(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_SUMO::writeTrafficLight(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), MSXMLRawOut::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSXMLRawOut::writeVehicle(), MSAmitranTrajectories::writeVehicle(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), MSLaneChanger::yieldToDeadlockOncoming(), MSLaneChanger::yieldToOppositeWaiting(), MSCalibrator::~MSCalibrator(), MSDevice_Transportable::~MSDevice_Transportable(), MSLaneSpeedTrigger::~MSLaneSpeedTrigger(), MSTriggeredRerouter::~MSTriggeredRerouter(), NLEdgeControlBuilder::~NLEdgeControlBuilder(), 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 66 of file Named.h.

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSDriveWay::addSidings(), MSLaneChanger::avoidDeadlock(), MSVehicle::brakeForOverlap(), NLEdgeControlBuilder::build(), MSDriveWay::canUseSiding(), MSLaneChanger::changeOpposite(), MSLaneChanger::checkChangeOpposite(), MSDriveWay::checkFlanks(), MSVehicle::checkReversal(), MSVehicle::checkRewindLinkLanes(), MSTriggeredRerouter::checkStopSwitch(), AFRouter< E, N, V, M >::compute(), AStarRouter< E, V, M >::compute(), DijkstraRouter< E, V >::compute(), AFBuild< E, N, V, M >::computeArcFlagsAux(), AFCentralizedSPTree< E, N, V >::computeCentralizedSPTree(), NBNode::computeLanes2Lanes(), NBOwnTLDef::computeLogicAndConts(), Node2EdgeRouter< E, N, V, M >::computeNode2Edge(), Node2EdgeRouter< E, N, V, M >::computeNode2Edges(), MSDriveWay::conflictLaneOccupied(), NBPTLineCont::constructRoute(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSVehicle::enterLaneAtLaneChange(), MSVehicle::executeMove(), NBRailwayTopologyAnalyzer::extendDirectionPriority(), NBPTLineCont::findWay(), MSDriveWay::foeDriveWayOccupied(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), 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(), MSDriveWay::hasLinkConflict(), MSCFModel_IDM::insertionFollowSpeed(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToString(), joinNamedToStringSorting(), 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(), MSDriveWay::notifyEnter(), MSDevice_Bluelight::notifyLeave(), MSDriveWay::notifyLeave(), MSDriveWay::notifyLeaveBack(), MSVehicle::Influencer::postProcessRemoteControl(), MSVehicle::processNextStop(), MSBaseVehicle::replaceRoute(), MSBaseVehicle::reroute(), MSStoppingPlaceRerouter::rerouteStoppingPlace(), MSLaneChanger::resolveDeadlock(), MSLCM_SL2015::slowDownForBlocked(), MSLCM_LC2013::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), toString(), toString(), MSTriggeredRerouter::triggerRouting(), MSVehicle::updateBestLanes(), MSLCHelper::updateBlockerLength(), MSAbstractLaneChangeModel::updateShadowLane(), MSPModel_Striping::PState::walk(), and MSLaneChanger::yieldToDeadlockOncoming().

◆ getIndex()

int MESegment::getIndex ( ) const
inlineinherited

Returns the running index of the segment in the edge (0 is the most upstream).

Returns
the running index of the segment in the edge

Definition at line 238 of file MESegment.h.

References MESegment::myIndex.

Referenced by MELoop::changeSegment(), GUIEdge::getParameterWindow(), GUIEdge::getPopUpMenu(), MEVehicle::getPositionOnLane(), MEVehicle::getRightSideOnEdge(), MEVehicle::getSegmentIndex(), MEVehicle::loadState(), MSInductLoop::MSInductLoop(), MEVehicle::saveState(), MELoop::teleportVehicle(), MEVehicle::updateDetectorForWriting(), and MEVehicle::updateDetectors().

Here is the caller graph for this function:

◆ getLastHeadwaySeconds()

double MESegment::getLastHeadwaySeconds ( ) const
inlineinherited

get the last headway time in seconds

Definition at line 396 of file MESegment.h.

References MESegment::myLastHeadway, and STEPS2TIME.

Referenced by GUIEdge::getParameterWindow().

Here is the caller graph for this function:

◆ getLength()

double MESegment::getLength ( ) const
inlineinherited

◆ getLink()

MSLink * MESegment::getLink ( const MEVehicle veh,
bool  tlsPenalty = false 
) const
inherited

Returns the link the given car will use when passing the next junction.

This returns non-zero values only for the last segment and only if junction control is enabled.

Parameters
[in]vehThe vehicle in question
[in]tlsPenaltyWhether the link should be returned for computing tlsPenalty
Returns
The link to use or 0 without junction control

Definition at line 482 of file MESegment.cpp.

References MSEdge::getLanes(), MSLane::getLinkCont(), MEVehicle::getQueIndex(), MESegment::myEdge, MESegment::myJunctionControl, MESegment::PARKING_QUEUE, and MSBaseVehicle::succEdge().

Referenced by MELoop::checkCar(), MESegment::getLinkPenalty(), MESegment::isOpen(), MESegment::loadState(), MESegment::receive(), MEVehicle::replaceRoute(), MESegment::send(), MESegment::setSpeedForQueue(), MESegment::updateBlockTime(), and updateBlockTime().

Here is the caller graph for this function:

◆ getLinkPenalty()

SUMOTime MESegment::getLinkPenalty ( const MEVehicle veh) const
inherited

Returns the penalty time for passing a link (if using gMesoTLSPenalty > 0 or gMesoMinorPenalty > 0)

Parameters
[in]vehThe vehicle in question
Returns
The time penalty

Definition at line 902 of file MESegment.cpp.

References MESegment::getLink(), MSLink::getMesoTLSPenalty(), MSGlobals::gMesoLimitedJunctionControl, MSLink::havePriority(), MSLink::isTLSControlled(), MESegment::limitedControlOverride(), MESegment::myCheckMinorPenalty, MESegment::myMinorPenalty, and MESegment::myTLSPenalty.

Referenced by MEVehicle::getCurrentLinkPenaltySeconds(), and MESegment::receive().

Here is the caller graph for this function:

◆ getMeanSpeed() [1/2]

double MESegment::getMeanSpeed ( ) const
inlineinherited

wrapper to satisfy the FunctionBinding signature

Definition at line 309 of file MESegment.h.

References MESegment::getMeanSpeed().

Referenced by MESegment::getFlow(), MESegment::getMeanSpeed(), GUIEdge::getParameterWindow(), and MESegment::hasSpaceForInsertion().

Here is the caller graph for this function:

◆ getMeanSpeed() [2/2]

double MESegment::getMeanSpeed ( bool  useCache) const
inherited

Returns the average speed of vehicles on the segment in meters per second. If there is no vehicle on the segment it returns the maximum allowed speed.

Parameters
[in]useCachewhether to use a cached value if available
Note
this value is cached in myMeanSpeed. Since caching only takes place once every simstep there is a potential for side-influences (i.e. GUI calls to this method, ...) For that reason the simulation logic doesn't use the cache. This shouldn't matter much for speed since it is only used during initializsation of vehicles onto the segment.
Returns
the average speed on the segment

Definition at line 410 of file MESegment.cpp.

References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSEdge::getSpeedLimit(), MESegment::myEdge, MESegment::myJamThreshold, MESegment::myLastMeanSpeedUpdate, MESegment::myMeanSpeed, MESegment::myQueues, MESegment::myTau_ff, MESegment::myTau_jf, and MESegment::tauWithVehLength().

Referenced by METriggeredCalibrator::invalidJam().

Here is the caller graph for this function:

◆ getMinimumHeadwayTime()

SUMOTime MESegment::getMinimumHeadwayTime ( ) const
inlineinherited

return the minimum headway-time with which vehicles may enter or leave this segment

Definition at line 479 of file MESegment.h.

References MESegment::myTau_ff.

Referenced by METriggeredCalibrator::maximumInflow().

Here is the caller graph for this function:

◆ getMinTauWithVehLength()

SUMOTime MESegment::getMinTauWithVehLength ( double  lengthWithGap,
double  vehicleTau 
) const
inlineinherited

convert net time gap (leader back to follower front) to gross time gap (leader front to follower front)

Definition at line 501 of file MESegment.h.

References MESegment::myTau_ff, and MESegment::myTau_length.

◆ getNextInsertionTime()

SUMOTime MESegment::getNextInsertionTime ( SUMOTime  earliestEntry) const
inherited

return a time after earliestEntry at which a vehicle may be inserted at full speed

Definition at line 465 of file MESegment.cpp.

References MSEdge::getSpeedLimit(), MAX2(), MAX3(), MESegment::myEdge, MESegment::myLength, MESegment::myQueues, and TIME2STEPS.

Referenced by METriggeredCalibrator::execute().

Here is the caller graph for this function:

◆ getNextSegment()

MESegment * MESegment::getNextSegment ( ) const
inlineinherited

Returns the following segment on the same edge (0 if it is the last).

Returns
the following segment on the same edge (0 if it is the last)

Definition at line 246 of file MESegment.h.

References MESegment::myNextSegment.

Referenced by MELoop::changeSegment(), MELoop::getSegmentForEdge(), MSIdling_Stop::idle(), MSMeanData::init(), MSEdge::insertVehicle(), MEVehicle::loadState(), MSRouteProbe::MSRouteProbe(), MSStateHandler::myStartElement(), MELoop::nextSegment(), MSMeanData::resetOnly(), MSLane::setMaxSpeed(), MELoop::teleportVehicle(), MSMeanData::writeAggregated(), MSMeanData::writeAggregatedTAZ(), MSMeanData::writeEdge(), MSXMLRawOut::writeEdge(), and MELoop::~MELoop().

Here is the caller graph for this function:

◆ getQueue()

const std::vector< MEVehicle * > & MESegment::getQueue ( int  index) const
inlineinherited

Returns the cars in the queue with the given index for visualization.

Returns
the Queue (XXX not thread-safe!)

Definition at line 224 of file MESegment.h.

References MESegment::myQueues.

Referenced by GUIMEVehicle::getCenteringBoundary().

Here is the caller graph for this function:

◆ getQueueBlockTime()

SUMOTime MESegment::getQueueBlockTime ( int  index) const
inlineinherited

Definition at line 229 of file MESegment.h.

References MESegment::myQueues.

Referenced by MSInductLoop::getLastDetectionTime().

Here is the caller graph for this function:

◆ getRelativeJamThreshold()

double MESegment::getRelativeJamThreshold ( ) const
inlineinherited

Returns the relative occupany of the segment (percentage of road used)) at which the segment is considered jammed.

Returns
the jam threshold of the segment in percent

Definition at line 289 of file MESegment.h.

References MESegment::myCapacity, and MESegment::myJamThreshold.

Referenced by GUIEdge::getParameterWindow().

Here is the caller graph for this function:

◆ getRelativeOccupancy()

double MESegment::getRelativeOccupancy ( ) const
inlineinherited

Returns the relative occupany of the segment (percentage of road used))

Returns
the occupany of the segment in percent

Definition at line 281 of file MESegment.h.

References MESegment::getBruttoOccupancy(), and MESegment::myCapacity.

Referenced by GUIEdge::getParameterWindow().

Here is the caller graph for this function:

◆ getTauJJ()

SUMOTime MESegment::getTauJJ ( double  nextQueueSize,
double  nextQueueCapacity,
double  nextJamThreshold 
) const
protectedinherited

Definition at line 608 of file MESegment.cpp.

References DEFAULT_VEH_LENGTH_WITH_GAP, MAX2(), MESegment::myTau_jf, MESegment::myTau_jj, STEPS2TIME, MESegment::tauWithVehLength(), and TIME2STEPS.

Referenced by MESegment::updateBlockTime().

Here is the caller graph for this function:

◆ getVehicles()

std::vector< const MEVehicle * > MESegment::getVehicles ( ) const
inherited

returns all vehicles (for debugging)

Definition at line 875 of file MESegment.cpp.

References MESegment::myQueues.

Referenced by MESegment::prepareDetectorForWriting().

Here is the caller graph for this function:

◆ getWaitingSeconds()

double MESegment::getWaitingSeconds ( ) const
inherited

Get the waiting time for vehicles in all queues.

Definition at line 925 of file MESegment.cpp.

References MESegment::myQueues.

◆ hasBlockedLeader()

bool MESegment::hasBlockedLeader ( ) const
protectedinherited

whether a leader in any queue is blocked

Definition at line 885 of file MESegment.cpp.

References MESegment::myQueues.

Referenced by MESegment::hasSpaceForInsertion().

Here is the caller graph for this function:

◆ hasSpaceFor()

SUMOTime MESegment::hasSpaceFor ( const MEVehicle *const  veh,
const SUMOTime  entryTime,
int &  qIdx,
const bool  init = false 
) const
inherited

Returns whether the given vehicle would still fit into the segment.

Parameters
[in]vehThe vehicle to check space for
[in]entryTimeThe time at which the vehicle wants to enter
[out]qIdxThe index of the queue the vehicle should choose
[in]initwhether the check is done at insertion time
Returns
the earliest time a vehicle may be added to this segment

Definition at line 314 of file MESegment.cpp.

References MESegment::Queue::allows(), MSBaseVehicle::getEdge(), MESegment::Queue::getEntryBlockTime(), MSBaseVehicle::getInsertionChecks(), MSVehicleType::getLengthWithGap(), MESegment::Queue::getOccupancy(), MSBaseVehicle::getVClass(), MSBaseVehicle::getVehicleType(), MESegment::hasSpaceForInsertion(), MIN2(), MESegment::myEdge, MESegment::myFollowerMap, MESegment::myNextSegment, MESegment::myNumVehicles, MESegment::myQueueCapacity, MESegment::myQueues, NONE, MESegment::Queue::size(), MSBaseVehicle::succEdge(), and SUMOTime_MAX.

Referenced by MELoop::changeSegment(), MESegment::initialise(), and MSEdge::insertVehicle().

Here is the caller graph for this function:

◆ hasSpaceForInsertion()

bool MELSegment::hasSpaceForInsertion ( const Queue q,
int  qIdx,
double  newOccupancy,
SUMOTime  entryTime 
) const
overrideprotectedvirtual

check jam-avoidance constraints during insertion

Reimplemented from MESegment.

Definition at line 117 of file MELSegment.cpp.

References DEFAULT_VEH_LENGTH_WITH_GAP, MESegment::Queue::getOccupancy(), myGapTimes, and MESegment::myQueueCapacity.

◆ initialise()

bool MESegment::initialise ( MEVehicle veh,
SUMOTime  time 
)
inherited

Inserts (emits) vehicle into the segment.

Parameters
[in]vehThe vehicle to emit
[in]timeThe emission time
Returns
Whether the emission was successful

Definition at line 371 of file MESegment.cpp.

References SUMOVehicleParameter::departProcedure, MSDriveWay::foeDriveWayOccupied(), MSGlobals::gCheckRoutes, MSDriveWay::getDepartureDriveway(), Named::getID(), MSBaseVehicle::getInsertionChecks(), MSEdge::getLanes(), MSBaseVehicle::getParameter(), MSEdge::getPermissions(), MSBaseVehicle::getVClass(), MESegment::hasSpaceFor(), MSBaseVehicle::hasValidRoute(), MSBaseVehicle::isRail(), isRailwayOrShared(), MSRailSignalControl::isSignalized(), MESegment::myEdge, NONE, MESegment::receive(), SPLIT, and TLF.

Referenced by MSEdge::insertVehicle(), and METriggeredCalibrator::tryEmit().

Here is the caller graph for this function:

◆ initSegment()

◆ isInvalid()

static bool MESegment::isInvalid ( const MESegment segment)
inlinestaticinherited

whether the given segment is 0 or encodes vaporization

Definition at line 457 of file MESegment.h.

References MESegment::myVaporizationTarget.

Referenced by MELoop::changeSegment(), MEVehicle::saveState(), and MESegment::send().

Here is the caller graph for this function:

◆ isOpen()

bool MESegment::isOpen ( const MEVehicle veh) const
inherited

Returns whether the vehicle may use the next link.

In case of disabled junction control it returns always true.

Parameters
[in]vehThe vehicle in question
Returns
Whether it may pass to the next segment

Definition at line 511 of file MESegment.cpp.

References DEBUG_COND, DEBUG_COND2, MEVehicle::estimateLeaveSpeed(), gDebugFlag1, MSVehicleType::getCarFollowModel(), MEVehicle::getEventTime(), Named::getID(), Named::getIDSecure(), MSBaseVehicle::getImpatience(), MSVehicleType::getLengthWithGap(), MESegment::getLink(), MSCFModel::getMaxDecel(), MEVehicle::getSpeed(), MSBaseVehicle::getVehicleType(), MEVehicle::getWaitingTime(), MSLink::havePriority(), MESegment::limitedControlOverride(), MESegment::myTLSPenalty, MSLink::opened(), and SIMTIME.

Referenced by MEVehicle::mayProceed().

Here is the caller graph for this function:

◆ jamThresholdForSpeed()

double MESegment::jamThresholdForSpeed ( double  speed,
double  jamThresh 
) const
protectedinherited

compute jam threshold for the given speed and jam-threshold option

Definition at line 243 of file MESegment.cpp.

References DEBUG_COND, DEFAULT_VEH_LENGTH_WITH_GAP, Named::getID(), MESegment::myLength, MESegment::myTau_ff, STEPS2TIME, and MESegment::tauWithVehLength().

Referenced by MESegment::hasSpaceForInsertion(), and MESegment::recomputeJamThreshold().

Here is the caller graph for this function:

◆ limitedControlOverride()

bool MESegment::limitedControlOverride ( const MSLink link) const
protectedinherited

whether the given link may be passed because the option meso-junction-control.limited is set

Definition at line 553 of file MESegment.cpp.

References MESegment::getBruttoOccupancy(), MSLane::getEdge(), MSLink::getLane(), MELoop::getSegmentForEdge(), MSGlobals::gMesoLimitedJunctionControl, MSGlobals::gMesoNet, MSEdge::isRoundabout(), and MESegment::myJamThreshold.

Referenced by MESegment::getLinkPenalty(), and MESegment::isOpen().

Here is the caller graph for this function:

◆ loadState()

void MESegment::loadState ( const std::vector< SUMOVehicle * > &  vehs,
const SUMOTime  blockTime,
const SUMOTime  entryBlockTime,
const int  queIdx 
)
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 segment. Then, the internal queues that store vehicles dependant to their next edge are filled the same way. Then, the departure of last vehicles onto the next edge are restored.

Parameters
[in]vehsThe vehicles for the current que
[in]blockTimeThe time the last vehicle left the que
[in]queIdxThe index of the current que
Todo:

What about throwing an IOError?

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

Definition at line 849 of file MESegment.cpp.

References MELoop::addLeaderCar(), MESegment::addReminders(), MSVehicleType::getLengthWithGap(), MESegment::getLink(), MESegment::Queue::getModifiableVehicles(), MESegment::Queue::getOccupancy(), MEVehicle::getQueIndex(), MEVehicle::getSegment(), MESegment::Queue::getVehicles(), MSBaseVehicle::getVehicleType(), MSGlobals::gMesoNet, MSEdge::isInternal(), MIN2(), MESegment::myEdge, MESegment::myNumVehicles, MESegment::myQueueCapacity, MESegment::myQueues, MESegment::Queue::setBlockTime(), MESegment::Queue::setEntryBlockTime(), MESegment::Queue::setOccupancy(), MEVehicle::setSegment(), and MESegment::Queue::size().

Referenced by MSStateHandler::myStartElement().

Here is the caller graph for this function:

◆ newArrival()

SUMOTime MESegment::newArrival ( const MEVehicle *const  v,
double  newSpeed,
SUMOTime  currentTime 
)
protectedinherited

compute the new arrival time when switching speed

Definition at line 778 of file MESegment.cpp.

References MEVehicle::getLastEntryTime(), MEVehicle::getSpeed(), MAX2(), MESO_MIN_SPEED, MIN2(), MESegment::myLength, STEPS2TIME, and TIME2STEPS.

Referenced by MESegment::setSpeedForQueue().

Here is the caller graph for this function:

◆ numQueues()

int MESegment::numQueues ( ) const
inlineinherited

return the number of queues

Definition at line 218 of file MESegment.h.

References MESegment::myQueues.

Referenced by MSInductLoop::getLastDetectionTime(), GUIEdge::getParameterWindow(), MSStateHandler::myStartElement(), and MSInductLoop::notifyEnter().

Here is the caller graph for this function:

◆ operator=()

MELSegment & MELSegment::operator= ( const MELSegment )
private

Invalidated assignment operator.

◆ overrideTLSPenalty()

void MESegment::overrideTLSPenalty ( )
inlineinherited

whether the traffic light should use normal junction control despite penalty options

Definition at line 496 of file MESegment.h.

References MESegment::myTLSPenalty.

Referenced by MSTrafficLightLogic::initMesoTLSPenalties().

Here is the caller graph for this function:

◆ overtake()

bool MESegment::overtake ( )
protectedinherited

Definition at line 637 of file MESegment.cpp.

References MESegment::getBruttoOccupancy(), MESegment::myCapacity, MESegment::myOvertaking, and RandHelper::rand().

Referenced by MESegment::receive().

Here is the caller graph for this function:

◆ prepareDetectorForWriting()

void MESegment::prepareDetectorForWriting ( MSMoveReminder data,
int  queueIndex = -1 
)
inherited

Removes a data collector for a detector from this segment.

Parameters
[in]dataThe data collector to remove
Note
: currently not used

Updates data of a detector for one or all vehicle queues

Parameters
[in]dataThe detector data to update
[in]queueIndexThe queue (aka lane) to use, -1 means all

Definition at line 291 of file MESegment.cpp.

References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MESegment::getVehicles(), MAX2(), MESegment::myQueues, MESegment::myTau_ff, and MESegment::tauWithVehLength().

Referenced by METriggeredCalibrator::execute(), MSMeanData::init(), MSMeanData::resetOnly(), MSMeanData::writeAggregated(), MSMeanData::writeAggregatedTAZ(), MSMeanData::writeEdge(), and MEInductLoop::writeXMLOutput().

Here is the caller graph for this function:

◆ receive()

void MESegment::receive ( MEVehicle veh,
const int  qIdx,
SUMOTime  time,
const bool  isDepart = false,
const bool  isTeleport = false,
const bool  newEdge = false 
)
inherited

Adds the vehicle to the segment, adapting its parameters.

Parameters
[in]vehThe vehicle in question
[in]timethe leave time
[in]isDepartwhether the vehicle just departed
Todo:
Isn't always time == veh->getEventTime?

Definition at line 651 of file MESegment.cpp.

References MSBaseVehicle::activateReminders(), MELoop::addLeaderCar(), MESegment::addReminders(), MSEdge::addWaiting(), MEVehicle::checkStop(), MESegment::Queue::getBlockTime(), MSVehicleType::getCarFollowModel(), MESegment::getEdge(), MSBaseVehicle::getEdge(), MEVehicle::getEventTime(), MSCFModel::getHeadwayTime(), MSNet::getInstance(), MSEdge::getLanes(), MSVehicleType::getLengthWithGap(), MESegment::getLink(), MESegment::getLinkPenalty(), MESegment::Queue::getModifiableVehicles(), MESegment::Queue::getOccupancy(), MEVehicle::getSpeed(), MSNet::getVehicleControl(), MSBaseVehicle::getVehicleType(), MSGlobals::gMesoNet, MEVehicle::hasArrived(), MSEdge::invalidateMesoCache(), MSEdge::isNormal(), MSBaseVehicle::isParking(), MSBaseVehicle::isStopped(), MSEdge::isVaporizing(), MSEdge::lock(), MAX2(), MESO_MIN_SPEED, MIN2(), MEVehicle::moveRoutePointer(), MESegment::myEdge, MESegment::myLength, MESegment::myNumVehicles, MESegment::myQueueCapacity, MESegment::myQueues, MESegment::myTau_ff, MSMoveReminder::NOTIFICATION_ARRIVED, MSMoveReminder::NOTIFICATION_DEPARTED, MSMoveReminder::NOTIFICATION_JUNCTION, MSMoveReminder::NOTIFICATION_SEGMENT, MSMoveReminder::NOTIFICATION_VAPORIZED_VAPORIZER, MSBaseVehicle::onDepart(), MESegment::overtake(), MESegment::PARKING_QUEUE, MELoop::removeLeaderCar(), MSVehicleControl::scheduleVehicleRemoval(), MEVehicle::setBlockTime(), MESegment::Queue::setEntryBlockTime(), MEVehicle::setEventTime(), MEVehicle::setLastEntryTime(), MESegment::Queue::setOccupancy(), MEVehicle::setSegment(), SUMOTime_MAX, MESegment::tauWithVehLength(), TIME2STEPS, MSEdge::unlock(), and MEVehicle::updateDetectors().

Referenced by MELoop::changeSegment(), and MESegment::initialise().

Here is the caller graph for this function:

◆ recomputeJamThreshold()

void MESegment::recomputeJamThreshold ( double  jamThresh)
protectedinherited

compute a value for myJamThreshold if jamThresh is negative, compute a value which allows free flow at mySpeed interpret jamThresh as the relative occupation at which jam starts

Definition at line 228 of file MESegment.cpp.

References MESegment::DO_NOT_PATCH_JAM_THRESHOLD, MSEdge::getSpeedLimit(), MESegment::jamThresholdForSpeed(), MESegment::myCapacity, MESegment::myEdge, and MESegment::myJamThreshold.

Referenced by MESegment::initSegment(), and MESegment::setSpeed().

Here is the caller graph for this function:

◆ remainingVehicleCapacity()

int MESegment::remainingVehicleCapacity ( const double  vehLength) const
inlineinherited

return the remaining physical space on this segment

Definition at line 465 of file MESegment.h.

References MESegment::myQueueCapacity, and MESegment::myQueues.

Referenced by METriggeredCalibrator::remainingVehicleCapacity().

Here is the caller graph for this function:

◆ removeCar()

MEVehicle * MESegment::removeCar ( MEVehicle v,
SUMOTime  leaveTime,
const MSMoveReminder::Notification  reason 
)
inherited

Removes the given car from the edge's que.

Parameters
[in]vThe vehicle to remove
[in]leaveTimeThe time at which the vehicle is leaving the que
[in]reasonThe reason for removing to send to reminders
Returns
The next first vehicle to add to the net's que

Definition at line 451 of file MESegment.cpp.

References MEVehicle::getEventTime(), MEVehicle::getQueIndex(), MSEdge::invalidateMesoCache(), MSEdge::lock(), MESegment::myEdge, MESegment::myNumVehicles, MESegment::myQueues, MESegment::Queue::remove(), MSEdge::unlock(), and MEVehicle::updateDetectors().

Referenced by MESegment::send().

Here is the caller graph for this function:

◆ resetCachedSpeeds()

void MESegment::resetCachedSpeeds ( )
inherited

reset myLastMeanSpeedUpdate

Definition at line 436 of file MESegment.cpp.

References MESegment::myLastMeanSpeedUpdate, and SUMOTime_MIN.

◆ saveState()

void MESegment::saveState ( OutputDevice out) const
inherited

Saves the state of this segment into the given stream.

Some internal values which must be restored are saved as well as ids of the vehicles stored in internal queues and the last departures of connected edges.

Parameters
[in,filled]out The (possibly binary) device to write the state into
Todo:
What about throwing an IOError?

Definition at line 819 of file MESegment.cpp.

References OutputDevice::closeTag(), Named::getID(), MESegment::myQueues, OutputDevice::openTag(), SUMO_ATTR_BLOCKTIME, SUMO_ATTR_ID, SUMO_ATTR_TIME, SUMO_ATTR_VALUE, SUMO_TAG_SEGMENT, SUMO_TAG_VIEWSETTINGS_VEHICLES, and OutputDevice::writeAttr().

◆ send()

void MELSegment::send ( MEVehicle veh,
MESegment *const  next,
const int  nextQIdx,
SUMOTime  time,
const MSMoveReminder::Notification  reason 
)
overridevirtual

Removes the vehicle from the segment, adapting its parameters.

Parameters
[in]vehThe vehicle in question
[in]nextThe subsequent segment for delay calculation
[in]timethe leave time
Todo:
Isn't always time == veh->getEventTime?

Reimplemented from MESegment.

Definition at line 92 of file MELSegment.cpp.

References DEFAULT_VEH_LENGTH_WITH_GAP, MEVehicle::getQueIndex(), myGapTimes, MESegment::myLength, MESegment::myTau_jj, and MESegment::send().

◆ setID()

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

resets the id

Parameters
[in]newIDThe new id of this object

Reimplemented in MSBaseVehicle, NBLoadedSUMOTLDef, and MSTransportable.

Definition at line 81 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:

◆ setSpeed()

void MESegment::setSpeed ( double  newSpeed,
SUMOTime  currentTime,
double  jamThresh = DO_NOT_PATCH_JAM_THRESHOLD,
int  qIdx = -1 
)
inherited

reset mySpeed and patch the speed of all vehicles in it. Also set/recompute myJamThreshold

Parameters
[in]jamThreshfollows the semantic of option meso-jam-threshold

Definition at line 788 of file MESegment.cpp.

References MESegment::myQueues, MESegment::recomputeJamThreshold(), and MESegment::setSpeedForQueue().

Referenced by MSLane::setMaxSpeed().

Here is the caller graph for this function:

◆ setSpeedForQueue()

void MESegment::setSpeedForQueue ( double  newSpeed,
SUMOTime  currentTime,
SUMOTime  blockTime,
const std::vector< MEVehicle * > &  vehs 
)
protectedinherited

◆ tauWithVehLength()

SUMOTime MESegment::tauWithVehLength ( SUMOTime  tau,
double  lengthWithGap,
double  vehicleTau 
) const
inlineprotectedinherited

convert net time gap (leader back to follower front) to gross time gap (leader front to follower front)

Definition at line 531 of file MESegment.h.

References MESegment::myTau_length.

Referenced by MESegment::getMeanSpeed(), MESegment::getTauJJ(), MESegment::jamThresholdForSpeed(), MESegment::prepareDetectorForWriting(), MESegment::receive(), MESegment::setSpeedForQueue(), MESegment::updateBlockTime(), and updateBlockTime().

Here is the caller graph for this function:

◆ updateBlockTime()

◆ updateEntryBlockTime()

void MELSegment::updateEntryBlockTime ( SUMOTime  time)
overridevirtual

◆ updatePermissions()

void MESegment::updatePermissions ( )
inherited

called when permissions change due to Rerouter or TraCI

Definition at line 216 of file MESegment.cpp.

References MSEdge::getLanes(), MSEdge::getPermissions(), MESegment::myEdge, and MESegment::myQueues.

◆ vaporizeAnyCar()

bool MESegment::vaporizeAnyCar ( SUMOTime  currentTime,
const MSDetectorFileOutput filter 
)
inherited

tries to remove any car from this segment

Parameters
[in]currentTimethe current time
Returns
Whether vaporization was successful
Note
: cars removed via this method do NOT count as arrivals

Definition at line 737 of file MESegment.cpp.

References MELoop::changeSegment(), MSGlobals::gMesoNet, MESegment::myQueues, MESegment::myVaporizationTarget, MSMoveReminder::NOTIFICATION_VAPORIZED_CALIBRATOR, MELoop::removeLeaderCar(), and MSDetectorFileOutput::vehicleApplies().

Referenced by METriggeredCalibrator::execute().

Here is the caller graph for this function:

◆ writeVehicles()

void MESegment::writeVehicles ( OutputDevice of) const
inherited

Definition at line 441 of file MESegment.cpp.

References MESegment::myQueues, and MSXMLRawOut::writeVehicle().

Referenced by MSXMLRawOut::writeEdge().

Here is the caller graph for this function:

Field Documentation

◆ DO_NOT_PATCH_JAM_THRESHOLD

const double MESegment::DO_NOT_PATCH_JAM_THRESHOLD
staticinherited

Definition at line 52 of file MESegment.h.

Referenced by MESegment::recomputeJamThreshold().

◆ myCapacity

double MESegment::myCapacity = 0.
protectedinherited

The number of lanes represented by the queue * the length of the lane.

Definition at line 580 of file MESegment.h.

Referenced by MESegment::getCapacity(), MESegment::getRelativeJamThreshold(), MESegment::getRelativeOccupancy(), MESegment::initSegment(), MESegment::overtake(), and MESegment::recomputeJamThreshold().

◆ myCheckMinorPenalty

bool MESegment::myCheckMinorPenalty
protectedinherited

penalty for minor links

Definition at line 566 of file MESegment.h.

Referenced by MESegment::getLinkPenalty(), and MESegment::initSegment().

◆ myDummyParent

MSEdge MESegment::myDummyParent
staticprotectedinherited

Definition at line 602 of file MESegment.h.

◆ myEdge

◆ myFollowerMap

std::map<const MSEdge*, int> MESegment::myFollowerMap
protectedinherited

The follower edge to allowed que index mapping for multi queue segments.

Definition at line 595 of file MESegment.h.

Referenced by MESegment::hasSpaceFor(), and MESegment::MESegment().

◆ myGapTimes

std::vector<GapTimes> MELSegment::myGapTimes
private

Definition at line 83 of file MELSegment.h.

Referenced by hasSpaceForInsertion(), MELSegment(), send(), and updateEntryBlockTime().

◆ myID

std::string Named::myID
protectedinherited

The name of the object.

Definition at line 124 of file Named.h.

Referenced by MSDriveWay::addBidiFoes(), MSE2Collector::addDetectorToLanes(), MSDriveWay::addFoes(), MSDriveWay::addParallelFoes(), MSDriveWay::addReversalFoes(), MSDriveWay::addSwitchFoes(), RODFDetector::buildDestinationDistribution(), MSDriveWay::buildDriveWay(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), MSChargingStation::checkTotalPower(), NBNode::computeNodeShape(), NEMALogic::constructTimingAndPhaseDefs(), MSE2Collector::detectorUpdate(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), NEMALogic::getPhaseObj(), ROEdge::getStoredEffort(), GNEPOI::getSumoBaseObject(), GNEPoly::getSumoBaseObject(), MSLane::getSurroundingVehicles(), ROEdge::getTravelTime(), NBEdge::init(), MSSOTLTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), NEMALogic::init(), MSLane::isInsertionSuccess(), NBNode::NBNode(), NBNode::NBNode(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), NEMALogic::parseControllerType(), RORouteDef::preComputeCurrentRoute(), NBNode::reinit(), NBEdge::reinitNodes(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), NBEdge::setGeometry(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), Distribution_Parameterized::toStr(), MSChargingStation::writeAggregatedChargingStationOutput(), MSDriveWay::writeBlocks(), MSDriveWay::writeBlockVehicles(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSOverheadWire::writeOverheadWireSegmentOutput(), RODFDetector::writeSingleSpeedTrigger(), MSTractionSubstation::writeTractionSubstationOutput(), MEInductLoop::writeXMLOutput(), and MSE3Collector::writeXMLOutput().

◆ myIndex

const int MESegment::myIndex
protectedinherited

Running number of the segment in the edge.

Definition at line 554 of file MESegment.h.

Referenced by MESegment::getIndex().

◆ myJamThreshold

double MESegment::myJamThreshold
protectedinherited

The space (in m) which needs to be occupied before the segment is considered jammed.

Definition at line 586 of file MESegment.h.

Referenced by MESegment::getMeanSpeed(), MESegment::getRelativeJamThreshold(), MESegment::hasSpaceForInsertion(), MESegment::limitedControlOverride(), MESegment::recomputeJamThreshold(), and MESegment::updateBlockTime().

◆ myJunctionControl

bool MESegment::myJunctionControl
protectedinherited

Whether junction control is enabled.

Definition at line 570 of file MESegment.h.

Referenced by MESegment::getLink(), and MESegment::initSegment().

◆ myLastHeadway

SUMOTime MESegment::myLastHeadway
protectedinherited

the last headway

Definition at line 598 of file MESegment.h.

Referenced by MESegment::getLastHeadwaySeconds(), MESegment::updateBlockTime(), and updateBlockTime().

◆ myLastMeanSpeedUpdate

SUMOTime MESegment::myLastMeanSpeedUpdate
mutableprotectedinherited

the time at which myMeanSpeed was last updated

Definition at line 609 of file MESegment.h.

Referenced by MESegment::getMeanSpeed(), and MESegment::resetCachedSpeeds().

◆ myLength

const double MESegment::myLength
protectedinherited

◆ myMeanSpeed

double MESegment::myMeanSpeed
mutableprotectedinherited

the mean speed on this segment. Updated at event time or on demand

Definition at line 606 of file MESegment.h.

Referenced by MESegment::getMeanSpeed(), and MESegment::initSegment().

◆ myMinorPenalty

SUMOTime MESegment::myMinorPenalty
protectedinherited

Definition at line 567 of file MESegment.h.

Referenced by MESegment::getLinkPenalty(), and MESegment::initSegment().

◆ myNextSegment

MESegment* MESegment::myNextSegment
protectedinherited

The next segment of this edge, 0 if this is the last segment of this edge.

Definition at line 548 of file MESegment.h.

Referenced by MESegment::getNextSegment(), MESegment::hasSpaceFor(), and MESegment::initSegment().

◆ myNumVehicles

int MESegment::myNumVehicles
protectedinherited

The cached value for the number of vehicles.

Definition at line 592 of file MESegment.h.

Referenced by MESegment::getCarNumber(), MESegment::hasSpaceFor(), MESegment::loadState(), MESegment::receive(), and MESegment::removeCar().

◆ myOvertaking

bool MESegment::myOvertaking
protectedinherited

Whether overtaking is permitted on this segment.

Definition at line 573 of file MESegment.h.

Referenced by MESegment::initSegment(), and MESegment::overtake().

◆ myQueueCapacity

double MESegment::myQueueCapacity = 0.
protectedinherited

◆ myQueues

◆ myTau_ff

◆ myTau_fj

SUMOTime MESegment::myTau_fj
protectedinherited

Definition at line 560 of file MESegment.h.

Referenced by MESegment::initSegment(), and MESegment::updateBlockTime().

◆ myTau_jf

SUMOTime MESegment::myTau_jf
protectedinherited

◆ myTau_jj

SUMOTime MESegment::myTau_jj
protectedinherited

Definition at line 560 of file MESegment.h.

Referenced by MESegment::getTauJJ(), MESegment::initSegment(), and send().

◆ myTau_length

double MESegment::myTau_length
protectedinherited

Headway parameter for computing gross time headyway from net time headway, length and edge speed.

Definition at line 577 of file MESegment.h.

Referenced by MESegment::getMinTauWithVehLength(), MESegment::initSegment(), and MESegment::tauWithVehLength().

◆ myTLSPenalty

bool MESegment::myTLSPenalty
protectedinherited

◆ myVaporizationTarget

MESegment MESegment::myVaporizationTarget
staticprotectedinherited

Definition at line 603 of file MESegment.h.

Referenced by MESegment::isInvalid(), and MESegment::vaporizeAnyCar().

◆ OVERRIDE_TLS_PENALTIES

const std::string MESegment::OVERRIDE_TLS_PENALTIES
staticinherited

special param value

Definition at line 55 of file MESegment.h.

Referenced by NLJunctionControlBuilder::closeTrafficLightLogic(), and MSTrafficLightLogic::initMesoTLSPenalties().

◆ PARKING_QUEUE


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