Eclipse SUMO - Simulation of Urban MObility
MSRailSignal::LinkInfo Struct Reference

#include <MSRailSignal.h>

Collaboration diagram for MSRailSignal::LinkInfo:

Public Member Functions

DriveWaybuildDriveWay (MSRouteIterator first, MSRouteIterator end)
 construct a new driveway by searching along the given route until all block structures are found More...
 
DriveWaygetDriveWay (const SUMOVehicle *)
 retrieve an existing Driveway or construct a new driveway based on the vehicles route More...
 
std::string getID () const
 return id for this railsignal-link More...
 
 LinkInfo (MSLink *link)
 constructor More...
 
void reroute (SUMOVehicle *veh, const MSEdgeVector &occupied)
 try rerouting vehicle if reservation failed More...
 

Data Fields

std::vector< DriveWaymyDriveways
 all driveways immediately following this link More...
 
SUMOTime myLastRerouteTime
 
SUMOVehiclemyLastRerouteVehicle
 
MSLinkmyLink
 
bool myUniqueDriveWay
 whether there is only a single DriveWay following this link More...
 

Detailed Description

Definition at line 317 of file MSRailSignal.h.

Constructor & Destructor Documentation

◆ LinkInfo()

MSRailSignal::LinkInfo::LinkInfo ( MSLink link)

constructor

Definition at line 336 of file MSRailSignal.cpp.

References buildDriveWay(), MSLane::getEdge(), and MSLink::getLane().

Member Function Documentation

◆ buildDriveWay()

MSRailSignal::DriveWay & MSRailSignal::LinkInfo::buildDriveWay ( MSRouteIterator  first,
MSRouteIterator  end 
)

construct a new driveway by searching along the given route until all block structures are found

Definition at line 388 of file MSRailSignal.cpp.

References DEBUG_COND_LINKINFO, MSRailSignal::describeLinks(), MSLane::getBidiLane(), getID(), MSLink::getLaneBefore(), myDriveways, myLink, and toString().

Referenced by getDriveWay(), and LinkInfo().

◆ getDriveWay()

MSRailSignal::DriveWay & MSRailSignal::LinkInfo::getDriveWay ( const SUMOVehicle veh)

retrieve an existing Driveway or construct a new driveway based on the vehicles route

Definition at line 353 of file MSRailSignal.cpp.

References buildDriveWay(), MSRoute::end(), SUMOVehicle::getCurrentRouteEdge(), MSLane::getEdge(), MSLink::getLane(), SUMOVehicle::getRoute(), myDriveways, myLink, myUniqueDriveWay, and WRITE_WARNING.

◆ getID()

std::string MSRailSignal::LinkInfo::getID ( ) const

return id for this railsignal-link

Definition at line 347 of file MSRailSignal.cpp.

References Named::getID(), MSLink::getTLIndex(), MSLink::getTLLogic(), myLink, and toString().

Referenced by buildDriveWay(), and reroute().

◆ reroute()

Field Documentation

◆ myDriveways

std::vector<DriveWay> MSRailSignal::LinkInfo::myDriveways

all driveways immediately following this link

Definition at line 327 of file MSRailSignal.h.

Referenced by buildDriveWay(), getDriveWay(), and MSRailSignal::hasOncomingRailTraffic().

◆ myLastRerouteTime

SUMOTime MSRailSignal::LinkInfo::myLastRerouteTime

Definition at line 341 of file MSRailSignal.h.

Referenced by reroute().

◆ myLastRerouteVehicle

SUMOVehicle* MSRailSignal::LinkInfo::myLastRerouteVehicle

Definition at line 342 of file MSRailSignal.h.

Referenced by reroute().

◆ myLink

MSLink* MSRailSignal::LinkInfo::myLink

Definition at line 321 of file MSRailSignal.h.

Referenced by buildDriveWay(), getDriveWay(), and getID().

◆ myUniqueDriveWay

bool MSRailSignal::LinkInfo::myUniqueDriveWay

whether there is only a single DriveWay following this link

Definition at line 324 of file MSRailSignal.h.

Referenced by getDriveWay().


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