![]() |
SUMO - Simulation of Urban MObility
|
A self-organizing traffic light logic. More...
#include <MSSOTLTrafficLightLogic.h>
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 participate in this tl-light. More... | |
typedef std::vector< LinkVector > | LinkVectorVector |
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 links that participate in this tl-light. More... | |
typedef std::vector< LaneVector > | LaneVectorVector |
Definition of a list that holds lists of links that do have the same attribute. More... | |
Public Member Functions | ||||
void | addParameter (const std::string &key, const std::string &value) | |||
Adds a parameter. More... | ||||
void | addParameter (const std::map< std::string, std::string > &mapArg) | |||
Adds all given parameter. More... | ||||
void | addParameter (const Parameterised &p) | |||
Adds all given parameter. More... | ||||
void | addTo (const StoringVisitor &cont) const | |||
Adds this object to the given container. More... | ||||
void | clearParameter () | |||
Clears the parameter map. 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... | ||||
void | init (NLDetectorBuilder &nb) throw (ProcessError) | |||
Initialises the tls with sensors on incoming and outgoing lanes Sensors are built in the simulation according to the type of sensor specified in the simulation parameter. More... | ||||
bool | knowsParameter (const std::string &key) const | |||
Returns whether the parameter is known. More... | ||||
MSSOTLTrafficLightLogic (MSTLLogicControl &tlcontrol, const std::string &id, const std::string &subid, const Phases &phases, int step, SUMOTime delay, const std::map< std::string, std::string > ¶meters) | ||||
Constructor without sensors passed. More... | ||||
MSSOTLTrafficLightLogic (MSTLLogicControl &tlcontrol, const std::string &id, const std::string &subid, const Phases &phases, int step, SUMOTime delay, const std::map< std::string, std::string > ¶meters, MSSOTLSensors *sensors) | ||||
Constructor with sensors passed. More... | ||||
void | setID (const std::string &newID) | |||
resets the id More... | ||||
void | setPhases (const Phases &phases, int index) | |||
Replaces the phases and set the phase index. More... | ||||
SUMOTime | trySwitch () | |||
Switches to the next phase. More... | ||||
~MSSOTLTrafficLightLogic () | ||||
Destructor. More... | ||||
Static Information Retrieval | ||||
Switches to the next phase
| ||||
int | getPhaseNumber () const | |||
Returns the number of phases. More... | ||||
const Phases & | getPhases () const | |||
Returns the phases of this tls program. More... | ||||
const MSPhaseDefinition & | getPhase (int givenstep) const | |||
Returns the definition of the phase from the given position within the plan. More... | ||||
Dynamic Information Retrieval | ||||
int | getCurrentPhaseIndex () const | |||
Returns the current index within the program. More... | ||||
const MSPhaseDefinition & | getCurrentPhaseDef () const | |||
Returns the definition of the current phase. More... | ||||
Conversion between time and phase | ||||
SUMOTime | getPhaseIndexAtTime (SUMOTime simStep) const | |||
Returns the index of the logic at the given simulation step. More... | ||||
SUMOTime | getOffsetFromIndex (int index) const | |||
Returns the position (start of a phase during a cycle) from of a given step. More... | ||||
int | getIndexFromOffset (SUMOTime offset) const | |||
Returns the step (the phasenumber) of a given position of the cycle. More... | ||||
Changing phases and phase durations | ||||
void | changeStepAndDuration (MSTLLogicControl &tlcontrol, SUMOTime simStep, int step, SUMOTime stepDuration) | |||
Changes the current phase and her duration. 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 *, LinkState > | collectLinkStates () 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 | ||||
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 LaneVectorVector & | getLaneVectors () const | |||
Returns the list of lists of all lanes controlled by this tls. More... | ||||
const LaneVector & | getLanesAt (int i) const | |||
Returns the list of lanes that are controlled by the signals at the given position. More... | ||||
const LinkVectorVector & | getLinks () const | |||
Returns the list of lists of all affected links. More... | ||||
const LinkVector & | getLinksAt (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 const std::string | getLogicType () const =0 | |||
Returns the type of the logic as a string. More... | ||||
Dynamic Information Retrieval | ||||
SUMOTime | getDefaultCycleTime () const | |||
Returns the cycle time (in ms) More... | ||||
SUMOTime | getNextSwitchTime () const | |||
Returns the assumed next switch time. 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... | ||||
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 Types | |
typedef std::map< const std::string, std::vector< MSPushButton * > > | PhasePushButtons |
Protected Member Functions | |
virtual bool | canRelease ()=0 |
virtual SUMOTime | computeReturnTime () |
int | countVehicles (MSPhaseDefinition phase) |
virtual int | decideNextPhase () |
MSSOTLE2Sensors * | getCountSensors () |
Return the sensors that count the passage of vehicles in and out of the tl. More... | |
SUMOTime | getCurrentPhaseElapsed () |
SUMOReal | getInputSensorsLength () |
SUMOReal | getOutputSensorsLength () |
int | getPhaseIndexWithMaxCTS () |
MSSOTLSensors * | getSensors () |
SUMOReal | getSpeedThreshold () |
int | getThreshold () |
bool | isPushButtonPressed () |
bool | isThresholdPassed () |
void | logStatus () |
void | proceedToNextStep () |
Proceed to the next step. More... | |
void | setStep (int step) |
Forces a specific step. More... | |
Protected Attributes | |
PhasePushButtons | m_pushButtons |
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< SUMOTime > | myOverridingTimes |
A list of duration overrides. More... | |
Phases | myPhases |
The list of phases this logic uses. More... | |
std::string | myProgramID |
The id of the logic. More... | |
int | myStep |
The current step. More... | |
SwitchCommand * | mySwitchCommand |
The current switch command. More... | |
Static Protected Attributes | |
static const LaneVector | myEmptyLaneVector |
An empty lane vector. More... | |
Private Member Functions | |
void | checkPhases () |
SUMOReal | getDecayConstant () |
int | getMode () |
int | getTargetPhaseMaxLastSelection () |
bool | isDecayThresholdActivated () |
void | resetCTS (int phaseStep) |
void | setToATargetPhase () |
void | setupCTS () |
void | updateCTS () |
void | updateDecayThreshold () |
Private Attributes | |
SUMOReal | decayThreshold |
int | lastChain |
std::map< int, SUMOTime > | lastCheckForTargetPhase |
MSSOTLE2Sensors * | myCountSensors |
MSSOTLSensors * | mySensors |
bool | sensorsSelfBuilt |
std::map< int, SUMOTime > | targetPhasesCTS |
std::map< int, int > | targetPhasesLastSelection |
A self-organizing traffic light logic.
The base class for SOTL traffic light which switches between its phases and sets the lights to red in between. Some functions are called with an information about the current step. This is needed as a single logic may be used by many junctions and so the current step is stored within them, not within methods. Basically a SOTL logic overrides the natural flow of steps in order and length according to sensors on input (and output) lanes
Definition at line 66 of file MSSOTLTrafficLightLogic.h.
|
inherited |
Definition of the list of links that participate in this tl-light.
Definition at line 78 of file MSTrafficLightLogic.h.
|
inherited |
Definition of a list that holds lists of links that do have the same attribute.
Definition at line 81 of file MSTrafficLightLogic.h.
|
inherited |
Definition of the list of links that participate in this tl-light.
Definition at line 72 of file MSTrafficLightLogic.h.
|
inherited |
Definition of a list that holds lists of links that do have the same attribute.
Definition at line 75 of file MSTrafficLightLogic.h.
|
protected |
Definition at line 122 of file MSSOTLTrafficLightLogic.h.
|
inherited |
Definition of a list of phases, being the junction logic.
Definition at line 69 of file MSTrafficLightLogic.h.
MSSOTLTrafficLightLogic::MSSOTLTrafficLightLogic | ( | MSTLLogicControl & | tlcontrol, |
const std::string & | id, | ||
const std::string & | subid, | ||
const Phases & | phases, | ||
int | step, | ||
SUMOTime | delay, | ||
const std::map< std::string, std::string > & | parameters | ||
) |
Constructor without sensors passed.
[in] | tlcontrol | The tls control responsible for this tls |
[in] | id | This traffic light id |
[in] | subid | This tls' sub-id (program id) |
[in] | phases | Definitions of the phases |
[in] | step | The initial phase index |
[in] | delay | The time to wait before the first switch |
[in] | parameters | Parameters defined for the tll |
Definition at line 40 of file MSSOTLTrafficLightLogic.cpp.
References checkPhases(), myCountSensors, mySensors, sensorsSelfBuilt, setToATargetPhase(), and setupCTS().
MSSOTLTrafficLightLogic::MSSOTLTrafficLightLogic | ( | MSTLLogicControl & | tlcontrol, |
const std::string & | id, | ||
const std::string & | subid, | ||
const Phases & | phases, | ||
int | step, | ||
SUMOTime | delay, | ||
const std::map< std::string, std::string > & | parameters, | ||
MSSOTLSensors * | sensors | ||
) |
Constructor with sensors passed.
[in] | tlcontrol | The tls control responsible for this tls |
[in] | id | This tls' id |
[in] | subid | This tls' sub-id (program id) |
[in] | phases | Definitions of the phases |
[in] | step | The initial phase index |
[in] | delay | The time to wait before the first switch |
[in] | parameters | Parameters defined for the tll |
[in] | sensors | The already defined sensor logic |
Definition at line 57 of file MSSOTLTrafficLightLogic.cpp.
References checkPhases(), mySensors, sensorsSelfBuilt, setToATargetPhase(), and setupCTS().
MSSOTLTrafficLightLogic::~MSSOTLTrafficLightLogic | ( | ) |
Destructor.
Definition at line 74 of file MSSOTLTrafficLightLogic.cpp.
References m_pushButtons, MSPhasedTrafficLightLogic::myPhases, mySensors, and sensorsSelfBuilt.
|
virtualinherited |
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.
[in] | logic | The logic to use the information about controlled links/lanes from |
Reimplemented in MSRailSignal, MSRailCrossing, and MSOffTrafficLightLogic.
Definition at line 205 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::myLanes, and MSTrafficLightLogic::myLinks.
Referenced by MSOffTrafficLightLogic::adaptLinkInformationFrom(), MSRailCrossing::adaptLinkInformationFrom(), MSRailSignal::adaptLinkInformationFrom(), and MSTLLogicControl::TLSLogicVariants::addLogic().
Adds a link on building.
[in] | link | The controlled link |
[in] | lane | The lane this link starts at |
[in] | pos | The link's index (signal group) within this program |
Reimplemented in MSRailCrossing.
Definition at line 187 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::getCurrentPhaseDef(), MSNet::getInstance(), MSTrafficLightLogic::myLanes, MSTrafficLightLogic::myLinks, and MSLink::setTLState().
Referenced by MSRailCrossing::addLink().
|
inherited |
Changes the duration of the next phase.
[in] | duration | The new duration |
Definition at line 278 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::myOverridingTimes.
Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::cutLogic(), MSTrafficLightLogic::getDefaultCycleTime(), and MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic().
|
inherited |
Adds a parameter.
[in] | key | The parameter's name |
[in] | value | The parameter's value |
Definition at line 53 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by SUMORouteHandler::addParam(), NLHandler::addParam(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NBTrafficLightDefinition::compute(), NIImporter_OpenDrive::loadNetwork(), NIImporter_MATSim::EdgesHandler::myStartElement(), TraCIServerAPI_Edge::processSet(), TraCIServerAPI_TLS::processSet(), TraCIServerAPI_POI::processSet(), TraCIServerAPI_Polygon::processSet(), and TraCIServerAPI_Lane::processSet().
|
inherited |
Adds all given parameter.
[in] | mapArg | The keys/values to insert |
Definition at line 59 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
Adds all given parameter.
[in] | p | The keys/values to insert |
Definition at line 67 of file Parameterised.cpp.
References Parameterised::myMap.
|
inlineinherited |
Adds this object to the given container.
Definition at line 129 of file Named.h.
References Named::StoringVisitor::add().
|
protectedpure virtual |
|
virtualinherited |
Changes the current phase and her duration.
[in] | tlcontrol | The responsible traffic lights control |
[in] | simStep | The current simulation step |
[in] | step | Index of the phase to use |
[in] | stepDuration | The left duration of the phase |
Implements MSTrafficLightLogic.
Definition at line 195 of file MSPhasedTrafficLightLogic.cpp.
References MSEventControl::ADAPT_AFTER_EXECUTION, MSEventControl::addEvent(), MSTrafficLightLogic::SwitchCommand::deschedule(), MSNet::getBeginOfTimestepEvents(), MSNet::getInstance(), MSPhasedTrafficLightLogic::myStep, and MSTrafficLightLogic::mySwitchCommand.
|
private |
Definition at line 94 of file MSSOTLTrafficLightLogic.cpp.
References MsgHandler::getErrorInstance(), MSPhasedTrafficLightLogic::getPhase(), MSPhasedTrafficLightLogic::getPhases(), MsgHandler::inform(), MSPhaseDefinition::isUndefined(), Named::myID, and toString().
Referenced by MSSOTLTrafficLightLogic().
|
inherited |
Clears the parameter map.
Definition at line 91 of file Parameterised.cpp.
References Parameterised::myMap.
Returns the (uncontrolled) states of the controlled links.
Definition at line 212 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::myLinks.
Referenced by MSTLLogicControl::TLSLogicVariants::saveInitialStates().
|
inlineprotectedvirtual |
Reimplemented in MSSwarmTrafficLightLogic.
Definition at line 194 of file MSSOTLTrafficLightLogic.h.
References DELTA_T, MSPhaseDefinition::duration, and MSPhasedTrafficLightLogic::getCurrentPhaseDef().
Referenced by trySwitch().
|
protected |
Definition at line 270 of file MSSOTLTrafficLightLogic.cpp.
References MSSOTLSensors::countVehicles(), getMode(), MSPhaseDefinition::getTargetLaneSet(), MSPhaseDefinition::isTarget(), MAX2(), mySensors, and WRITE_ERROR.
Referenced by MSSOTLPlatoonTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::canRelease(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSSwarmTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), and updateCTS().
|
protectedvirtual |
Reimplemented in MSSwarmTrafficLightLogic, MSSOTLPolicyBasedTrafficLightLogic, and MSDeterministicHiLevelTrafficLightLogic.
Definition at line 432 of file MSSOTLTrafficLightLogic.cpp.
References canRelease(), MSPhasedTrafficLightLogic::getCurrentPhaseDef(), MSPhasedTrafficLightLogic::getCurrentPhaseIndex(), getPhaseIndexWithMaxCTS(), MSPhaseDefinition::isCommit(), MSPhaseDefinition::isDecisional(), and MSPhaseDefinition::isTransient().
Referenced by trySwitch().
|
inlineprotected |
Return the sensors that count the passage of vehicles in and out of the tl.
Definition at line 188 of file MSSOTLTrafficLightLogic.h.
References myCountSensors.
Referenced by MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), and MSSwarmTrafficLightLogic::updatePheromoneLevels().
|
virtualinherited |
Returns the definition of the current phase.
Implements MSTrafficLightLogic.
Definition at line 144 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myPhases, and MSPhasedTrafficLightLogic::myStep.
Referenced by MSSOTLPhaseTrafficLightLogic::canRelease(), MSSOTLPlatoonTrafficLightLogic::canRelease(), MSSOTLWaveTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::canRelease(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSSwarmTrafficLightLogic::canRelease(), computeReturnTime(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), getCurrentPhaseElapsed(), MSSwarmTrafficLightLogic::getLaneLightState(), isPushButtonPressed(), isThresholdPassed(), trySwitch(), and updateDecayThreshold().
|
protected |
Definition at line 364 of file MSSOTLTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::getCurrentPhaseDef(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), and MSPhaseDefinition::myLastSwitch.
Referenced by MSSOTLPhaseTrafficLightLogic::canRelease(), MSSOTLPlatoonTrafficLightLogic::canRelease(), MSSOTLRequestTrafficLightLogic::canRelease(), MSSOTLWaveTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::canRelease(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSSwarmTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), and trySwitch().
|
virtualinherited |
Returns the current index within the program.
Implements MSTrafficLightLogic.
Definition at line 138 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myStep.
Referenced by MSSOTLWaveTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), init(), and trySwitch().
|
inlineprivate |
Definition at line 292 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2SUMOReal(), and Parameterised::getParameter().
Referenced by updateDecayThreshold().
|
inlineinherited |
Returns the cycle time (in ms)
Definition at line 267 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::addOverridingDuration(), MSTrafficLightLogic::changeStepAndDuration(), MSTrafficLightLogic::getIndexFromOffset(), MSTrafficLightLogic::getNextSwitchTime(), MSTrafficLightLogic::getOffsetFromIndex(), MSTrafficLightLogic::getPhaseIndexAtTime(), MSTrafficLightLogic::myDefaultCycleTime, and MSTrafficLightLogic::setCurrentDurationIncrement().
Referenced by MSTLLogicControl::WAUTSwitchProcedure_GSP::adaptLogic(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), NLJunctionControlBuilder::closeTrafficLightLogic(), and MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP().
|
inlineinherited |
Returns the id.
Definition at line 66 of file Named.h.
References Named::myID.
Referenced by NIImporter_SUMO::_loadNetwork(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), PCPolyContainer::add(), MSVehicleTransfer::add(), TraCIServerAPI_Lane::StoringVisitor::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), MSNet::addBusStop(), MSNet::addChargingStation(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), MSNet::addContainerStop(), NIXMLConnectionsHandler::addCrossing(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciBusOrContainerStop(), MSVehicle::addTraciStop(), AGActivityTripWriter::addTrip(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MS_E2_ZS_CollectorOverLanes::buildCollector(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), 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(), NBEdge::checkGeometry(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), NLDetectorBuilder::convUncontE2PosLength(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), 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(), TraCIServerAPI_Vehicle::findCloserLane(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), MSNet::getBusStopID(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSNet::getChargingStationID(), NBEdge::getConnection(), NBEdge::getConnectionRef(), MSNet::getContainerStopID(), NBEdge::getCrossingAngle(), RODFNet::getDetectorEdge(), MSMeanData::getEdgeID(), MSE2Collector::getEstimateQueueLength(), NBEdge::getFirstNonPedestrianLane(), MSLane::getFollower(), MSLane::getFollowerOnConsecutive(), MSLane::getFollowersOnConsecutive(), GNEEdge::getGNEJunctionDest(), GNEEdge::getGNEJunctionSource(), MSLink::getInternalLengthsAfter(), MS_E2_ZS_CollectorOverLanes::getLanePredeccessorLanes(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUI_E2_ZS_Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSLane::getPartialBehind(), getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), init(), MSSwarmTrafficLightLogic::init(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), RODFNet::isSource(), isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), NBNodeCont::mapToNumericalIDs(), NBEdgeCont::mapToNumericalIDs(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_BTsender::notifyMove(), MSE2Collector::notifyMove(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), 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()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_SL2015::patchSpeed(), MSLCM_LC2013::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSLane::planMovements(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), MSAbstractLaneChangeModel::primaryLaneChanged(), AGStreet::print(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_ArealDetector::processGet(), TraCIServerAPI_Lane::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNodeCont::removeIsolatedRoads(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), MSBaseVehicle::reroute(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), RONet::saveAndRemoveRoutesUntil(), MSBaseVehicle::saveState(), MSLane::saveState(), MSDevice_Battery::setAirDragCoefficient(), NBNodeCont::setAsTLControlled(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), MSDevice_Battery::setConstantPowerIntake(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), MSDevice_Battery::setFrontSurfaceArea(), MSDevice_Battery::setInternalMomentOfInertia(), GNEJunction::setLogicValid(), MSDevice_Battery::setMass(), MSDevice_Battery::setMaximumBatteryCapacity(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSDevice_Battery::setPropulsionEfficiency(), MSDevice_Battery::setRadialDragCoefficient(), MSDevice_Battery::setRecuperationEfficiency(), MSLink::setRequestInformation(), MSDevice_Battery::setRollDragCoefficient(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), METriggeredCalibrator::tryEmit(), trySwitch(), MSVehicle::updateBestLanes(), updateCTS(), GNETLSEditorFrame::updateDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), TraCIServerAPI_Vehicle::vtdMap(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), 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(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), PointOfInterest::writeXML(), SUMO::Polygon::writeXML(), MSRouteProbe::writeXMLOutput(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 59 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSLaneChanger::continueChange(), MSVehicle::getBackPositionOnLane(), MSVehicle::getCenterOnEdge(), MSLane::getFollowerOnConsecutive(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLatOffset(), operator<<(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), toString(), MSCriticalFollowerDistanceInfo::toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().
|
virtualinherited |
Returns the step (the phasenumber) of a given position of the cycle.
[in] | offset | The offset (time) for which the according phase shall be returned |
Implements MSTrafficLightLogic.
Definition at line 172 of file MSPhasedTrafficLightLogic.cpp.
References MSPhaseDefinition::duration, MSPhasedTrafficLightLogic::getPhase(), MSTrafficLightLogic::myDefaultCycleTime, and MSPhasedTrafficLightLogic::myPhases.
|
inlineprotected |
Definition at line 165 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2SUMOReal(), and Parameterised::getParameter().
Referenced by init().
|
inlineinherited |
Returns the list of lanes that are controlled by the signals at the given position.
[in] | i | The index of the signal |
Definition at line 190 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::myEmptyLaneVector, and MSTrafficLightLogic::myLanes.
Referenced by GUITrafficLightLogicWrapper::drawGL(), Command_SaveTLSSwitches::execute(), MSActuatedTrafficLightLogic::gapControl(), and GUIViewTraffic::onGamingClick().
|
inlineinherited |
Returns the list of lists of all lanes controlled by this tls.
Definition at line 181 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::myLanes.
Referenced by MSSOTLWaveTrafficLightLogic::countVehicles(), GUITrafficLightLogicWrapper::getCenteringBoundary(), init(), TraCIServerAPI_TLS::processGet(), and MSFullExport::writeTLS().
|
inherited |
Returns the index of the given link.
[in] | link | The link to retrieve the index for |
Definition at line 254 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::myLinks.
Referenced by GUITrafficLightLogicWrapper::getLinkIndex(), and MSTrafficLightLogic::getLinksAt().
|
inlineinherited |
Returns the list of lists of all affected links.
Definition at line 202 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::myLinks.
Referenced by MSTLLogicControl::TLSLogicVariants::addLogic(), GUINet::createTLWrapper(), GUITLLogicPhasesTrackerWindow::drawValues(), Command_SaveTLSSwitches::execute(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSDeterministicHiLevelTrafficLightLogic::init(), init(), MSSwarmTrafficLightLogic::init(), TraCIServerAPI_TLS::processGet(), and MSOffTrafficLightLogic::rebuildPhase().
|
inlineinherited |
Returns the list of links that are controlled by the signals at the given position.
[in] | i | The index of the signal |
Definition at line 211 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::getCurrentPhaseDef(), MSTrafficLightLogic::getCurrentPhaseIndex(), MSTrafficLightLogic::getLinkIndex(), MSTrafficLightLogic::getLogicType(), MSTrafficLightLogic::getPhase(), MSTrafficLightLogic::getPhaseNumber(), MSTrafficLightLogic::getPhases(), and MSTrafficLightLogic::myLinks.
Referenced by MSDeterministicHiLevelTrafficLightLogic::init(), init(), and MSSwarmTrafficLightLogic::init().
|
pure virtualinherited |
Returns the type of the logic as a string.
Implemented in MSSwarmTrafficLightLogic, MSRailSignal, MSSimpleTrafficLightLogic, MSOffTrafficLightLogic, MSRailCrossing, MSSOTLPolicyBasedTrafficLightLogic, MSDeterministicHiLevelTrafficLightLogic, and MSSOTLWaveTrafficLightLogic.
Referenced by MSTrafficLightLogic::getLinksAt().
|
inlineinherited |
Returns the inner key/value map.
Definition at line 107 of file Parameterised.h.
References Parameterised::myMap.
Referenced by NBTrafficLightDefinition::compute(), MSDevice_Vehroutes::generateOutput(), GUIPerson::getParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), TraCIServerAPI_TLS::processGet(), ROVehicle::saveAsXML(), ROPerson::saveAsXML(), SUMOVTypeParameter::write(), PointOfInterest::writeXML(), and SUMO::Polygon::writeXML().
|
inlineprivate |
Definition at line 280 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2int(), and Parameterised::getParameter().
Referenced by countVehicles(), and updateCTS().
|
inherited |
Returns the assumed next switch time.
The time may change in case of adaptive/actuated traffic lights.
Definition at line 271 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::SwitchCommand::getNextSwitchTime(), and MSTrafficLightLogic::mySwitchCommand.
Referenced by MSTLLogicControl::WAUTSwitchProcedure_GSP::adaptLogic(), MSTrafficLightLogic::getDefaultCycleTime(), MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP(), and TraCIServerAPI_TLS::processGet().
|
virtualinherited |
Returns the position (start of a phase during a cycle) from of a given step.
[in] | index | The index of the phase to return the begin of |
Implements MSTrafficLightLogic.
Definition at line 161 of file MSPhasedTrafficLightLogic.cpp.
References MSPhaseDefinition::duration, MSPhasedTrafficLightLogic::getPhase(), and MSPhasedTrafficLightLogic::myPhases.
Referenced by MSPhasedTrafficLightLogic::getPhaseIndexAtTime().
|
inlineprotected |
Definition at line 169 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2SUMOReal(), Parameterised::getParameter(), and getPhaseIndexWithMaxCTS().
Referenced by init().
|
inherited |
Returns the value for a given key.
[in] | key | The key to ask for |
[in] | defaultValue | The default value to return if no value is stored under the key |
Definition at line 81 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), getDecayConstant(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), getInputSensorsLength(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), getMode(), getOutputSensorsLength(), getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), getThreshold(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), init(), MSSwarmTrafficLightLogic::init(), isDecayThresholdActivated(), isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), TraCIServerAPI_Edge::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Route::processGet(), TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_Polygon::processGet(), TraCIServerAPI_POI::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_Lane::processGet(), MSSOTLPolicyDesirability::readParameter(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), and TraCIServerAPI_Vehicle::vtdMap().
|
virtualinherited |
Returns the definition of the phase from the given position within the plan.
[in] | givenstep | The index of the phase within the plan |
Implements MSTrafficLightLogic.
Definition at line 130 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myPhases.
Referenced by checkPhases(), MSPhasedTrafficLightLogic::getIndexFromOffset(), MSPhasedTrafficLightLogic::getOffsetFromIndex(), MSPhasedTrafficLightLogic::getPhaseIndexAtTime(), isThresholdPassed(), setToATargetPhase(), setupCTS(), trySwitch(), and updateCTS().
Returns the index of the logic at the given simulation step.
Implements MSTrafficLightLogic.
Definition at line 151 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::getOffsetFromIndex(), MSPhasedTrafficLightLogic::getPhase(), MSTrafficLightLogic::myDefaultCycleTime, MSPhaseDefinition::myLastSwitch, and MSPhasedTrafficLightLogic::myStep.
|
protected |
Definition at line 375 of file MSSOTLTrafficLightLogic.cpp.
References Named::getID(), RandHelper::getRandomFrom(), getTargetPhaseMaxLastSelection(), lastChain, targetPhasesCTS, targetPhasesLastSelection, and WRITE_MESSAGE.
Referenced by MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), and getOutputSensorsLength().
|
virtualinherited |
Returns the number of phases.
Implements MSTrafficLightLogic.
Definition at line 119 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myPhases.
|
virtualinherited |
Returns the phases of this tls program.
Implements MSTrafficLightLogic.
Definition at line 125 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myPhases.
Referenced by checkPhases(), init(), setToATargetPhase(), and setupCTS().
|
inlineinherited |
Returns this tl-logic's id.
Definition at line 173 of file MSTrafficLightLogic.h.
References MSTrafficLightLogic::myProgramID.
Referenced by Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSTrafficLightLogic::init(), GUIViewTraffic::onGamingClick(), and TraCIServerAPI_TLS::processGet().
|
inlineprotected |
Definition at line 181 of file MSSOTLTrafficLightLogic.h.
References mySensors.
Referenced by MSSOTLWaveTrafficLightLogic::countVehicles(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), and MSSwarmTrafficLightLogic::updatePheromoneLevels().
|
inlineprotected |
Definition at line 161 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2SUMOReal(), and Parameterised::getParameter().
Referenced by init().
|
inlineprivate |
Definition at line 231 of file MSSOTLTrafficLightLogic.h.
Referenced by getPhaseIndexWithMaxCTS(), and trySwitch().
|
inlineprotected |
Definition at line 157 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2int(), and Parameterised::getParameter().
Referenced by isThresholdPassed().
|
virtual |
Initialises the tls with sensors on incoming and outgoing lanes Sensors are built in the simulation according to the type of sensor specified in the simulation parameter.
[in] | nb | The detector builder |
ProcessError | If something fails on initialisation |
Reimplemented from MSTrafficLightLogic.
Reimplemented in MSSwarmTrafficLightLogic.
Definition at line 127 of file MSSOTLTrafficLightLogic.cpp.
References MSSOTLE2Sensors::buildCountOutSensors(), MSSOTLE2Sensors::buildCountSensors(), MSSOTLE2Sensors::buildSensors(), DBG, decayThreshold, MSPhasedTrafficLightLogic::getCurrentPhaseIndex(), Named::getID(), getInputSensorsLength(), MSTrafficLightLogic::getLaneVectors(), MSTrafficLightLogic::getLinks(), MSTrafficLightLogic::getLinksAt(), getOutputSensorsLength(), Parameterised::getParameter(), MSPhasedTrafficLightLogic::getPhases(), getSpeedThreshold(), MSTrafficLightLogic::init(), isDecayThresholdActivated(), myCountSensors, Named::myID, MSTrafficLightLogic::myLanes, MSTrafficLightLogic::myLinks, mySensors, SENSORS_TYPE, SENSORS_TYPE_E1, SENSORS_TYPE_E2, sensorsSelfBuilt, MSSOTLSensors::stepChanged(), and WRITE_MESSAGE.
Referenced by MSSOTLHiLevelTrafficLightLogic::init().
|
inlineprivate |
Definition at line 288 of file MSSOTLTrafficLightLogic.h.
References TplConvert::_2bool(), and Parameterised::getParameter().
Referenced by init(), isThresholdPassed(), trySwitch(), and updateCTS().
|
protected |
Checks the if the pushbutton was activated for the current stage
Definition at line 512 of file MSSOTLTrafficLightLogic.cpp.
References MSPushButton::anyActive(), MSPhasedTrafficLightLogic::getCurrentPhaseDef(), Parameterised::getParameter(), MSPhaseDefinition::getState(), MSPedestrianPushButton::loadPushButtons(), and m_pushButtons.
Referenced by MSDeterministicHiLevelTrafficLightLogic::canRelease(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSSwarmTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), and MSSwarmTrafficLightLogic::decideNextPhase().
|
protected |
Definition at line 311 of file MSSOTLTrafficLightLogic.cpp.
References DBG, decayThreshold, MSPhasedTrafficLightLogic::getCurrentPhaseDef(), Named::getID(), MSNet::getInstance(), MSPhasedTrafficLightLogic::getPhase(), MSPhaseDefinition::getState(), getThreshold(), isDecayThresholdActivated(), lastChain, RandHelper::rand(), SUMOReal, targetPhasesCTS, time2string(), and WRITE_MESSAGE.
Referenced by MSSOTLPhaseTrafficLightLogic::canRelease(), MSSOTLPlatoonTrafficLightLogic::canRelease(), MSSOTLRequestTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::canRelease(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSSwarmTrafficLightLogic::canRelease(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), and MSSwarmTrafficLightLogic::decideNextPhase().
|
inherited |
Returns whether the parameter is known.
[in] | key | The key to ask for |
Definition at line 75 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by MSDevice_Example::buildVehicleDevices(), and MSDevice::equippedByDefaultAssignmentOptions().
|
protected |
Definition at line 89 of file MSSOTLTrafficLightLogic.cpp.
|
protectedinherited |
Proceed to the next step.
MEMBER FACTORIZED TO PARENT CLASS (MSTrafficLightLogic)
Definition at line 104 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::myStep, and MSPhasedTrafficLightLogic::setStep().
|
private |
Definition at line 219 of file MSSOTLTrafficLightLogic.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), lastCheckForTargetPhase, and targetPhasesCTS.
Referenced by trySwitch().
|
inherited |
Resets the states of controlled links.
[in] | vals | The state of controlled links to use |
Definition at line 241 of file MSTrafficLightLogic.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), and MSTrafficLightLogic::myLinks.
|
inherited |
Delays current phase by the given delay.
[in] | delay | The time by which the current phase shall be delayed |
Definition at line 284 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::myCurrentDurationIncrement.
Referenced by MSTrafficLightLogic::getDefaultCycleTime().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 74 of file Named.h.
References Named::myID.
Referenced by NBNodeCont::mapToNumericalIDs(), NBEdgeCont::mapToNumericalIDs(), NBNodeCont::rename(), and NBEdgeCont::rename().
|
inherited |
Replaces the phases and set the phase index.
Definition at line 209 of file MSPhasedTrafficLightLogic.cpp.
References MSPhasedTrafficLightLogic::deletePhases(), MSPhasedTrafficLightLogic::myPhases, and MSPhasedTrafficLightLogic::myStep.
|
protectedinherited |
Forces a specific step.
Definition at line 109 of file MSPhasedTrafficLightLogic.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSPhasedTrafficLightLogic::myPhases, and MSPhasedTrafficLightLogic::myStep.
Referenced by MSPhasedTrafficLightLogic::proceedToNextStep(), setToATargetPhase(), and trySwitch().
|
private |
Definition at line 114 of file MSSOTLTrafficLightLogic.cpp.
References MsgHandler::getErrorInstance(), MSPhasedTrafficLightLogic::getPhase(), MSPhasedTrafficLightLogic::getPhases(), MsgHandler::inform(), MSPhaseDefinition::isTarget(), lastChain, Named::myID, and MSPhasedTrafficLightLogic::setStep().
Referenced by MSSOTLTrafficLightLogic().
|
inherited |
Applies the current signal states to controlled links.
[in] | t | The current time |
Definition at line 225 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::getCurrentPhaseDef(), MSPhaseDefinition::getState(), and MSTrafficLightLogic::myLinks.
Referenced by MSTLLogicControl::TLSLogicVariants::addLogic(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSTrafficLightLogic::SwitchCommand::execute(), MSRailCrossing::init(), MSRailSignal::init(), MSTLLogicControl::TLSLogicVariants::switchTo(), MSRailCrossing::trySwitch(), and MSRailSignal::trySwitch().
|
private |
Definition at line 103 of file MSSOTLTrafficLightLogic.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSPhasedTrafficLightLogic::getPhase(), MSPhasedTrafficLightLogic::getPhases(), MSPhaseDefinition::isTarget(), lastCheckForTargetPhase, targetPhasesCTS, and targetPhasesLastSelection.
Referenced by MSSOTLTrafficLightLogic().
|
virtual |
Switches to the next phase.
Implements MSTrafficLightLogic.
Definition at line 458 of file MSSOTLTrafficLightLogic.cpp.
References ANALYSIS_DBG, computeReturnTime(), decayThreshold, decideNextPhase(), MSPhasedTrafficLightLogic::getCurrentPhaseDef(), getCurrentPhaseElapsed(), MSPhasedTrafficLightLogic::getCurrentPhaseIndex(), MSNet::getCurrentTimeStep(), Named::getID(), MSNet::getInstance(), MSPhasedTrafficLightLogic::getPhase(), MSPhaseDefinition::getState(), getTargetPhaseMaxLastSelection(), isDecayThresholdActivated(), MSPhaseDefinition::isTarget(), lastChain, MSPhaseDefinition::myLastSwitch, mySensors, resetCTS(), MSPhasedTrafficLightLogic::setStep(), MSSOTLSensors::stepChanged(), targetPhasesLastSelection, time2string(), updateCTS(), and WRITE_MESSAGE.
|
private |
Definition at line 228 of file MSSOTLTrafficLightLogic.cpp.
References countVehicles(), MSNet::getCurrentTimeStep(), Named::getID(), MSNet::getInstance(), getMode(), MSPhasedTrafficLightLogic::getPhase(), isDecayThresholdActivated(), lastChain, lastCheckForTargetPhase, targetPhasesCTS, updateDecayThreshold(), WRITE_ERROR, and WRITE_MESSAGE.
Referenced by trySwitch().
|
private |
Definition at line 299 of file MSSOTLTrafficLightLogic.cpp.
References DBG, decayThreshold, MSPhasedTrafficLightLogic::getCurrentPhaseDef(), getDecayConstant(), MSNet::getInstance(), time2string(), and WRITE_MESSAGE.
Referenced by updateCTS().
|
private |
Definition at line 243 of file MSSOTLTrafficLightLogic.h.
Referenced by init(), isThresholdPassed(), trySwitch(), and updateDecayThreshold().
|
private |
Definition at line 241 of file MSSOTLTrafficLightLogic.h.
Referenced by getPhaseIndexWithMaxCTS(), isThresholdPassed(), setToATargetPhase(), trySwitch(), and updateCTS().
|
private |
Definition at line 226 of file MSSOTLTrafficLightLogic.h.
Referenced by resetCTS(), setupCTS(), and updateCTS().
|
protected |
Definition at line 123 of file MSSOTLTrafficLightLogic.h.
Referenced by isPushButtonPressed(), and ~MSSOTLTrafficLightLogic().
|
private |
Definition at line 213 of file MSSOTLTrafficLightLogic.h.
Referenced by getCountSensors(), init(), and MSSOTLTrafficLightLogic().
|
protectedinherited |
A value for enlarge the current duration.
Definition at line 411 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::setCurrentDurationIncrement(), and MSSimpleTrafficLightLogic::trySwitch().
|
protectedinherited |
The cycle time (without changes)
Definition at line 417 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::getDefaultCycleTime(), MSPhasedTrafficLightLogic::getIndexFromOffset(), MSSimpleTrafficLightLogic::getIndexFromOffset(), MSPhasedTrafficLightLogic::getPhaseIndexAtTime(), MSSimpleTrafficLightLogic::getPhaseIndexAtTime(), MSOffTrafficLightLogic::MSOffTrafficLightLogic(), MSPhasedTrafficLightLogic::MSPhasedTrafficLightLogic(), MSRailSignal::MSRailSignal(), and MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic().
|
staticprotectedinherited |
An empty lane vector.
Definition at line 420 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::getLanesAt().
|
protectedinherited |
The name of the object.
Definition at line 136 of file Named.h.
Referenced by GUI_E2_ZS_CollectorOverLanes::buildCollector(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), checkPhases(), NBNode::computeNodeShape(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Named::getID(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSActuatedTrafficLightLogic::init(), init(), MSCalibrator::init(), NBEdge::init(), MSLane::isInsertionSuccess(), MSCalibrator::myStartElement(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), Named::setID(), setToATargetPhase(), NBEdge::splitGeometry(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), NBNode::writeLogic(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
protectedinherited |
The list of LaneVectors; each vector contains the incoming lanes that belong to the same link index.
Definition at line 405 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::adaptLinkInformationFrom(), MSTrafficLightLogic::addLink(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSTrafficLightLogic::getLanesAt(), MSTrafficLightLogic::getLaneVectors(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), init(), MSSwarmTrafficLightLogic::init(), and MSSwarmTrafficLightLogic::resetLaneCheck().
|
protectedinherited |
The list of LinkVectors; each vector contains the links that belong to the same link index.
Definition at line 402 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::adaptLinkInformationFrom(), MSTrafficLightLogic::addLink(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSTrafficLightLogic::collectLinkStates(), MSRailSignal::getAppropriateState(), MSTrafficLightLogic::getLinkIndex(), MSTrafficLightLogic::getLinks(), MSTrafficLightLogic::getLinksAt(), MSRailCrossing::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), init(), MSSwarmTrafficLightLogic::init(), MSTrafficLightLogic::initMesoTLSPenalties(), MSSwarmTrafficLightLogic::resetLaneCheck(), MSTrafficLightLogic::resetLinkStates(), and MSTrafficLightLogic::setTrafficLightSignals().
|
protectedinherited |
A list of duration overrides.
Definition at line 408 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::addOverridingDuration(), and MSSimpleTrafficLightLogic::trySwitch().
|
protectedinherited |
The list of phases this logic uses.
Definition at line 182 of file MSPhasedTrafficLightLogic.h.
Referenced by MSSOTLWaveTrafficLightLogic::canRelease(), MSPhasedTrafficLightLogic::deletePhases(), MSPhasedTrafficLightLogic::getCurrentPhaseDef(), MSPhasedTrafficLightLogic::getIndexFromOffset(), MSPhasedTrafficLightLogic::getOffsetFromIndex(), MSPhasedTrafficLightLogic::getPhase(), MSPhasedTrafficLightLogic::getPhaseNumber(), MSPhasedTrafficLightLogic::getPhases(), MSPhasedTrafficLightLogic::MSPhasedTrafficLightLogic(), MSPhasedTrafficLightLogic::setPhases(), MSPhasedTrafficLightLogic::setStep(), and ~MSSOTLTrafficLightLogic().
|
protectedinherited |
The id of the logic.
Definition at line 399 of file MSTrafficLightLogic.h.
Referenced by MSTrafficLightLogic::getProgramID(), and MSActuatedTrafficLightLogic::init().
|
private |
Definition at line 208 of file MSSOTLTrafficLightLogic.h.
Referenced by countVehicles(), getSensors(), init(), MSSOTLTrafficLightLogic(), trySwitch(), and ~MSSOTLTrafficLightLogic().
|
protectedinherited |
The current step.
Definition at line 198 of file MSPhasedTrafficLightLogic.h.
Referenced by MSPhasedTrafficLightLogic::changeStepAndDuration(), MSPhasedTrafficLightLogic::getCurrentPhaseDef(), MSPhasedTrafficLightLogic::getCurrentPhaseIndex(), MSPhasedTrafficLightLogic::getPhaseIndexAtTime(), MSPhasedTrafficLightLogic::proceedToNextStep(), MSPhasedTrafficLightLogic::setPhases(), and MSPhasedTrafficLightLogic::setStep().
|
protectedinherited |
The current switch command.
Definition at line 414 of file MSTrafficLightLogic.h.
Referenced by MSPhasedTrafficLightLogic::changeStepAndDuration(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSTrafficLightLogic::getNextSwitchTime(), and MSTrafficLightLogic::MSTrafficLightLogic().
|
private |
Definition at line 219 of file MSSOTLTrafficLightLogic.h.
Referenced by init(), MSSOTLTrafficLightLogic(), and ~MSSOTLTrafficLightLogic().
|
private |
Definition at line 222 of file MSSOTLTrafficLightLogic.h.
Referenced by getPhaseIndexWithMaxCTS(), isThresholdPassed(), resetCTS(), setupCTS(), and updateCTS().
|
private |
Definition at line 229 of file MSSOTLTrafficLightLogic.h.
Referenced by getPhaseIndexWithMaxCTS(), setupCTS(), and trySwitch().