![]() |
Eclipse SUMO - Simulation of Urban MObility
|
The parent class for traffic light logics. More...
#include <MSTrafficLightLogic.h>
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< 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 arrival lanes subjected to this tls. More... | |
typedef std::vector< LaneVector > | LaneVectorVector |
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::string | getParameter (const std::string &key, const std::string &defaultValue="") const |
Returns the value for a given key. More... | |
const std::map< std::string, std::string > & | getParametersMap () const |
Returns the inner key/value map. More... | |
std::string | getParametersStr () const |
Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN". More... | |
virtual void | init (NLDetectorBuilder &nb) |
Initialises the tls with information about incoming lanes. More... | |
bool | isSelected () const |
whether this logic is selected in the GUI 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, const TrafficLightType logicType, const SUMOTime delay, const std::map< std::string, std::string > ¶meters) | |
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 | setParameters (const Parameterised ¶ms) |
set the inner key/value map in map<string, string> format More... | |
void | setParametersMap (const std::map< std::string, std::string > ¶msMap) |
set the inner key/value map in map<string, string> format More... | |
void | setParametersStr (const std::string ¶msString) |
set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN" More... | |
void | unsetParameter (const std::string &key) |
Removes a parameter. More... | |
void | updateParameters (const std::map< std::string, std::string > &mapArg) |
Adds or updates all given parameters from the map. More... | |
void | writeParams (OutputDevice &device) const |
write Params in the given outputdevice More... | |
virtual | ~MSTrafficLightLogic () |
Destructor. More... | |
Handling of controlled links | |
virtual void | addLink (MSLink *link, MSLane *lane, int pos) |
Adds a link on building. More... | |
void | ignoreLinkIndex (int pos) |
ignore pedestrian crossing index in mesosim 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 | |
virtual SUMOTime | trySwitch ()=0 |
Switches to the next phase. More... | |
virtual void | activateProgram () |
called when switching programs More... | |
virtual void | deactivateProgram () |
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 int | getPhaseNumber () const =0 |
Returns the number of phases. More... | |
virtual const Phases & | getPhases () const =0 |
Returns the phases of this tls program. More... | |
virtual const MSPhaseDefinition & | getPhase (int givenstep) const =0 |
Returns the definition of the phase from the given position within the plan. More... | |
TrafficLightType | getLogicType () const |
Returns the type of the logic. More... | |
Dynamic Information Retrieval | |
virtual int | getCurrentPhaseIndex () const =0 |
Returns the current index within the program. More... | |
virtual const MSPhaseDefinition & | getCurrentPhaseDef () 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 | |
static bool | areParametersValid (const std::string &value, bool report=false) |
check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN" More... | |
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 | |
bool | myAmActive |
whether the current program is active More... | |
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... | |
std::set< int > | myIgnoredIndices |
list of indices that are ignored in mesoscopic simulatino 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... | |
const TrafficLightType | myLogicType |
The type of the logic. More... | |
std::vector< SUMOTime > | myOverridingTimes |
A list of duration overrides. More... | |
const std::string | myProgramID |
The id of the logic. More... | |
SwitchCommand * | mySwitchCommand |
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... | |
MSTrafficLightLogic & | operator= (const MSTrafficLightLogic &s) |
invalidated assignment operator More... | |
Static Private Member Functions | |
static bool | isParameterValid (const std::string &value, bool report) |
check if given string can be parsed to a parameter of type "key=value" More... | |
Private Attributes | |
std::map< std::string, std::string > | myMap |
The key->value map. More... | |
The parent class for traffic light logics.
Definition at line 55 of file MSTrafficLightLogic.h.
typedef std::vector<MSLane*> MSTrafficLightLogic::LaneVector |
Definition of the list of arrival lanes subjected to this tls.
Definition at line 70 of file MSTrafficLightLogic.h.
typedef std::vector<LaneVector> MSTrafficLightLogic::LaneVectorVector |
Definition of a list that holds lists of lanes that do have the same attribute.
Definition at line 73 of file MSTrafficLightLogic.h.
typedef std::vector<MSLink*> MSTrafficLightLogic::LinkVector |
Definition of the list of links that are subjected to this tls.
Definition at line 64 of file MSTrafficLightLogic.h.
typedef std::vector<LinkVector> MSTrafficLightLogic::LinkVectorVector |
Definition of a list that holds lists of links that do have the same attribute.
Definition at line 67 of file MSTrafficLightLogic.h.
typedef std::vector<MSPhaseDefinition*> MSTrafficLightLogic::Phases |
Definition of a list of phases, being the junction logic.
Definition at line 61 of file MSTrafficLightLogic.h.
MSTrafficLightLogic::MSTrafficLightLogic | ( | MSTLLogicControl & | tlcontrol, |
const std::string & | id, | ||
const std::string & | programID, | ||
const TrafficLightType | logicType, | ||
const SUMOTime | delay, | ||
const std::map< std::string, std::string > & | parameters | ||
) |
Constructor.
[in] | tlcontrol | The tls control responsible for this tls |
[in] | id | This tls' id |
[in] | programID | This tls' sub-id (program id) |
[in] | logicType | This tls' type (static, actuated etc.) |
[in] | delay | The time to wait before the first switch |
[in] | parameters | Additional parameters (especially for actuated logics) |
Definition at line 100 of file MSTrafficLightLogic.cpp.
References MSEventControl::addEvent(), MSNet::getBeginOfTimestepEvents(), MSNet::getInstance(), and mySwitchCommand.
|
virtual |
Destructor.
Definition at line 188 of file MSTrafficLightLogic.cpp.
|
private |
invalidated copy constructor
|
virtual |
called when switching programs
Reimplemented in MSActuatedTrafficLightLogic.
Definition at line 378 of file MSTrafficLightLogic.cpp.
References myAmActive.
Referenced by MSActuatedTrafficLightLogic::activateProgram(), and MSTLLogicControl::TLSLogicVariants::addLogic().
|
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.
[in] | logic | The logic to use the information about controlled links/lanes from |
Reimplemented in MSRailSignal, MSRailCrossing, and MSOffTrafficLightLogic.
Definition at line 214 of file MSTrafficLightLogic.cpp.
References myIgnoredIndices, myLanes, and 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 MSRailSignal, and MSRailCrossing.
Definition at line 196 of file MSTrafficLightLogic.cpp.
References getCurrentPhaseDef(), MSNet::getInstance(), myLanes, myLinks, and MSLink::setTLState().
Referenced by MSRailCrossing::addLink(), and MSRailSignal::addLink().
void MSTrafficLightLogic::addOverridingDuration | ( | SUMOTime | duration | ) |
Changes the duration of the next phase.
[in] | duration | The new duration |
Definition at line 300 of file MSTrafficLightLogic.cpp.
References myOverridingTimes.
|
inlineinherited |
Adds this object to the given container.
[in,filled] | cont The container to add this item to |
Definition at line 126 of file Named.h.
References Named::StoringVisitor::add().
|
staticinherited |
check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN"
Definition at line 166 of file Parameterised.cpp.
References StringTokenizer::getVector(), Parameterised::isParameterValid(), and WRITE_WARNING.
Referenced by GNEAccess::isValid(), GNEBusStop::isValid(), GNECalibrator::isValid(), GNECalibratorFlow::isValid(), GNEChargingStation::isValid(), GNEClosingLaneReroute::isValid(), GNEClosingReroute::isValid(), GNEContainerStop::isValid(), GNEDestProbReroute::isValid(), GNEDetectorE1::isValid(), GNEDetectorE1Instant::isValid(), GNEDetectorE2::isValid(), GNEDetectorE3::isValid(), GNEDetectorEntryExit::isValid(), GNEParkingArea::isValid(), GNEParkingAreaReroute::isValid(), GNEParkingSpace::isValid(), GNEPOI::isValid(), GNEPoly::isValid(), GNERerouter::isValid(), GNERerouterInterval::isValid(), GNERouteProbe::isValid(), GNERouteProbReroute::isValid(), GNETAZ::isValid(), GNETAZSourceSink::isValid(), GNEVaporizer::isValid(), GNEVariableSpeedSign::isValid(), GNEVariableSpeedSignStep::isValid(), GNEPerson::isValid(), GNEPersonTrip::isValid(), GNERide::isValid(), GNERoute::isValid(), GNEVehicle::isValid(), GNEVehicleType::isValid(), GNEWalk::isValid(), GNEConnection::isValid(), GNECrossing::isValid(), GNEEdge::isValid(), GNEJunction::isValid(), GNELane::isValid(), and GNEFrameAttributesModuls::ParametersEditor::onCmdSetParameters().
|
pure virtual |
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 |
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSRailCrossing, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by NLJunctionControlBuilder::closeTrafficLightLogic(), libsumo::TrafficLight::setPhase(), libsumo::TrafficLight::setPhaseDuration(), and MSTLLogicControl::WAUTSwitchProcedure::switchToPos().
|
inherited |
Clears the parameter map.
Definition at line 100 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NLHandler::beginEdgeParsing(), and GNERouteHandler::closeRoute().
Returns the (uncontrolled) states of the controlled links.
Definition at line 222 of file MSTrafficLightLogic.cpp.
References myLinks.
|
virtual |
Reimplemented in MSActuatedTrafficLightLogic.
Definition at line 384 of file MSTrafficLightLogic.cpp.
References myAmActive.
Referenced by MSActuatedTrafficLightLogic::deactivateProgram().
|
pure virtual |
Returns the definition of the current phase.
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by addLink(), GUIJunctionWrapper::drawGL(), GUITrafficLightLogicWrapper::drawGL(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), GUITrafficLightLogicWrapper::getCurrentPhaseName(), MSTLLogicControl::getPhaseDef(), libsumo::TrafficLight::getPhaseName(), GUITrafficLightLogicWrapper::getPopUpMenu(), libsumo::TrafficLight::getRedYellowGreenState(), getSpentDuration(), MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP(), TraCIServerAPI_TrafficLight::processGet(), libsumo::TrafficLight::setPhaseName(), setTrafficLightSignals(), and MSFullExport::writeTLS().
|
pure virtual |
Returns the current index within the program.
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by GUIJunctionWrapper::drawGL(), GUITrafficLightLogicWrapper::drawGL(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), GUITrafficLightLogicWrapper::getCurrentPhase(), libsumo::TrafficLight::getPhase(), GUITrafficLightLogicWrapper::getPopUpMenu(), MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP(), and libsumo::TrafficLight::setPhaseDuration().
|
inline |
Returns the cycle time (in ms)
Definition at line 270 of file MSTrafficLightLogic.h.
References myDefaultCycleTime.
Referenced by NLJunctionControlBuilder::closeTrafficLightLogic(), and MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP().
|
inherited |
Returns the value for a given key converted to a double.
[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 82 of file Parameterised.cpp.
References Parameterised::myMap, StringUtils::toDouble(), and WRITE_WARNING.
Referenced by MSDevice_Battery::buildVehicleDevices(), MSSOTLPolicy5DStimulus::getStimCox(), MSSOTLPolicy5DStimulus::getStimCoxExpDispersionIn(), MSSOTLPolicy5DStimulus::getStimCoxExpDispersionOut(), MSSOTLPolicy5DStimulus::getStimCoxExpIn(), MSSOTLPolicy5DStimulus::getStimCoxExpOut(), MSSOTLPolicy5DStimulus::getStimDivisorDispersionIn(), MSSOTLPolicy5DStimulus::getStimDivisorDispersionOut(), MSSOTLPolicy5DStimulus::getStimDivisorIn(), MSSOTLPolicy5DStimulus::getStimDivisorOut(), MSSOTLPolicy5DStimulus::getStimOffsetDispersionIn(), MSSOTLPolicy5DStimulus::getStimOffsetDispersionOut(), MSSOTLPolicy5DStimulus::getStimOffsetIn(), MSSOTLPolicy5DStimulus::getStimOffsetOut(), and MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus().
|
inlineinherited |
Returns the id.
Definition at line 76 of file Named.h.
References Named::myID.
Referenced by MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), LaneStoringVisitor::add(), Named::StoringVisitor::add(), MSVehicleTransfer::add(), MSPModel_Striping::add(), MSPModel_Remote::add(), PCPolyContainer::add(), ShapeContainer::add(), MSDetectorControl::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NLHandler::addConnection(), NBLoadedSUMOTLDef::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSLane::addNeigh(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), RONet::addRouteDef(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), ROVehicle::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), libsumo::Helper::applySubscriptionFilters(), GUITrafficLightLogicWrapper::begin2TrackPhases(), 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(), MSRailSignal::LinkInfo::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NIVissimEdge::buildNBEdge(), NGEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSRailSignal::DriveWay::buildRoute(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSVehicle::canReverse(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSEdge::checkAndRegisterBiDirEdge(), MSRailSignal::DriveWay::checkCrossingFlanks(), MSLane::checkForPedestrians(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSLCM_SL2015::checkStrategicChange(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), ShapeContainer::clearHighlights(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), NBTrafficLightDefinition::collectAllLinks(), NBTrafficLightDefinition::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), IntermodalRouter< E, L, N, V >::compute(), ROJTRRouter::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), NBNodeTypeComputer::computeNodeTypes(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), MSVehicle::Manoeuvre::configureEntryManoeuvre(), MSVehicle::Manoeuvre::configureExitManoeuvre(), NGNet::connect(), NBOwnTLDef::corridorLike(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSActuatedTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), MSVehicle::Manoeuvre::entryManoeuvreIsComplete(), METriggeredCalibrator::execute(), Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSCalibrator::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), libsumo::Helper::findCloserLane(), MSRailSignal::DriveWay::findFlankProtection(), MSDevice_SSM::findFoeConflictLane(), libsumo::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), NBTrafficLightDefinition::forbids(), NBNodeCont::generateNodeClusters(), GUITrafficLightLogicWrapper::getActiveTLLogic(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSRailSignal::getClickableTLLinkID(), libsumo::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), NBNodeShapeComputer::getDefaultRadius(), MSLink::getDescription(), NBTrafficLightDefinition::getDescription(), GUIPerson::getDestinationEdgeID(), RODFNet::getDetectorEdge(), MSActuatedTrafficLightLogic::getDetectorPriority(), GUIPerson::getEdgeID(), GUIMEVehicle::getEdgeID(), MSMeanData::getEdgeID(), libsumo::Lane::getEdgeID(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSCalibrator::getID(), NBEdge::getID(), libsumo::InductionLoop::getLaneID(), libsumo::LaneArea::getLaneID(), libsumo::Vehicle::getLaneID(), MSParkingArea::getLastFreePosWithReservation(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), MSLane::getLinkTo(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), GNEDialogACChooser::getObjectName(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), libsumo::Simulation::getParameter(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUILane::getParentName(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), PolygonDynamics::getPolygonID(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), libsumo::Person::getRoadID(), libsumo::Vehicle::getRoadID(), MSLCM_LC2013::getRoundaboutDistBonus(), libsumo::Vehicle::getRouteID(), MSVehicle::getSafeFollowSpeed(), libsumo::Person::getStage(), MSContainer::MSContainerStage_Driving::getStageSummary(), MSContainer::MSContainerStage_Tranship::getStageSummary(), MSTransportable::Stage_Trip::getStageSummary(), MSTransportable::Stage_Waiting::getStageSummary(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSPerson::MSPersonStage_Driving::getStageSummary(), MSNet::getStoppingPlaceID(), MSLane::getSurroundingVehicles(), MSActuatedTrafficLightLogic::getTarget(), MSRailSignal::getTLLinkID(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSEdge::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSVehicle::haveValidStopEdges(), libsumo::POI::highlight(), MSVehicle::ignoreRed(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicles(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), MSVehicle::isLeader(), MESegment::isOpen(), RODFNet::isSource(), NIImporter_VISUM::isSplitEdge(), MSSOTLTrafficLightLogic::isThresholdPassed(), MESegment::jamThresholdForSpeed(), NBNodeShapeComputer::joinSameDirectionEdges(), MSAbstractLaneChangeModel::laneChangeOutput(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), MSSOTLE2Sensors::meanVehiclesSpeed(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), 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(), NIImporter_SUMO::myEndElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), MSPModel_Striping::nextBlocking(), MSE2Collector::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Bluelight::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Transportable::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Bluelight::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_Example::notifyMove(), MSDevice_SSM::notifyMove(), MSE2Collector::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSDevice_ToC::notifyMove(), GNETLSEditorFrame::onCmdDefSwitch(), GUIViewTraffic::onGamingClick(), MSLink::opened(), RORouteHandler::openRoute(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), RODFNet::idComp::operator()(), NIImporter_VISUM::parse_Connectors_legacy(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_Turns(), NLTriggerBuilder::parseAndBuildCalibrator(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), AGStreet::print(), MSDevice_SSM::processEncounters(), MSVehicle::processLaneAdvances(), MSVehicle::processLinkApproaches(), MSVehicle::processNextStop(), NIXMLNodesHandler::processNodeType(), TraCIServerAPI_Vehicle::processSet(), MEVehicle::processStop(), NIXMLNodesHandler::processTrafficLightDefinitions(), MSDelayBasedTrafficLightLogic::proposeProlongation(), NBNodeCont::pruneClusterFringe(), MSPModel_Striping::PState::PState(), MSOffTrafficLightLogic::rebuildPhase(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), MSLink::removeApproaching(), MSVehicle::removePassedDriveItems(), GNEJunction::removeTLSConnections(), NBNodeCont::rename(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), GNEJunction::replaceIncomingConnections(), MSVehicle::replaceParkingArea(), MSVehicle::replaceRoute(), MSBaseVehicle::replaceRouteEdges(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NLEdgeControlBuilder::reportCurrentEdgeOrLane(), MSDevice_ToC::requestToC(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), RONet::saveAndRemoveRoutesUntil(), ROPerson::Ride::saveAsXML(), ROVehicle::saveAsXML(), MSBaseVehicle::saveState(), MSLane::saveState(), MSDevice::saveState(), MSDevice_Routing::saveState(), MSDevice_Tripinfo::saveState(), MSDevice_Vehroutes::saveState(), MSTransportableDevice_Routing::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSLink::setApproaching(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NLEdgeControlBuilder::setDefaultStopOffsets(), MSChargingStation::setEfficency(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), NIImporter_OpenDrive::setNodeSecure(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSStopOut::stopStarted(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), MSDevice_ToC::triggerDownwardToC(), MSDevice_ToC::triggerMRM(), MSDevice_ToC::triggerUpwardToC(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), PolygonDynamics::update(), MSDevice_SSM::updateAndWriteOutput(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), NLEdgeControlBuilder::updateCurrentLaneStopOffsets(), MSVehicle::updateDriveItems(), GNETLSEditorFrame::TLSJunction::updateJunctionDescription(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), NBNodeTypeComputer::validateRailCrossings(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), MSInstantInductLoop::write(), NBParking::write(), MSFCDExport::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSLink::writeApproaching(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeDistrict(), MSMeanData::writeEdge(), NWWriter_SUMO::writeEdge(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSFullExport::writeLane(), MSQueueExport::writeLane(), MSXMLRawOut::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(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSE2Collector::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSRouteProbe::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 69 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSVehicle::checkRewindLinkLanes(), AStarRouter< E, V >::compute(), DijkstraRouter< E, V >::compute(), NBEdge::computeEdge2Edges(), NBEdge::computeLanes2Edges(), NBOwnTLDef::computeLogicAndConts(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSRailSignal::DriveWay::findProtection(), NBPTLineCont::findWay(), MSCFModel_CACC::followSpeed(), MSCFModel_W99::followSpeed(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestCombination(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSLaneChanger::getColumnleader(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), GUIVehicle::getLaneID(), MSVehicle::getLatOffset(), MSLane::getLeaderOnConsecutive(), MSLaneChanger::getRealLeader(), GUIVehicle::getShadowLaneID(), GUIVehicle::getTargetLaneID(), NBEdge::init(), MSLane::isInsertionSuccess(), MESegment::isOpen(), joinNamedToString(), joinNamedToStringSorting(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), operator<<(), NBEdge::recheckLanes(), MSTriggeredRerouter::rerouteParkingArea(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().
|
pure virtual |
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 |
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSRailCrossing, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by MSTLLogicControl::WAUTSwitchProcedure::getDiffToStartOfPhase(), and MSTLLogicControl::WAUTSwitchProcedure::switchToPos().
|
inline |
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 191 of file MSTrafficLightLogic.h.
References myEmptyLaneVector, and myLanes.
Referenced by GUITrafficLightLogicWrapper::drawGL(), Command_SaveTLSSwitches::execute(), MSActuatedTrafficLightLogic::getMinimumMinDuration(), MSActuatedTrafficLightLogic::hasMajor(), MSActuatedTrafficLightLogic::init(), and MSDelayBasedTrafficLightLogic::proposeProlongation().
|
inline |
Returns the list of lists of all lanes controlled by this tls.
Definition at line 182 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().
int MSTrafficLightLogic::getLinkIndex | ( | const MSLink *const | link | ) | const |
Returns the index of the given link.
[in] | link | The link to retrieve the index for |
Definition at line 264 of file MSTrafficLightLogic.cpp.
References myLinks.
Referenced by GUITrafficLightLogicWrapper::getLinkIndex().
|
inline |
Returns the list of lists of all affected links.
Definition at line 203 of file MSTrafficLightLogic.h.
References myLinks.
Referenced by MSTLLogicControl::TLSLogicVariants::addLogic(), GUINet::createTLWrapper(), GUITLLogicPhasesTrackerWindow::drawValues(), Command_SaveTLSSwitches::execute(), libsumo::TrafficLight::getControlledJunctions(), libsumo::TrafficLight::getControlledLinks(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), and MSOffTrafficLightLogic::rebuildPhase().
|
inline |
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 212 of file MSTrafficLightLogic.h.
References myLinks.
Referenced by libsumo::TrafficLight::getServedPersonCount(), MSDeterministicHiLevelTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), and MSSwarmTrafficLightLogic::init().
|
inline |
Returns the type of the logic.
Definition at line 245 of file MSTrafficLightLogic.h.
References myLogicType.
SUMOTime MSTrafficLightLogic::getNextSwitchTime | ( | ) | const |
Returns the assumed next switch time.
The time may change in case of adaptive/actuated traffic lights.
Definition at line 281 of file MSTrafficLightLogic.cpp.
References MSTrafficLightLogic::SwitchCommand::getNextSwitchTime(), and mySwitchCommand.
Referenced by getSpentDuration(), and MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP().
|
pure virtual |
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 |
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSRailCrossing, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by MSTLLogicControl::WAUTSwitchProcedure::getDiffToStartOfPhase(), and MSTLLogicControl::WAUTSwitchProcedure::isPosAtGSP().
|
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 72 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NBEdge::addRestrictedLane(), FareModul::addStop(), NBEdge::append(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), ROEdge::cacheParamRestrictions(), SUMOVTypeParameter::cacheParamRestrictions(), GNEEdge::drawEdgeName(), GUIEdge::drawGL(), GNEConnection::drawGL(), GUIBaseVehicle::drawOnPos(), libsumo::Simulation::findIntermodalRoute(), MSSwarmTrafficLightLogic::getBetaNo(), MSSwarmTrafficLightLogic::getBetaSp(), MSDevice::getBoolParam(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSSwarmTrafficLightLogic::getChangePlanProbability(), GUILane::getColorValue(), GUIVehicle::getColorValue(), GNELane::getColorValue(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice::getFloatParam(), MSSwarmTrafficLightLogic::getForgettingCox(), MSSwarmTrafficLightLogic::getGammaNo(), MSSwarmTrafficLightLogic::getGammaSp(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSSwarmTrafficLightLogic::getLearningCox(), MSSwarmTrafficLightLogic::getMaxCongestionDuration(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), GUIBaseVehicle::getOptionalName(), GUIJunctionWrapper::getOptionalName(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Edge::getParameter(), libsumo::Lane::getParameter(), libsumo::Simulation::getParameter(), libsumo::POI::getParameter(), libsumo::Polygon::getParameter(), libsumo::Person::getParameter(), libsumo::Route::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Vehicle::getParameter(), MSSwarmTrafficLightLogic::getPheroMaxVal(), MSSwarmTrafficLightLogic::getPoliciesParam(), MSSwarmTrafficLightLogic::getReinforcementMode(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSDevice::getStringParam(), MSSwarmTrafficLightLogic::getThetaInit(), MSSwarmTrafficLightLogic::getThetaMax(), MSSwarmTrafficLightLogic::getThetaMin(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), MSSOTLPhasePolicy::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), PushButtonLogic::init(), SigmoidLogic::init(), MSVehicleType::initRailVisualizationParameters(), GNEVehicleType::initRailVisualizationParameters(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), GNEVehicleType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), NBEdgeCont::splitAt(), MSDevice_SSM::useGeoCoords(), NWWriter_DlrNavteq::writeLinksUnsplitted(), and NWWriter_OpenDrive::writeRoadObjects().
|
inherited |
Returns the inner key/value map.
Definition at line 106 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_SUMO::_loadNetwork(), NBEdge::addLane(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GUIJunctionWrapper::getParameterWindow(), GUILane::getParameterWindow(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIPointOfInterest::getParameterWindow(), GUIPolygon::getParameterWindow(), GUIContainer::getTypeParameterWindow(), GUIPerson::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), NIImporter_OpenStreetMap::insertEdge(), NBEdge::NBEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GUIParameterTableWindow::numParams(), GNEVehicleType::overwriteVType(), TraCIServerAPI_TrafficLight::processGet(), and Parameterised::setParameters().
|
inherited |
Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".
Definition at line 112 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by GNEAccess::getAttribute(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEClosingLaneReroute::getAttribute(), GNEClosingReroute::getAttribute(), GNEContainerStop::getAttribute(), GNEDestProbReroute::getAttribute(), GNEDetectorE1::getAttribute(), GNEDetectorE1Instant::getAttribute(), GNEDetectorE2::getAttribute(), GNEDetectorE3::getAttribute(), GNEDetectorEntryExit::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingAreaReroute::getAttribute(), GNEParkingSpace::getAttribute(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), GNERerouter::getAttribute(), GNERerouterInterval::getAttribute(), GNERouteProbe::getAttribute(), GNERouteProbReroute::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEVariableSpeedSignStep::getAttribute(), GNEPerson::getAttribute(), GNEPersonTrip::getAttribute(), GNERide::getAttribute(), GNERoute::getAttribute(), GNEVehicle::getAttribute(), GNEVehicleType::getAttribute(), GNEWalk::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEJunction::getAttribute(), and GNELane::getAttribute().
|
pure virtual |
Returns the definition of the phase from the given position within the plan.
[in] | givenstep | The index of the phase within the plan |
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by MSTLLogicControl::TLSLogicVariants::addLogic(), libsumo::TrafficLight::setPhase(), and MSTLLogicControl::WAUTSwitchProcedure::switchToPos().
Returns the index of the logic at the given simulation step.
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSRailCrossing, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
|
pure virtual |
Returns the number of phases.
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by libsumo::TrafficLight::getServedPersonCount(), and libsumo::TrafficLight::setPhase().
|
pure virtual |
Returns the phases of this tls program.
Implemented in MSSimpleTrafficLightLogic, MSRailSignal, MSPhasedTrafficLightLogic, and MSOffTrafficLightLogic.
Referenced by NLJunctionControlBuilder::closeTrafficLightLogic(), GUITrafficLightLogicWrapper::drawGL(), libsumo::TrafficLight::getServedPersonCount(), init(), and initMesoTLSPenalties().
|
inline |
Returns this tl-logic's id.
Definition at line 174 of file MSTrafficLightLogic.h.
References myProgramID.
Referenced by Command_SaveTLSProgram::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitches::execute(), Command_SaveTLSSwitchStates::execute(), GUITrafficLightLogicWrapper::getParameterWindow(), libsumo::TrafficLight::getProgram(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), init(), and GUIViewTraffic::onGamingClick().
SUMOTime MSTrafficLightLogic::getSpentDuration | ( | ) | const |
Returns the duration spent in the current phase.
Definition at line 287 of file MSTrafficLightLogic.cpp.
References MSPhaseDefinition::duration, getCurrentPhaseDef(), MSNet::getCurrentTimeStep(), MSNet::getInstance(), and getNextSwitchTime().
void MSTrafficLightLogic::ignoreLinkIndex | ( | int | pos | ) |
ignore pedestrian crossing index in mesosim
Definition at line 366 of file MSTrafficLightLogic.cpp.
References myIgnoredIndices.
|
virtual |
Initialises the tls with information about incoming lanes.
[in] | nb | The detector builder |
[in] | edgeContinuations | Information about edge predecessors/successors |
ProcessError | If something fails on initialisation |
Reimplemented in MSSwarmTrafficLightLogic, MSSOTLTrafficLightLogic, MSSOTLHiLevelTrafficLightLogic, MSRailSignal, MSRailCrossing, MSOffTrafficLightLogic, MSDeterministicHiLevelTrafficLightLogic, MSDelayBasedTrafficLightLogic, and MSActuatedTrafficLightLogic.
Definition at line 115 of file MSTrafficLightLogic.cpp.
References SUMOXMLDefinitions::ALLOWED_TLS_LINKSTATES, Named::getID(), getPhases(), getProgramID(), MSGlobals::gMesoTLSPenalty, initMesoTLSPenalties(), LINKSTATE_TL_GREEN_MAJOR, LINKSTATE_TL_GREEN_MINOR, LINKSTATE_TL_RED, MIN3(), myIgnoredIndices, myLanes, SVC_PEDESTRIAN, toString(), and WRITE_WARNING.
Referenced by NLJunctionControlBuilder::closeTrafficLightLogic(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), and libsumo::TrafficLight::setCompleteRedYellowGreenDefinition().
|
private |
initialize optional meso penalties
XXX penalty for wrap-around red phases is underestimated
Definition at line 311 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().
|
staticprivateinherited |
check if given string can be parsed to a parameter of type "key=value"
Definition at line 189 of file Parameterised.cpp.
References StringTokenizer::getVector(), SUMOXMLDefinitions::isValidParameterKey(), and SUMOXMLDefinitions::isValidParameterValue().
Referenced by Parameterised::areParametersValid().
bool MSTrafficLightLogic::isSelected | ( | ) | const |
whether this logic is selected in the GUI
Definition at line 372 of file MSTrafficLightLogic.cpp.
References MSNet::getInstance(), and MSNet::isSelected().
|
inherited |
Returns whether the parameter is known.
[in] | key | The key to ask for |
Definition at line 66 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NBEdge::append(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::getBoolParam(), NWWriter_DlrNavteq::getBrunnelType(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice::getFloatParam(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), libsumo::Simulation::getParameter(), MSDevice::getStringParam(), MSTriggeredRerouter::getWeight(), MSVehicleType::initRailVisualizationParameters(), GNEVehicleType::initRailVisualizationParameters(), GNEVehicleType::overwriteVType(), MSDevice_SSM::requestsTrajectories(), MSDevice_SSM::useGeoCoords(), and NWWriter_OpenDrive::writeRoadObjects().
|
private |
invalidated assignment operator
Resets the states of controlled links.
[in] | vals | The state of controlled links to use |
Definition at line 251 of file MSTrafficLightLogic.cpp.
References MSNet::getCurrentTimeStep(), MSNet::getInstance(), and myLinks.
void MSTrafficLightLogic::setCurrentDurationIncrement | ( | SUMOTime | delay | ) |
Delays current phase by the given delay.
[in] | delay | The time by which the current phase shall be delayed |
Definition at line 306 of file MSTrafficLightLogic.cpp.
References myCurrentDurationIncrement.
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 84 of file Named.h.
References Named::myID.
Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBEdgeCont::remapIDs(), NBEdgeCont::rename(), NBNodeCont::rename(), GNEJunction::setAttribute(), and IntermodalNetwork< E, L, N, V >::splitEdge().
|
inherited |
Sets a parameter.
[in] | key | The parameter's name |
[in] | value | The parameter's value |
Definition at line 46 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NLHandler::addDistrict(), RONetHandler::addParam(), SUMORouteHandler::addParam(), ShapeHandler::addPOI(), NBEdge::append(), NIImporter_OpenStreetMap::insertNodeChecking(), NBNodeCont::joinNodeCluster(), NBEdge::Lane::Lane(), NIImporter_OpenDrive::loadNetwork(), MSStateHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIXMLTrafficLightsHandler::myStartElement(), ShapeHandler::myStartElement(), GNEAdditionalHandler::parseParameter(), GNEVehicleType::setAttribute(), NIImporter_OpenDrive::setLaneAttributes(), libsumo::Edge::setParameter(), libsumo::POI::setParameter(), libsumo::Polygon::setParameter(), libsumo::Lane::setParameter(), libsumo::Route::setParameter(), and libsumo::TrafficLight::setParameter().
|
inherited |
set the inner key/value map in map<string, string> format
Definition at line 127 of file Parameterised.cpp.
References Parameterised::getParametersMap(), and Parameterised::myMap.
|
inherited |
set the inner key/value map in map<string, string> format
Definition at line 133 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"
Definition at line 139 of file Parameterised.cpp.
References StringTokenizer::getVector(), and Parameterised::myMap.
Referenced by GNEAccess::setAttribute(), GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEClosingLaneReroute::setAttribute(), GNEClosingReroute::setAttribute(), GNEContainerStop::setAttribute(), GNEDestProbReroute::setAttribute(), GNEDetectorE1::setAttribute(), GNEDetectorE1Instant::setAttribute(), GNEDetectorE2::setAttribute(), GNEDetectorE3::setAttribute(), GNEDetectorEntryExit::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingAreaReroute::setAttribute(), GNEParkingSpace::setAttribute(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), GNERerouter::setAttribute(), GNERerouterInterval::setAttribute(), GNERouteProbe::setAttribute(), GNERouteProbReroute::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEVariableSpeedSignStep::setAttribute(), GNEPerson::setAttribute(), GNEPersonTrip::setAttribute(), GNERide::setAttribute(), GNERoute::setAttribute(), GNEVehicle::setAttribute(), GNEVehicleType::setAttribute(), GNEWalk::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), and GNELane::setAttribute().
bool MSTrafficLightLogic::setTrafficLightSignals | ( | SUMOTime | t | ) | const |
Applies the current signal states to controlled links.
[in] | t | The current time |
Definition at line 235 of file MSTrafficLightLogic.cpp.
References getCurrentPhaseDef(), MSPhaseDefinition::getState(), and myLinks.
Referenced by MSTLLogicControl::TLSLogicVariants::addLogic(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSRailCrossing::init(), and MSRailSignal::init().
|
pure virtual |
Switches to the next phase.
Implemented in MSSOTLTrafficLightLogic, MSSimpleTrafficLightLogic, MSRailSignal, MSRailCrossing, MSOffTrafficLightLogic, MSDelayBasedTrafficLightLogic, and MSActuatedTrafficLightLogic.
|
inherited |
Removes a parameter.
[in] | key | The parameter's name |
Definition at line 52 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_OpenStreetMap::insertEdge(), and GNEVehicleType::setAttribute().
|
inherited |
Adds or updates all given parameters from the map.
[in] | mapArg | The keys/values to insert |
Definition at line 58 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_SUMO::_loadNetwork(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NLHandler::closeEdge(), NLJunctionControlBuilder::closeJunction(), NBTrafficLightDefinition::compute(), NIImporter_OpenStreetMap::insertEdge(), NBEdge::NBEdge(), and NBLoadedSUMOTLDef::NBLoadedSUMOTLDef().
|
inherited |
write Params in the given outputdevice
Definition at line 154 of file Parameterised.cpp.
References OutputDevice::closeTag(), StringUtils::escapeXML(), Parameterised::myMap, OutputDevice::openTag(), SUMO_ATTR_KEY, SUMO_ATTR_VALUE, SUMO_TAG_PARAM, and OutputDevice::writeAttr().
Referenced by ROPerson::saveAsXML(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), SUMOVTypeParameter::write(), GNEAdditional::writeAdditional(), NWWriter_SUMO::writeConnection(), GNEPerson::writeDemandElement(), GNEPersonTrip::writeDemandElement(), GNERide::writeDemandElement(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), GNEWalk::writeDemandElement(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().
|
protected |
whether the current program is active
Definition at line 441 of file MSTrafficLightLogic.h.
Referenced by activateProgram(), and deactivateProgram().
|
protected |
A value for enlarge the current duration.
Definition at line 426 of file MSTrafficLightLogic.h.
Referenced by setCurrentDurationIncrement(), and MSSimpleTrafficLightLogic::trySwitch().
|
protected |
The cycle time (without changes)
Definition at line 432 of file MSTrafficLightLogic.h.
Referenced by getDefaultCycleTime(), MSPhasedTrafficLightLogic::getIndexFromOffset(), MSSimpleTrafficLightLogic::getIndexFromOffset(), MSPhasedTrafficLightLogic::getPhaseIndexAtTime(), MSSimpleTrafficLightLogic::getPhaseIndexAtTime(), MSOffTrafficLightLogic::MSOffTrafficLightLogic(), MSPhasedTrafficLightLogic::MSPhasedTrafficLightLogic(), MSRailSignal::MSRailSignal(), and MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic().
|
staticprotected |
An empty lane vector.
Definition at line 435 of file MSTrafficLightLogic.h.
Referenced by getLanesAt().
|
protectedinherited |
The name of the object.
Definition at line 133 of file Named.h.
Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), MSE2Collector::detectorUpdate(), GNEPOI::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), Named::getID(), NBEdge::getLaneID(), ROEdge::getStoredEffort(), MSLane::getSurroundingVehicles(), ROEdge::getTravelTime(), NBEdge::init(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSLane::isInsertionSuccess(), NBNode::NBNode(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), GNEPOI::setAttribute(), GNEPoly::setAttribute(), Named::setID(), MSSOTLTrafficLightLogic::setToATargetPhase(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
protected |
list of indices that are ignored in mesoscopic simulatino
Definition at line 438 of file MSTrafficLightLogic.h.
Referenced by adaptLinkInformationFrom(), ignoreLinkIndex(), and init().
|
protected |
The list of LaneVectors; each vector contains the incoming lanes that belong to the same link index.
Definition at line 420 of file MSTrafficLightLogic.h.
Referenced by adaptLinkInformationFrom(), addLink(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), getLanesAt(), getLaneVectors(), MSActuatedTrafficLightLogic::init(), MSDelayBasedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), init(), and MSSwarmTrafficLightLogic::resetLaneCheck().
|
protected |
The list of LinkVectors; each vector contains the links that belong to the same link index.
Definition at line 417 of file MSTrafficLightLogic.h.
Referenced by adaptLinkInformationFrom(), addLink(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), collectLinkStates(), getLinkIndex(), getLinks(), getLinksAt(), MSActuatedTrafficLightLogic::init(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailCrossing::init(), MSRailSignal::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), initMesoTLSPenalties(), MSOffTrafficLightLogic::rebuildPhase(), MSSwarmTrafficLightLogic::resetLaneCheck(), resetLinkStates(), setTrafficLightSignals(), and MSRailSignal::updateCurrentPhase().
|
protected |
The type of the logic.
Definition at line 414 of file MSTrafficLightLogic.h.
Referenced by getLogicType().
|
privateinherited |
The key->value map.
Definition at line 120 of file Parameterised.h.
Referenced by Parameterised::clearParameter(), Parameterised::getDouble(), Parameterised::getParameter(), Parameterised::getParametersMap(), Parameterised::getParametersStr(), Parameterised::knowsParameter(), Parameterised::setParameter(), Parameterised::setParameters(), Parameterised::setParametersMap(), Parameterised::setParametersStr(), Parameterised::unsetParameter(), Parameterised::updateParameters(), and Parameterised::writeParams().
|
protected |
A list of duration overrides.
Definition at line 423 of file MSTrafficLightLogic.h.
Referenced by addOverridingDuration(), and MSSimpleTrafficLightLogic::trySwitch().
|
protected |
The id of the logic.
Definition at line 411 of file MSTrafficLightLogic.h.
Referenced by getProgramID(), MSActuatedTrafficLightLogic::init(), and MSDelayBasedTrafficLightLogic::init().
|
protected |
The current switch command.
Definition at line 429 of file MSTrafficLightLogic.h.
Referenced by MSPhasedTrafficLightLogic::changeStepAndDuration(), MSSimpleTrafficLightLogic::changeStepAndDuration(), getNextSwitchTime(), and MSTrafficLightLogic().