SUMO - Simulation of Urban MObility
MSTrafficLightLogic Class Referenceabstract

The parent class for traffic light logics. More...

#include <MSTrafficLightLogic.h>

Inheritance diagram for MSTrafficLightLogic:
Inheritance graph
Collaboration diagram for MSTrafficLightLogic:
Collaboration graph

Data Structures

class  SwitchCommand
 Class realising the switch between the traffic light phases. More...
 

Public Types

Structure definitions
typedef std::vector< MSPhaseDefinition * > Phases
 Definition of a list of phases, being the junction logic. More...
 
typedef std::vector< MSLink * > LinkVector
 Definition of the list of links that are subjected to this tls. More...
 
typedef std::vector< LinkVectorLinkVectorVector
 Definition of a list that holds lists of links that do have the same attribute. More...
 
typedef std::vector< MSLane * > LaneVector
 Definition of the list of arrival lanes subjected to this tls. More...
 
typedef std::vector< LaneVectorLaneVectorVector
 Definition of a list that holds lists of lanes that do have the same attribute. More...
 

Public Member Functions

void addTo (const StoringVisitor &cont) const
 Adds this object to the given container. More...
 
void clearParameter ()
 Clears the parameter map. More...
 
double getDouble (const std::string &key, const double defaultValue) const
 Returns the value for a given key converted to a double. More...
 
const std::string & getID () const
 Returns the id. More...
 
const std::map< std::string, std::string > & getMap () const
 Returns the inner key/value map. More...
 
const std::string getParameter (const std::string &key, const std::string &defaultValue="") const
 Returns the value for a given key. More...
 
virtual void init (NLDetectorBuilder &nb)
 Initialises the tls with information about incoming lanes. More...
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. More...
 
 MSTrafficLightLogic (MSTLLogicControl &tlcontrol, const std::string &id, const std::string &programID, SUMOTime delay, const std::map< std::string, std::string > &parameters)
 Constructor. More...
 
void setID (const std::string &newID)
 resets the id More...
 
void setParameter (const std::string &key, const std::string &value)
 Sets a parameter. More...
 
void unsetParameter (const std::string &key)
 Removes a parameter. More...
 
void updateParameter (const std::map< std::string, std::string > &mapArg)
 Adds or updates all given parameters from the map. More...
 
void writeParams (OutputDevice &out) const
 
virtual ~MSTrafficLightLogic ()
 Destructor. More...
 
Handling of controlled links
virtual void addLink (MSLink *link, MSLane *lane, int pos)
 Adds a link on building. More...
 
virtual void adaptLinkInformationFrom (const MSTrafficLightLogic &logic)
 Applies information about controlled links and lanes from the given logic. More...
 
std::map< MSLink *, LinkStatecollectLinkStates () const
 Returns the (uncontrolled) states of the controlled links. More...
 
void resetLinkStates (const std::map< MSLink *, LinkState > &vals) const
 Resets the states of controlled links. More...
 
Switching and setting current rows
virtual SUMOTime trySwitch ()=0
 Switches to the next phase. More...
 
bool setTrafficLightSignals (SUMOTime t) const
 Applies the current signal states to controlled links. More...
 
Static Information Retrieval
const std::string & getProgramID () const
 Returns this tl-logic's id. More...
 
const LaneVectorVectorgetLaneVectors () const
 Returns the list of lists of all lanes controlled by this tls. More...
 
const LaneVectorgetLanesAt (int i) const
 Returns the list of lanes that are controlled by the signals at the given position. More...
 
const LinkVectorVectorgetLinks () const
 Returns the list of lists of all affected links. More...
 
const LinkVectorgetLinksAt (int i) const
 Returns the list of links that are controlled by the signals at the given position. More...
 
int getLinkIndex (const MSLink *const link) const
 Returns the index of the given link. More...
 
virtual int getPhaseNumber () const =0
 Returns the number of phases. More...
 
virtual const PhasesgetPhases () const =0
 Returns the phases of this tls program. More...
 
virtual const MSPhaseDefinitiongetPhase (int givenstep) const =0
 Returns the definition of the phase from the given position within the plan. More...
 
virtual const std::string getLogicType () const =0
 Returns the type of the logic as a string. More...
 
Dynamic Information Retrieval
virtual int getCurrentPhaseIndex () const =0
 Returns the current index within the program. More...
 
virtual const MSPhaseDefinitiongetCurrentPhaseDef () const =0
 Returns the definition of the current phase. More...
 
SUMOTime getDefaultCycleTime () const
 Returns the cycle time (in ms) More...
 
SUMOTime getNextSwitchTime () const
 Returns the assumed next switch time. More...
 
SUMOTime getSpentDuration () const
 Returns the duration spent in the current phase. More...
 
Conversion between time and phase
virtual SUMOTime getPhaseIndexAtTime (SUMOTime simStep) const =0
 Returns the index of the logic at the given simulation step. More...
 
virtual SUMOTime getOffsetFromIndex (int index) const =0
 Returns the position (start of a phase during a cycle) from of a given step. More...
 
virtual int getIndexFromOffset (SUMOTime offset) const =0
 Returns the step (the phasenumber) of a given position of the cycle. More...
 
Changing phases and phase durations
void addOverridingDuration (SUMOTime duration)
 Changes the duration of the next phase. More...
 
void setCurrentDurationIncrement (SUMOTime delay)
 Delays current phase by the given delay. More...
 
virtual void changeStepAndDuration (MSTLLogicControl &tlcontrol, SUMOTime simStep, int step, SUMOTime stepDuration)=0
 Changes the current phase and her duration. More...
 

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

Protected Attributes

SUMOTime myCurrentDurationIncrement
 A value for enlarge the current duration. More...
 
SUMOTime myDefaultCycleTime
 The cycle time (without changes) More...
 
std::string myID
 The name of the object. More...
 
LaneVectorVector myLanes
 The list of LaneVectors; each vector contains the incoming lanes that belong to the same link index. More...
 
LinkVectorVector myLinks
 The list of LinkVectors; each vector contains the links that belong to the same link index. More...
 
std::vector< SUMOTimemyOverridingTimes
 A list of duration overrides. More...
 
std::string myProgramID
 The id of the logic. More...
 
SwitchCommandmySwitchCommand
 The current switch command. More...
 

Static Protected Attributes

static const LaneVector myEmptyLaneVector
 An empty lane vector. More...
 

Private Member Functions

void initMesoTLSPenalties ()
 initialize optional meso penalties More...
 
 MSTrafficLightLogic (const MSTrafficLightLogic &s)
 invalidated copy constructor More...
 
MSTrafficLightLogicoperator= (const MSTrafficLightLogic &s)
 invalidated assignment operator More...
 

Detailed Description

The parent class for traffic light logics.

Definition at line 62 of file MSTrafficLightLogic.h.

Member Typedef Documentation

◆ LaneVector

typedef std::vector<MSLane*> MSTrafficLightLogic::LaneVector

Definition of the list of arrival lanes subjected to this tls.

Definition at line 77 of file MSTrafficLightLogic.h.

◆ LaneVectorVector

Definition of a list that holds lists of lanes that do have the same attribute.

Definition at line 80 of file MSTrafficLightLogic.h.

◆ LinkVector

typedef std::vector<MSLink*> MSTrafficLightLogic::LinkVector

Definition of the list of links that are subjected to this tls.

Definition at line 71 of file MSTrafficLightLogic.h.

◆ LinkVectorVector

Definition of a list that holds lists of links that do have the same attribute.

Definition at line 74 of file MSTrafficLightLogic.h.

◆ Phases

Definition of a list of phases, being the junction logic.

Definition at line 68 of file MSTrafficLightLogic.h.

Constructor & Destructor Documentation

◆ MSTrafficLightLogic() [1/2]

MSTrafficLightLogic::MSTrafficLightLogic ( MSTLLogicControl tlcontrol,
const std::string &  id,
const std::string &  programID,
SUMOTime  delay,
const std::map< std::string, std::string > &  parameters 
)

Constructor.

Parameters
[in]tlcontrolThe tls control responsible for this tls
[in]idThis tls' id
[in]programIDThis tls' sub-id (program id)
[in]delayThe time to wait before the first switch

Definition at line 107 of file MSTrafficLightLogic.cpp.

References MSEventControl::addEvent(), MSNet::getBeginOfTimestepEvents(), MSNet::getInstance(), and mySwitchCommand.

◆ ~MSTrafficLightLogic()

MSTrafficLightLogic::~MSTrafficLightLogic ( )
virtual

Destructor.

Definition at line 173 of file MSTrafficLightLogic.cpp.

◆ MSTrafficLightLogic() [2/2]

MSTrafficLightLogic::MSTrafficLightLogic ( const MSTrafficLightLogic s)
private

invalidated copy constructor

Member Function Documentation

◆ adaptLinkInformationFrom()

void MSTrafficLightLogic::adaptLinkInformationFrom ( const MSTrafficLightLogic logic)
virtual

Applies information about controlled links and lanes from the given logic.

If we load a logic after the network has been loaded, we do not get the information about controlled links afterwards. We have to copy them from a previously loaded logic.

Parameters
[in]logicThe logic to use the information about controlled links/lanes from

Reimplemented in MSRailSignal, MSRailCrossing, and MSOffTrafficLightLogic.

Definition at line 199 of file MSTrafficLightLogic.cpp.

References myLanes, and myLinks.

Referenced by MSOffTrafficLightLogic::adaptLinkInformationFrom(), MSRailCrossing::adaptLinkInformationFrom(), MSRailSignal::adaptLinkInformationFrom(), and MSTLLogicControl::TLSLogicVariants::addLogic().

◆ addLink()

void MSTrafficLightLogic::addLink ( MSLink link,
MSLane lane,
int  pos 
)
virtual

Adds a link on building.

Parameters
[in]linkThe controlled link
[in]laneThe lane this link starts at
[in]posThe link's index (signal group) within this program

Reimplemented in MSRailCrossing.

Definition at line 181 of file MSTrafficLightLogic.cpp.

References getCurrentPhaseDef(), MSNet::getInstance(), myLanes, myLinks, and MSLink::setTLState().

Referenced by MSRailCrossing::addLink().

◆ addOverridingDuration()

void MSTrafficLightLogic::addOverridingDuration ( SUMOTime  duration)

Changes the duration of the next phase.

Parameters
[in]durationThe new duration

Definition at line 284 of file MSTrafficLightLogic.cpp.

References myOverridingTimes.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::cutLogic(), getDefaultCycleTime(), and MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic().

◆ addTo()

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

Adds this object to the given container.

Parameters

Definition at line 128 of file Named.h.

References Named::StoringVisitor::add().

◆ changeStepAndDuration()

virtual void MSTrafficLightLogic::changeStepAndDuration ( MSTLLogicControl tlcontrol,
SUMOTime  simStep,
int  step,
SUMOTime  stepDuration 
)
pure virtual

◆ clearParameter()

void Parameterised::clearParameter ( )
inherited

Clears the parameter map.

Definition at line 97 of file Parameterised.cpp.

References Parameterised::myMap.

◆ collectLinkStates()

std::map< MSLink *, LinkState > MSTrafficLightLogic::collectLinkStates ( ) const

Returns the (uncontrolled) states of the controlled links.

Returns
The controlled link's states

Definition at line 206 of file MSTrafficLightLogic.cpp.

References myLinks.

Referenced by MSTLLogicControl::TLSLogicVariants::saveInitialStates().

◆ getCurrentPhaseDef()

◆ getCurrentPhaseIndex()

◆ getDefaultCycleTime()

◆ getDouble()

double Parameterised::getDouble ( const std::string &  key,
const double  defaultValue 
) const
inherited

Returns the value for a given key converted to a double.

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

Definition at line 87 of file Parameterised.cpp.

References TplConvert::_2double(), and Parameterised::myMap.

Referenced by MSDevice_Battery::buildVehicleDevices().

◆ getID()

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

Returns the id.

Returns
The stored id

Definition at line 65 of file Named.h.

References Named::myID.

Referenced by NIImporter_SUMO::_loadNetwork(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), LaneStoringVisitor::add(), MSPModel_Striping::add(), MSVehicleTransfer::add(), PCPolyContainer::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), NBParkingCont::addEdges2Keep(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), ROVehicle::addStop(), MSRouteHandler::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), NBEdge::append(), NBPTStopCont::assignAndCreatNewPTStopAsNeeded(), NBPTStopCont::assignPTStopToEdgeOfClosestPlatform(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NLDetectorBuilder::buildE2Detector(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSEdge::checkAndRegisterBiDirEdge(), MSLane::checkForPedestrians(), NBEdge::checkGeometry(), NBEdgeCont::checkGrade(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), NBEdgeCont::checkOverlap(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBEdge::computeAngle(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), libsumo::Helper::findCloserLane(), MSDevice_SSM::findFoeConflictLane(), libsumo::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), NBTrafficLightDefinition::forbids(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), NBEdge::getConnection(), NBEdge::getConnectionRef(), libsumo::TrafficLight::getControlledLinks(), NBEdge::getCrossingAngle(), RODFNet::getDetectorEdge(), libsumo::Lane::getEdgeID(), MSMeanData::getEdgeID(), NBEdge::getFirstNonPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), libsumo::InductionLoop::getLaneID(), libsumo::LaneArea::getLaneID(), libsumo::Vehicle::getLaneID(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), libsumo::Lane::getLinks(), MSLane::getLinkTo(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUIE2Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), NBPTStopCont::getReverseStop(), libsumo::Person::getRoadID(), libsumo::Vehicle::getRoadID(), libsumo::Vehicle::getRouteID(), MSNet::getStoppingPlaceID(), MSDevice_SSM::getUpstreamVehicles(), MSDevice_SSM::getVehiclesOnJunction(), MSTransportable::Stage_Driving::getWaitingDescription(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSVehicle::ignoreRed(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NBEdge::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), RODFNet::isSource(), MSSOTLTrafficLightLogic::isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), MSAbstractLaneChangeModel::laneChangeOutput(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSE2Collector::MSE2Collector(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSPModel_Striping::nextBlocking(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_Example::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Example::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSE2Collector::notifyMove(), MSDevice_SSM::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), MSLink::opened(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NLTriggerBuilder::parseAndBuildCalibrator(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), AGStreet::print(), MSDevice_SSM::processEncounters(), MSVehicle::processLinkAproaches(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSDelayBasedTrafficLightLogic::proposeProlongation(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckLanes(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBNodeCont::remapIDs(), NBEdgeCont::remapIDs(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), MSLink::removeApproaching(), NBNodeCont::removeIsolatedRoads(), MSVehicle::removePassedDriveItems(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIImporter_DlrNavteq::ConnectedLanesHandler::report(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveGNEConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), NBPTLineCont::reviseStops(), MSPerson::MSPersonStage_Walking::routeOutput(), MSPerson::MSPersonStage_Driving::routeOutput(), RONet::saveAndRemoveRoutesUntil(), MSDevice_Vehroutes::saveState(), MSDevice::saveState(), MSDevice_Tripinfo::saveState(), MSBaseVehicle::saveState(), MSLane::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSLink::setApproaching(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), GNEJunction::setLogicValid(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), IntermodalRouter< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), GNETLSEditorFrame::updateDescription(), MSVehicle::updateDriveItems(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), NBParking::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_OpenDrive::writeNormalEdge(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and RONet::~RONet().

◆ getIDSecure()

◆ getIndexFromOffset()

virtual int MSTrafficLightLogic::getIndexFromOffset ( SUMOTime  offset) const
pure virtual

◆ getLanesAt()

const LaneVector& MSTrafficLightLogic::getLanesAt ( int  i) const
inline

Returns the list of lanes that are controlled by the signals at the given position.

Parameters
[in]iThe index of the signal
Returns
The lanes controlled by the signal at the given index

Definition at line 189 of file MSTrafficLightLogic.h.

References myEmptyLaneVector, and myLanes.

Referenced by GUITrafficLightLogicWrapper::drawGL(), Command_SaveTLSSwitches::execute(), MSActuatedTrafficLightLogic::gapControl(), GUIViewTraffic::onGamingClick(), and MSDelayBasedTrafficLightLogic::proposeProlongation().

◆ getLaneVectors()

const LaneVectorVector& MSTrafficLightLogic::getLaneVectors ( ) const
inline

Returns the list of lists of all lanes controlled by this tls.

Returns
All lanes controlled by this tls, sorted by the signal index

Definition at line 180 of file MSTrafficLightLogic.h.

References myLanes.

Referenced by MSSOTLWaveTrafficLightLogic::countVehicles(), GUITrafficLightLogicWrapper::getCenteringBoundary(), libsumo::TrafficLight::getControlledLanes(), libsumo::TrafficLight::getControlledLinks(), MSSOTLTrafficLightLogic::init(), TraCIServerAPI_TrafficLight::processGet(), and MSFullExport::writeTLS().

◆ getLinkIndex()

int MSTrafficLightLogic::getLinkIndex ( const MSLink *const  link) const

Returns the index of the given link.

Parameters
[in]linkThe link to retrieve the index for
Returns
The index of the given link (-1 if it is not controlled by this tls)

Definition at line 248 of file MSTrafficLightLogic.cpp.

References myLinks.

Referenced by GUITrafficLightLogicWrapper::getLinkIndex(), and getLinksAt().

◆ getLinks()

◆ getLinksAt()

const LinkVector& MSTrafficLightLogic::getLinksAt ( int  i) const
inline

Returns the list of links that are controlled by the signals at the given position.

Parameters
[in]iThe index of the signal
Returns
The links controlled by the signal at the given index

Definition at line 210 of file MSTrafficLightLogic.h.

References getCurrentPhaseDef(), getCurrentPhaseIndex(), getLinkIndex(), getLogicType(), getPhase(), getPhaseNumber(), getPhases(), and myLinks.

Referenced by MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), and MSSwarmTrafficLightLogic::init().

◆ getLogicType()

virtual const std::string MSTrafficLightLogic::getLogicType ( ) const
pure virtual

◆ getMap()

◆ getNextSwitchTime()

SUMOTime MSTrafficLightLogic::getNextSwitchTime ( ) const

Returns the assumed next switch time.

The time may change in case of adaptive/actuated traffic lights.

Returns
The assumed next switch time (simulation time)

Definition at line 265 of file MSTrafficLightLogic.cpp.

References MSTrafficLightLogic::SwitchCommand::getNextSwitchTime(), and mySwitchCommand.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_GSP::adaptLogic(), getDefaultCycleTime(), libsumo::TrafficLight::getNextSwitch(), getSpentDuration(), and MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP().

◆ getOffsetFromIndex()

virtual SUMOTime MSTrafficLightLogic::getOffsetFromIndex ( int  index) const
pure virtual

◆ getParameter()

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

Returns the value for a given key.

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

Definition at line 77 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), NBEdge::addRestrictedLane(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Edge::getParameter(), libsumo::Polygon::getParameter(), libsumo::Route::getParameter(), libsumo::POI::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Person::getParameter(), libsumo::Lane::getParameter(), libsumo::Vehicle::getParameter(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_OpenStreetMap::insertEdge(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), libsumo::Helper::moveToXYMap(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), MSSOTLPolicyDesirability::readParameter(), MSDevice_SSM::requestsTrajectories(), NBEdgeCont::splitAt(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), MSDevice_SSM::useGeoCoords(), and NWWriter_DlrNavteq::writeLinksUnsplitted().

◆ getPhase()

virtual const MSPhaseDefinition& MSTrafficLightLogic::getPhase ( int  givenstep) const
pure virtual

◆ getPhaseIndexAtTime()

virtual SUMOTime MSTrafficLightLogic::getPhaseIndexAtTime ( SUMOTime  simStep) const
pure virtual

Returns the index of the logic at the given simulation step.

Returns
The (estimated) index of the tls at the given simulation time step

Implemented in MSRailSignal, MSSimpleTrafficLightLogic, MSOffTrafficLightLogic, MSPhasedTrafficLightLogic, and MSRailCrossing.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), and getDefaultCycleTime().

◆ getPhaseNumber()

virtual int MSTrafficLightLogic::getPhaseNumber ( ) const
pure virtual

Returns the number of phases.

Returns
The number of this tls program's phases

Implemented in MSRailSignal, MSOffTrafficLightLogic, MSSimpleTrafficLightLogic, and MSPhasedTrafficLightLogic.

Referenced by getLinksAt(), and libsumo::TrafficLight::setPhase().

◆ getPhases()

◆ getProgramID()

◆ getSpentDuration()

SUMOTime MSTrafficLightLogic::getSpentDuration ( ) const

Returns the duration spent in the current phase.

Returns
The time spent in the current phase

Definition at line 271 of file MSTrafficLightLogic.cpp.

References MSPhaseDefinition::duration, getCurrentPhaseDef(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), and getNextSwitchTime().

Referenced by getDefaultCycleTime().

◆ init()

◆ initMesoTLSPenalties()

void MSTrafficLightLogic::initMesoTLSPenalties ( )
private

initialize optional meso penalties

XXX penalty for wrap-around red phases is underestimated

Definition at line 295 of file MSTrafficLightLogic.cpp.

References getPhases(), MSGlobals::gMesoTLSPenalty, LINKSTATE_TL_RED, LINKSTATE_TL_REDYELLOW, MAX2(), myLinks, NUMERICAL_EPS, MSEdge::recalcCache(), STEPS2TIME, and TIME2STEPS.

Referenced by init().

◆ knowsParameter()

◆ operator=()

MSTrafficLightLogic& MSTrafficLightLogic::operator= ( const MSTrafficLightLogic s)
private

invalidated assignment operator

◆ resetLinkStates()

void MSTrafficLightLogic::resetLinkStates ( const std::map< MSLink *, LinkState > &  vals) const

Resets the states of controlled links.

Parameters
[in]valsThe state of controlled links to use

Definition at line 235 of file MSTrafficLightLogic.cpp.

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

◆ setCurrentDurationIncrement()

void MSTrafficLightLogic::setCurrentDurationIncrement ( SUMOTime  delay)

Delays current phase by the given delay.

Parameters
[in]delayThe time by which the current phase shall be delayed

Definition at line 290 of file MSTrafficLightLogic.cpp.

References myCurrentDurationIncrement.

Referenced by getDefaultCycleTime().

◆ setID()

void Named::setID ( const std::string &  newID)
inlineinherited

◆ setParameter()

◆ setTrafficLightSignals()

bool MSTrafficLightLogic::setTrafficLightSignals ( SUMOTime  t) const

◆ trySwitch()

virtual SUMOTime MSTrafficLightLogic::trySwitch ( )
pure virtual

◆ unsetParameter()

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

Removes a parameter.

Parameters
[in]keyThe parameter's name

Definition at line 57 of file Parameterised.cpp.

References Parameterised::myMap.

◆ updateParameter()

void Parameterised::updateParameter ( const std::map< std::string, std::string > &  mapArg)
inherited

Adds or updates all given parameters from the map.

Parameters
[in]mapArgThe keys/values to insert

Definition at line 63 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_SUMO::_loadNetwork(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NLJunctionControlBuilder::closeJunction(), NBTrafficLightDefinition::compute(), and NIImporter_OpenStreetMap::insertEdge().

◆ writeParams()

Field Documentation

◆ myCurrentDurationIncrement

SUMOTime MSTrafficLightLogic::myCurrentDurationIncrement
protected

A value for enlarge the current duration.

Definition at line 417 of file MSTrafficLightLogic.h.

Referenced by setCurrentDurationIncrement(), and MSSimpleTrafficLightLogic::trySwitch().

◆ myDefaultCycleTime

◆ myEmptyLaneVector

const MSTrafficLightLogic::LaneVector MSTrafficLightLogic::myEmptyLaneVector
staticprotected

An empty lane vector.

Definition at line 426 of file MSTrafficLightLogic.h.

Referenced by getLanesAt().

◆ myID

std::string Named::myID
protectedinherited

The name of the object.

Definition at line 135 of file Named.h.

Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), MSE2Collector::detectorUpdate(), METriggeredCalibrator::execute(), MSCalibrator::execute(), GNEPOI::getAttribute(), GNEPOILane::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSCalibrator::init(), NBEdge::init(), MSLane::isInsertionSuccess(), MSCalibrator::myStartElement(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), GNEPOI::setAttribute(), GNEPOILane::setAttribute(), GNEPoly::setAttribute(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), NBEdge::splitGeometry(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), NBNode::writeLogic(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSE3Collector::writeXMLOutput().

◆ myLanes

◆ myLinks

◆ myOverridingTimes

std::vector<SUMOTime> MSTrafficLightLogic::myOverridingTimes
protected

A list of duration overrides.

Definition at line 414 of file MSTrafficLightLogic.h.

Referenced by addOverridingDuration(), and MSSimpleTrafficLightLogic::trySwitch().

◆ myProgramID

std::string MSTrafficLightLogic::myProgramID
protected

The id of the logic.

Definition at line 405 of file MSTrafficLightLogic.h.

Referenced by getProgramID(), MSDelayBasedTrafficLightLogic::init(), and MSActuatedTrafficLightLogic::init().

◆ mySwitchCommand

SwitchCommand* MSTrafficLightLogic::mySwitchCommand
protected

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