![]() |
SUMO - Simulation of Urban MObility
|
The base class for traffic light logic definitions. More...
#include <NBTrafficLightDefinition.h>
Data Structures | |
struct | StreamPair |
data structure for caching needsCont information More... | |
Public Types | |
enum | TLColor { TLCOLOR_RED, TLCOLOR_YELLOW, TLCOLOR_REDYELLOW, TLCOLOR_GREEN, TLCOLOR_BLINK } |
An enumeration of possible tl-signal states. More... | |
Public Member Functions | |
void | addControlledInnerEdges (const std::vector< std::string > &edges) |
Adds the given ids into the list of inner edges controlled by the tls. More... | |
void | addTo (const StoringVisitor &cont) const |
Adds this object to the given container. More... | |
void | clearParameter () |
Clears the parameter map. More... | |
NBTrafficLightLogic * | compute (OptionsCont &oc) |
Computes the traffic light logic. More... | |
bool | foes (const NBEdge *const from1, const NBEdge *const to1, const NBEdge *const from2, const NBEdge *const to2) const |
Returns the information whether the given flows cross. More... | |
bool | forbids (const NBEdge *const possProhibitorFrom, const NBEdge *const possProhibitorTo, const NBEdge *const possProhibitedFrom, const NBEdge *const possProhibitedTo, bool regardNonSignalisedLowerPriority, bool sameNodeOnly=false) const |
Returns the information whether "prohibited" flow must let "prohibitor" flow pass. More... | |
std::vector< std::string > | getControlledInnerEdges () const |
Retrieve the ids of edges explicitly controlled by the tls. More... | |
const NBConnectionVector & | getControlledLinks () const |
returns the controlled links (depends on previous call to collectLinks) More... | |
NBConnectionVector & | getControlledLinks () |
returns the controlled links (non const version) 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 EdgeVector & | getIncomingEdges () const |
Returns the list of incoming edges (must be build first) More... | |
const std::map< std::string, std::string > & | getMap () const |
Returns the inner key/value map. More... | |
SUMOTime | getOffset () |
Returns the offset. More... | |
const std::string | getParameter (const std::string &key, const std::string &defaultValue="") const |
Returns the value for a given key. More... | |
const std::string & | getProgramID () const |
Returns the ProgramID. More... | |
TrafficLightType | getType () const |
get the algorithm type (static etc..) More... | |
virtual void | initNeedsContRelation () const |
bool | knowsParameter (const std::string &key) const |
Returns whether the parameter is known. More... | |
bool | mustBrake (const NBEdge *const from, const NBEdge *const to) const |
Returns the information whether the described flow must let any other flow pass. More... | |
bool | mustBrake (const NBConnection &possProhibited, const NBConnection &possProhibitor, bool regardNonSignalisedLowerPriority) const |
Returns the information whether the described flow must let the other flow pass. More... | |
bool | mustBrake (const NBEdge *const possProhibitedFrom, const NBEdge *const possProhibitedTo, const NBEdge *const possProhibitorFrom, const NBEdge *const possProhibitorTo, bool regardNonSignalisedLowerPriority) const |
Returns the information whether the described flow must let any other flow pass. More... | |
NBTrafficLightDefinition (const std::string &id, const std::vector< NBNode *> &junctions, const std::string &programID, SUMOTime offset, TrafficLightType type) | |
Constructor. More... | |
NBTrafficLightDefinition (const std::string &id, NBNode *junction, const std::string &programID, SUMOTime offset, TrafficLightType type) | |
Constructor. More... | |
NBTrafficLightDefinition (const std::string &id, const std::string &programID, SUMOTime offset, TrafficLightType type) | |
Constructor. More... | |
bool | needsCont (const NBEdge *fromE, const NBEdge *toE, const NBEdge *otherFromE, const NBEdge *otherToE) const |
virtual void | remapRemoved (NBEdge *removed, const EdgeVector &incoming, const EdgeVector &outgoing)=0 |
Replaces occurences of the removed edge in incoming/outgoing edges of all definitions. More... | |
virtual void | replaceRemoved (NBEdge *removed, int removedLane, NBEdge *by, int byLane)=0 |
Replaces a removed edge/lane. More... | |
virtual bool | rightOnRedConflict (int index, int foeIndex) const |
whether the given index must yield to the foeIndex while turing right on a red light 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... | |
virtual void | setParticipantsInformation () |
Builds the list of participating nodes/edges/links. More... | |
void | setProgramID (const std::string &programID) |
Sets the programID. More... | |
virtual void | setTLControllingInformation () const =0 |
Informs edges about being controlled by a tls. More... | |
virtual void | setType (TrafficLightType type) |
set the algorithm type (static etc..) More... | |
virtual void | shiftTLConnectionLaneIndex (NBEdge *edge, int offset) |
patches (loaded) signal plans by modifying lane indices More... | |
void | unsetParameter (const std::string &key) |
Removes a parameter. More... | |
void | updateParameter (const std::map< std::string, std::string > &mapArg) |
Adds or updates all given parameters from the map. More... | |
void | writeParams (OutputDevice &out) const |
virtual | ~NBTrafficLightDefinition () |
Destructor. More... | |
Access to controlled nodes | |
virtual void | addNode (NBNode *node) |
Adds a node to the traffic light logic. More... | |
virtual void | removeNode (NBNode *node) |
Removes the given node from the list of controlled nodes. More... | |
virtual void | removeConnection (const NBConnection &conn, bool reconstruct=true) |
removes the given connection from the traffic light if recontruct=true, reconstructs the logic and informs the edges for immediate use in NETEDIT More... | |
const std::vector< NBNode * > & | getNodes () const |
Returns the list of controlled nodes. 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... | |
Static Public Attributes | |
static const std::string | DefaultProgramID = "0" |
static const SUMOTime | UNSPECIFIED_DURATION |
Protected Types | |
typedef std::set< StreamPair > | NeedsContRelation |
typedef std::set< std::pair< int, int > > | RightOnRedConflicts |
Protected Member Functions | |
virtual bool | amInvalid () const |
void | collectAllLinks () |
helper method for use in NBOwnTLDef and NBLoadedSUMOTLDef More... | |
virtual void | collectEdges () |
Build the list of participating edges. More... | |
virtual void | collectLinks ()=0 |
Collects the links participating in this traffic light. More... | |
int | computeBrakingTime (double minDecel) const |
Computes the time vehicles may need to brake. More... | |
virtual NBTrafficLightLogic * | myCompute (int brakingTime)=0 |
Computes the traffic light logic finally in dependence to the type. More... | |
Protected Attributes | |
std::set< std::string > | myControlledInnerEdges |
Set of inner edges that shall be controlled, though. More... | |
NBConnectionVector | myControlledLinks |
The list of controlled links. More... | |
std::vector< NBNode * > | myControlledNodes |
The container with participating nodes. More... | |
EdgeVector | myEdgesWithin |
The list of edges within the area controlled by the tls. More... | |
std::string | myID |
The name of the object. More... | |
EdgeVector | myIncomingEdges |
The list of incoming edges. More... | |
NeedsContRelation | myNeedsContRelation |
bool | myNeedsContRelationReady |
SUMOTime | myOffset |
The offset in the program. More... | |
RightOnRedConflicts | myRightOnRedConflicts |
bool | myRightOnRedConflictsReady |
std::string | mySubID |
The tls program's subid. More... | |
TrafficLightType | myType |
The algorithm type for the traffic light. More... | |
Static Protected Attributes | |
static const std::string | DummyID = "dummy" |
id for temporary definitions More... | |
Static Private Member Functions | |
static std::set< NBEdge * > | collectReachable (EdgeVector outer, const EdgeVector &within, bool checkControlled) |
The base class for traffic light logic definitions.
A base class is necessary, as we have two cases: a) the logic is given by the imported network, or b) the logic is not given and we have to compute it by ourselves. In the first case, NBLoadedTLDef should be used, in the second NBOwnTLDef.
Definition at line 74 of file NBTrafficLightDefinition.h.
|
protected |
Definition at line 450 of file NBTrafficLightDefinition.h.
|
protected |
Definition at line 454 of file NBTrafficLightDefinition.h.
An enumeration of possible tl-signal states.
Definition at line 84 of file NBTrafficLightDefinition.h.
NBTrafficLightDefinition::NBTrafficLightDefinition | ( | const std::string & | id, |
const std::vector< NBNode *> & | junctions, | ||
const std::string & | programID, | ||
SUMOTime | offset, | ||
TrafficLightType | type | ||
) |
Constructor.
[in] | id | The id of the tls |
[in] | junctions | List of junctions controlled by this tls |
[in] | programID | The id of the added program ("subID") |
[in] | offset | The offset of the plan |
[in] | type | The algorithm type for the computed traffic light |
Definition at line 59 of file NBTrafficLightDefinition.cpp.
References myControlledNodes.
NBTrafficLightDefinition::NBTrafficLightDefinition | ( | const std::string & | id, |
NBNode * | junction, | ||
const std::string & | programID, | ||
SUMOTime | offset, | ||
TrafficLightType | type | ||
) |
Constructor.
[in] | id | The id of the tls |
[in] | junction | The (single) junction controlled by this tls |
[in] | programID | The id of the added program ("subID") |
[in] | offset | The offset of the plan |
[in] | type | The algorithm type for the computed traffic light |
Definition at line 86 of file NBTrafficLightDefinition.cpp.
References addNode().
NBTrafficLightDefinition::NBTrafficLightDefinition | ( | const std::string & | id, |
const std::string & | programID, | ||
SUMOTime | offset, | ||
TrafficLightType | type | ||
) |
Constructor.
[in] | id | The id of the tls |
[in] | programID | The id of the added program ("subID") |
[in] | offset | The offset of the plan |
[in] | type | The algorithm type for the computed traffic light |
Definition at line 98 of file NBTrafficLightDefinition.cpp.
|
virtual |
Destructor.
Definition at line 109 of file NBTrafficLightDefinition.cpp.
void NBTrafficLightDefinition::addControlledInnerEdges | ( | const std::vector< std::string > & | edges | ) |
Adds the given ids into the list of inner edges controlled by the tls.
[in] | edges | The list of edge ids which shall be controlled despite lying with the jointly controlled node cluster |
Definition at line 437 of file NBTrafficLightDefinition.cpp.
References myControlledInnerEdges.
Referenced by getNodes(), and NIXMLTrafficLightsHandler::initTrafficLightLogic().
|
virtual |
Adds a node to the traffic light logic.
[in] | node | A further node that shall be controlled by the tls |
Definition at line 417 of file NBTrafficLightDefinition.cpp.
References NBNode::addTrafficLight(), and myControlledNodes.
Referenced by NBLoadedSUMOTLDef::addConnection(), NBLoadedTLDef::addToSignalGroup(), GNEJunction::addTrafficLight(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBNode::invalidateTLS(), and NBTrafficLightDefinition().
|
inlineinherited |
Adds this object to the given container.
Definition at line 119 of file Named.h.
References Named::StoringVisitor::add().
|
protectedvirtual |
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 138 of file NBTrafficLightDefinition.cpp.
References myControlledLinks.
Referenced by compute(), and initNeedsContRelation().
|
inherited |
Clears the parameter map.
Definition at line 97 of file Parameterised.cpp.
References Parameterised::myMap.
|
protected |
helper method for use in NBOwnTLDef and NBLoadedSUMOTLDef
Definition at line 455 of file NBTrafficLightDefinition.cpp.
References NBEdge::Connection::fromLane, NBEdge::getConnectionsFromLane(), Named::getID(), NBEdge::getNumLanes(), NBEdge::getPermissions(), NBEdge::getToNode(), NBNode::getType(), isRailway(), NBEdge::mayBeTLSControlled(), myControlledLinks, myIncomingEdges, NODETYPE_RAIL_CROSSING, NBEdge::Connection::toEdge, NBEdge::Connection::toLane, toString(), and WRITE_WARNING.
Referenced by NBLoadedSUMOTLDef::collectLinks(), and NBOwnTLDef::collectLinks().
|
protectedvirtual |
Build the list of participating edges.
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 188 of file NBTrafficLightDefinition.cpp.
References collectReachable(), DummyID, NBNode::FORWARD, OptionsCont::getBool(), NBEdge::getFirstNonPedestrianLaneIndex(), Named::getID(), OptionsCont::getOptions(), myControlledInnerEdges, myControlledNodes, myEdgesWithin, myIncomingEdges, NBEdge::setIsInnerEdge(), and WRITE_WARNING.
Referenced by NBLoadedSUMOTLDef::collectEdges(), setParticipantsInformation(), and NBLoadedTLDef::setParticipantsInformation().
|
protectedpure virtual |
Collects the links participating in this traffic light.
ProcessError | If a link could not be found |
Implemented in NBLoadedTLDef, NBOwnTLDef, and NBLoadedSUMOTLDef.
Referenced by setParticipantsInformation().
|
staticprivate |
Definition at line 167 of file NBTrafficLightDefinition.cpp.
References NBEdge::getConnections(), and NBEdge::mayBeTLSControlled().
Referenced by collectEdges().
NBTrafficLightLogic * NBTrafficLightDefinition::compute | ( | OptionsCont & | oc | ) |
Computes the traffic light logic.
Does some initialisation at first, then calls myCompute to finally build the tl-logic
[in] | oc | The options container holding options needed during the building |
Definition at line 113 of file NBTrafficLightDefinition.cpp.
References amInvalid(), computeBrakingTime(), OptionsCont::getFloat(), Named::getID(), OptionsCont::getInt(), Parameterised::getMap(), OptionsCont::isDefault(), myCompute(), myControlledNodes, Parameterised::updateParameter(), and WRITE_WARNING.
Referenced by NBTrafficLightLogicCont::computeSingleLogic(), GNEConnection::isValid(), and NBLoadedSUMOTLDef::reconstructLogic().
|
protected |
Computes the time vehicles may need to brake.
This time depends on the maximum speed allowed on incoming junctions. It is computed as max_speed_allowed / minimum_vehicle_decleration
Definition at line 144 of file NBTrafficLightDefinition.cpp.
References MAX2(), NBContHelper::maxSpeed(), and myIncomingEdges.
Referenced by compute().
bool NBTrafficLightDefinition::foes | ( | const NBEdge *const | from1, |
const NBEdge *const | to1, | ||
const NBEdge *const | from2, | ||
const NBEdge *const | to2 | ||
) | const |
Returns the information whether the given flows cross.
[in] | from1 | The starting edge of the first stream |
[in] | to1 | The ending edge of the first stream |
[in] | from2 | The starting edge of the second stream |
[in] | to2 | The ending edge of the second stream |
Definition at line 394 of file NBTrafficLightDefinition.cpp.
References NBNode::foes(), and myControlledNodes.
Referenced by getNodes(), and NBLoadedSUMOTLDef::initNeedsContRelation().
bool NBTrafficLightDefinition::forbids | ( | const NBEdge *const | possProhibitorFrom, |
const NBEdge *const | possProhibitorTo, | ||
const NBEdge *const | possProhibitedFrom, | ||
const NBEdge *const | possProhibitedTo, | ||
bool | regardNonSignalisedLowerPriority, | ||
bool | sameNodeOnly = false |
||
) | const |
Returns the information whether "prohibited" flow must let "prohibitor" flow pass.
[in] | possProhibitedFrom | The maybe prohibited connection's begin |
[in] | possProhibitedTo | The maybe prohibited connection's end |
[in] | possProhibitorFrom | The maybe prohibiting connection's begin |
[in] | possProhibitorTo | The maybe prohibiting connection's end |
[in] | regardNonSignalisedLowerPriority | Whether the right of way rules without traffic lights shall be regarded |
[in] | sameNodeOnly | Whether the check shall only be performed if both edges are incoming to the same node |
Definition at line 275 of file NBTrafficLightDefinition.cpp.
References DEBUGCOND, NBNode::foes(), NBNode::forbids(), NBEdge::getConnectedEdges(), NBNode::getDirection(), Named::getID(), LINKDIR_STRAIGHT, and myControlledNodes.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBOwnTLDef::computeUnblockedWeightedStreamNumber(), NBOwnTLDef::correctConflicting(), getNodes(), NBLoadedSUMOTLDef::initNeedsContRelation(), mustBrake(), and NBLoadedTLDef::myCompute().
std::vector< std::string > NBTrafficLightDefinition::getControlledInnerEdges | ( | ) | const |
Retrieve the ids of edges explicitly controlled by the tls.
Definition at line 443 of file NBTrafficLightDefinition.cpp.
References myControlledInnerEdges.
Referenced by getNodes(), and NIXMLTrafficLightsHandler::initTrafficLightLogic().
|
inline |
returns the controlled links (depends on previous call to collectLinks)
Definition at line 300 of file NBTrafficLightDefinition.h.
References myControlledLinks.
Referenced by GNETLSEditorFrame::buildIinternalLanes(), GNETLSEditorFrame::controlsEdge(), GNETLSEditorFrame::handleMultiChange(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), and NBLoadedSUMOTLDef::reconstructLogic().
|
inline |
returns the controlled links (non const version)
Definition at line 306 of file NBTrafficLightDefinition.h.
References myControlledLinks.
|
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 87 of file Parameterised.cpp.
References TplConvert::_2double(), and Parameterised::myMap.
Referenced by MSDevice_Battery::buildVehicleDevices().
|
inlineinherited |
Returns the id.
Definition at line 74 of file Named.h.
Referenced by NIImporter_SUMO::_loadNetwork(), MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), LaneStoringVisitor::add(), MSPModel_Striping::add(), MSVehicleTransfer::add(), PCPolyContainer::add(), Named::StoringVisitor::add(), MSDetectorControl::add(), ShapeContainer::add(), IntermodalRouter< E, L, N, V >::addAccess(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), NBParkingCont::addEdges2Keep(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), NBEdge::addRestrictedLane(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), ROVehicle::addStop(), MSRouteHandler::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), NBEdge::addStraightConnections(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), NBEdge::append(), NBPTStopCont::assignAndCreatNewPTStopAsNeeded(), NBPTStopCont::assignPTStopToEdgeOfClosestPlatform(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSTransportable::Stage_Waiting::beginEventOutput(), MSTransportable::Stage_Driving::beginEventOutput(), MSPModel_Striping::blockedAtDist(), MSLink::blockedAtTime(), MSLink::blockedByFoe(), NLEdgeControlBuilder::build(), NIVisumTL::build(), RODFNet::buildApproachList(), MSSOTLE2Sensors::buildContinueSensior(), MSSOTLE2Sensors::buildCountSensorForLane(), MSSOTLE2Sensors::buildCountSensorForOutLane(), NBNode::buildCrossings(), NBNode::buildCrossingsAndWalkingAreas(), NIImporter_VISUM::buildDistrictNode(), NLDetectorBuilder::buildE2Detector(), NIVissimConnection::buildEdgeConnections(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MELoop::buildSegmentsFor(), MSSOTLE2Sensors::buildSensorForLane(), MSSOTLE2Sensors::buildSensorForOutLane(), NBNode::buildWalkingAreas(), MSBaseVehicle::calculateArrivalParams(), MSSwarmTrafficLightLogic::calculateEtaDiff(), MSSwarmTrafficLightLogic::calculateEtaRatio(), MSSOTLPolicyBasedTrafficLightLogic::canRelease(), MSLaneChanger::changeOpposite(), MELoop::changeSegment(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSEdge::checkAndRegisterBiDirEdge(), MSLane::checkForPedestrians(), NBEdge::checkGeometry(), NBEdgeCont::checkGrade(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkLinkLeader(), NBEdgeCont::checkOverlap(), MSDevice_Battery::checkParam(), MSE2Collector::checkPositioning(), MSVehicle::checkRewindLinkLanes(), MSSwarmTrafficLightLogic::choosePolicy(), MSDevice_SSM::classifyEncounter(), NBTrafficLightLogic::closeBuilding(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), RORouteHandler::closeVehicle(), collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedTLDef::collectLinks(), ROJTRRouter::compute(), compute(), NBEdge::computeAngle(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBOwnTLDef::computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), MSSOTLWaveTrafficLightLogic::countVehicles(), MSSOTLE2Sensors::countVehicles(), MSDevice_SSM::createEncounters(), GUINet::createTLWrapper(), MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), MSSwarmTrafficLightLogic::decideNextPhase(), MSDeterministicHiLevelTrafficLightLogic::decidePolicy(), MSSwarmTrafficLightLogic::decidePolicy(), MSLane::detectCollisionBetween(), MSLane::detectCollisions(), MSLane::detectPedestrianJunctionCollision(), NIVissimDistrictConnection::dict_BuildDistricts(), NBEdge::divideOnEdges(), NBEdge::divideSelectedLanesOnEdges(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), METriggeredCalibrator::execute(), MSCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSPModel_Striping::MovePedestrians::execute(), MSTrafficLightLogic::SwitchCommand::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), libsumo::Helper::findCloserLane(), MSDevice_SSM::findFoeConflictLane(), libsumo::Simulation::findIntermodalRoute(), MSDevice_SSM::findSurroundingVehicles(), MSDevice_SSM::flushConflicts(), forbids(), NBRampsComputer::fulfillsRampConstraints(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), GNEConnection::getAttribute(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), NBEdge::getConnection(), NBEdge::getConnectionRef(), libsumo::TrafficLight::getControlledLinks(), NBEdge::getCrossingAngle(), RODFNet::getDetectorEdge(), libsumo::Lane::getEdgeID(), MSMeanData::getEdgeID(), NBEdge::getFirstNonPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), libsumo::InductionLoop::getLaneID(), libsumo::LaneArea::getLaneID(), libsumo::Vehicle::getLaneID(), MSLane::getLastVehicleInformation(), MSVehicle::getLatOffset(), MSLane::getLeader(), MSLink::getLeaderInfo(), MSLane::getLeaderOnConsecutive(), MSLane::getLeadersOnConsecutive(), MSLink::getLengthBeforeCrossing(), libsumo::Lane::getLinks(), MSLane::getLinkTo(), MSTLLogicControl::TLSLogicVariants::getLogicInstantiatingOff(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForInputLanes(), MSDeterministicHiLevelTrafficLightLogic::getMeanSpeedForOutputLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), MSPerson::getNextEdge(), MSPModel_Striping::getNextLane(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIInstantInductLoop::MyWrapper::getParameterWindow(), GUIMEInductLoop::MyWrapper::getParameterWindow(), GUIVehicle::getParameterWindow(), GUIE2Collector::MyWrapper::getParameterWindow(), GUIInductLoop::MyWrapper::getParameterWindow(), MSLane::getPartialBehind(), MSSOTLTrafficLightLogic::getPhaseIndexWithMaxCTS(), MSSwarmTrafficLightLogic::getPheromoneForInputLanes(), MSSwarmTrafficLightLogic::getPheromoneForOutputLanes(), GUITrafficLightLogicWrapper::getPopUpMenu(), NLTriggerBuilder::getPosition(), NLDetectorBuilder::getPositionChecking(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), NBPTStopCont::getReverseStop(), libsumo::Person::getRoadID(), libsumo::Vehicle::getRoadID(), libsumo::Vehicle::getRouteID(), MSNet::getStoppingPlaceID(), MSDevice_SSM::getUpstreamVehicles(), MSDevice_SSM::getVehiclesOnJunction(), MSTransportable::Stage_Driving::getWaitingDescription(), MSVehicleControl::getWaitingVehicle(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBEdgeCont::guessSidewalks(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), NBEdgeCont::ignoreFilterMatch(), MSVehicle::ignoreRed(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NBEdge::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBNodeCont::insert(), NBTrafficLightLogicCont::insert(), NBEdgeCont::insert(), MSEdge::insertVehicle(), MSLane::integrateNewVehicle(), IntermodalNetwork< E, L, N, V >::IntermodalNetwork(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), MSTLLogicControl::isActive(), MSPedestrianPushButton::isActiveForEdge(), MSPedestrianPushButton::isActiveOnAnySideOfTheRoad(), RODFNet::isDestination(), RODFNet::isFalseSource(), MSLane::isInsertionSuccess(), RODFNet::isSource(), MSSOTLTrafficLightLogic::isThresholdPassed(), NBNodeCont::joinJunctions(), NBEdgeCont::joinSameNodeConnectingEdges(), MSAbstractLaneChangeModel::laneChangeOutput(), MSE3Collector::leave(), MSE3Collector::leaveFront(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSPedestrianPushButton::loadCrossingEdgeMap(), NIImporter_OpenDrive::loadNetwork(), MSPedestrianPushButton::loadPushButtons(), NBEdge::MainDirections::MainDirections(), ODDistrictCont::makeDistricts(), MSE2Collector::makeVehicleInfo(), GNEJunction::markAsModified(), MSSOTLE2Sensors::meanVehiclesSpeed(), METriggeredCalibrator::METriggeredCalibrator(), MSPModel_Striping::moveInDirection(), MSPModel_Striping::moveInDirectionOnLane(), NBRampsComputer::moveRampRight(), MSPModel_Striping::PState::moveToNextLane(), libsumo::Person::moveToXY(), libsumo::Vehicle::moveToXY(), libsumo::Helper::moveToXYMap(), MSCalibrator::MSCalibrator(), MSChargingStation::MSChargingStation(), MSDevice_Battery::MSDevice_Battery(), MSE2Collector::MSE2Collector(), NBLoadedTLDef::myCompute(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSCalibrator::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSPModel_Striping::nextBlocking(), MSDevice_BTreceiver::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSDevice_Tripinfo::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSE3Collector::MSE3EntryReminder::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSE3Collector::MSE3LeaveReminder::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSDevice_BTsender::notifyMove(), MSMeanData::MeanDataValues::notifyMove(), MSE2Collector::notifyMove(), MSDevice_SSM::notifyMove(), MSMeanData_Net::MSLaneMeanDataValues::notifyMoveInternal(), GUIViewTraffic::onGamingClick(), GNEViewNet::onLeftBtnPress(), MSLink::opened(), RORouteHandler::openRoute(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBContHelper::edge_by_angle_to_nodeShapeCentroid_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), MSLane::incoming_lane_priority_sorter::operator()(), MSLane::outgoing_lane_priority_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NLTriggerBuilder::parseAndBuildCalibrator(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), MSRouteHandler::parseWalkPositions(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), MSLCM_LC2013::patchSpeed(), MSLCM_SL2015::patchSpeed(), NBLoadedTLDef::SignalGroup::patchTYellow(), MSVehicle::planMove(), MSVehicle::planMoveInternal(), MSLane::planMovements(), MSInternalJunction::postloadInit(), MSRightOfWayJunction::postloadInit(), NBEdge::prepareEdgePriorities(), AGStreet::print(), MSDevice_SSM::processEncounters(), MSVehicle::processLinkAproaches(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), NIXMLNodesHandler::processTrafficLightDefinitions(), NWWriter_SUMO::prohibitionConnection(), MSDelayBasedTrafficLightLogic::proposeProlongation(), MSPModel_Striping::PState::PState(), NBEdgeCont::recheckLanes(), NBEdge::recheckLanes(), NBEdgeCont::recheckPostProcessConnections(), NIImporter_OpenStreetMap::reconstructLayerElevation(), NBLoadedSUMOTLDef::reconstructLogic(), NBNodeCont::remapIDs(), NBEdgeCont::remapIDs(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), MSLink::removeApproaching(), NBNodeCont::removeIsolatedRoads(), MSVehicle::removePassedDriveItems(), MSCalibrator::removePending(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::rename(), NBEdgeCont::rename(), GNENet::renameEdge(), GNENet::renameJunction(), RORouteDef::repairCurrentRoute(), NBConnection::replaceFrom(), MSVehicle::replaceParkingArea(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIImporter_DlrNavteq::ConnectedLanesHandler::report(), MSBaseVehicle::reroute(), MSTriggeredRerouter::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), NBEdge::restoreRestrictedLane(), GNEEdge::retrieveGNEConnection(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RODFNet::revalidateFlows(), NBPTLineCont::reviseStops(), MSPerson::MSPersonStage_Walking::routeOutput(), MSPerson::MSPersonStage_Driving::routeOutput(), RONet::saveAndRemoveRoutesUntil(), MSDevice::saveState(), MSDevice_Vehroutes::saveState(), MSDevice_Tripinfo::saveState(), MSBaseVehicle::saveState(), MSLane::saveState(), GUIVehicle::selectBlockingFoes(), MSE2Collector::selectLanes(), MSLink::setApproaching(), NBNodeCont::setAsTLControlled(), GNEEdge::setAttribute(), MSChargingStation::setChargeDelay(), MSChargingStation::setChargingPower(), NBEdge::setControllingTLInformation(), MSChargingStation::setEfficency(), GNEJunction::setLogicValid(), MSLane::setManeuverReservation(), MSDevice_Battery::setMaximumBatteryCapacity(), NBEdge::setNodeBorder(), NIXMLEdgesHandler::setNodes(), MSLane::setPartialOccupation(), MSDevice_Battery::setPowerMax(), MSLink::setRequestInformation(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), MSDevice_Battery::setStoppingTreshold(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), NBEdgeCont::splitAt(), IntermodalRouter< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), METriggeredCalibrator::tryEmit(), MSSOTLTrafficLightLogic::trySwitch(), MSDevice_SSM::update(), MSVehicle::updateBestLanes(), MSLCM_SL2015::updateCFRelated(), MSSOTLTrafficLightLogic::updateCTS(), GNETLSEditorFrame::updateDescription(), MSVehicle::updateDriveItems(), MSSwarmTrafficLightLogic::updatePheromoneLevels(), MSSwarmTrafficLightLogic::updateSensitivities(), MSAbstractLaneChangeModel::updateTargetLane(), MSDevice_BTreceiver::BTreceiverUpdate::updateVisibility(), MSPModel_Striping::PState::walk(), MSLCM_LC2013::wantsChange(), MSLCM_SL2015::wantsChange(), MSLCM_SL2015::wantsChangeSublane(), NBParking::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), NBSign::writeAsPOI(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_SUMO::writeInternalConnections(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), NWWriter_OpenDrive::writeNormalEdge(), NWWriter_DlrNavteq::writeProhibitedManoeuvres(), NWWriter_SUMO::writeRoundabout(), RODFDetectorCon::writeSpeedTrigger(), NWWriter_DlrNavteq::writeTrafficSignals(), MSFCDExport::writeTransportable(), RODFDetectorCon::writeValidationDetectors(), MSFullExport::writeVehicles(), SUMOPolygon::writeXML(), PointOfInterest::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and RONet::~RONet().
|
inlinestaticinherited |
get an identifier for Named-like object which may be Null
Definition at line 67 of file Named.h.
Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSVehicle::getBackPositionOnLane(), NBOwnTLDef::getBestPair(), MSVehicle::getCenterOnEdge(), NBEdge::Connection::getDescription(), MSLane::getFollowersOnConsecutive(), MSVehicle::getLatOffset(), GUIVehicle::getParameterWindow(), MSLaneChanger::getRealLeader(), NBEdge::init(), MSLane::isInsertionSuccess(), 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(), toString(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().
const EdgeVector & NBTrafficLightDefinition::getIncomingEdges | ( | ) | const |
Returns the list of incoming edges (must be build first)
Definition at line 449 of file NBTrafficLightDefinition.cpp.
References myIncomingEdges.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBLoadedSUMOTLDef::reconstructLogic(), and shiftTLConnectionLaneIndex().
|
inlineinherited |
Returns the inner key/value map.
Definition at line 117 of file Parameterised.h.
References Parameterised::myMap, and Parameterised::writeParams().
Referenced by NIImporter_SUMO::_loadNetwork(), NBEdge::addLane(), GUIParameterTableWindow::closeBuilding(), compute(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIPolygon::getParameterWindow(), GUIPointOfInterest::getParameterWindow(), GUIJunctionWrapper::getParameterWindow(), GUIContainer::getTypeParameterWindow(), GUIPerson::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), NIImporter_OpenStreetMap::insertEdge(), GUIParameterTableWindow::numParams(), TraCIServerAPI_TrafficLight::processGet(), and ROPerson::saveAsXML().
|
inline |
Returns the list of controlled nodes.
Definition at line 179 of file NBTrafficLightDefinition.h.
References addControlledInnerEdges(), foes(), forbids(), getControlledInnerEdges(), mustBrake(), myControlledNodes, remapRemoved(), replaceRemoved(), setParticipantsInformation(), and setTLControllingInformation().
Referenced by NBTrafficLightLogicCont::computeSingleLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GNETLSEditorFrame::onCmdOK(), GNEJunction::removeTrafficLight(), and GNEJunction::setAttribute().
|
inline |
Returns the offset.
Definition at line 330 of file NBTrafficLightDefinition.h.
References myOffset.
Referenced by GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), and NBLoadedSUMOTLDef::reconstructLogic().
|
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 77 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), NBEdge::addRestrictedLane(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Edge::getParameter(), libsumo::Polygon::getParameter(), libsumo::Route::getParameter(), libsumo::POI::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Person::getParameter(), libsumo::Lane::getParameter(), libsumo::Vehicle::getParameter(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_OpenStreetMap::insertEdge(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), libsumo::Helper::moveToXYMap(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), MSSOTLPolicyDesirability::readParameter(), MSDevice_SSM::requestsTrajectories(), NBEdgeCont::splitAt(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), MSDevice_SSM::useGeoCoords(), and NWWriter_DlrNavteq::writeLinksUnsplitted().
|
inline |
Returns the ProgramID.
Definition at line 314 of file NBTrafficLightDefinition.h.
References mySubID.
Referenced by NIImporter_SUMO::addPhase(), NBOwnTLDef::computeLogicAndConts(), NBTrafficLightLogicCont::computeSingleLogic(), NBTrafficLightLogicCont::extract(), NBTrafficLightLogicCont::insert(), GNEJunction::invalidateTLS(), NBLoadedTLDef::myCompute(), NIImporter_SUMO::myEndElement(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), and NBLoadedSUMOTLDef::reconstructLogic().
|
inline |
get the algorithm type (static etc..)
Definition at line 336 of file NBTrafficLightDefinition.h.
References myType.
Referenced by NBOwnTLDef::correctConflicting(), GNETLSEditorFrame::initPhaseTable(), GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GNETLSEditorFrame::onCmdPhaseCreate(), GNETLSEditorFrame::onCmdPhaseEdit(), NIXMLNodesHandler::processTrafficLightDefinitions(), and NBLoadedSUMOTLDef::reconstructLogic().
|
virtual |
Reimplemented in NBLoadedTLDef, NBLoadedSUMOTLDef, and NBOwnTLDef.
Definition at line 497 of file NBTrafficLightDefinition.cpp.
References amInvalid(), DummyID, NBOwnTLDef::initNeedsContRelation(), myControlledNodes, myNeedsContRelation, myNeedsContRelationReady, and TLTYPE_STATIC.
Referenced by needsCont(), and setType().
|
inherited |
Returns whether the parameter is known.
[in] | key | The key to ask for |
Definition at line 71 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NBEdge::append(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), NWWriter_DlrNavteq::getBrunnelType(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_SSM::getOutputFilename(), MSTriggeredRerouter::getWeight(), MSDevice_SSM::requestsTrajectories(), and MSDevice_SSM::useGeoCoords().
Returns the information whether the described flow must let any other flow pass.
If the from/to connection passes only one junction (from is incoming into same node as to outgoes from) the node is asked whether the flow must brake- Otherwise true is returned (recheck!) "from" must be an incoming edge into one of the participating nodes!
[in] | from | The connection's start edge |
[in] | to | The connection's end edge |
Definition at line 238 of file NBTrafficLightDefinition.cpp.
References NBNode::mustBrake(), and myControlledNodes.
Referenced by getNodes(), and NBLoadedTLDef::mustBrake().
bool NBTrafficLightDefinition::mustBrake | ( | const NBConnection & | possProhibited, |
const NBConnection & | possProhibitor, | ||
bool | regardNonSignalisedLowerPriority | ||
) | const |
Returns the information whether the described flow must let the other flow pass.
[in] | possProhibited | The maybe prohibited connection |
[in] | possProhibitor | The maybe prohibiting connection |
[in] | regardNonSignalisedLowerPriority | Whether the right of way rules without traffic lights shall be regarded |
Definition at line 265 of file NBTrafficLightDefinition.cpp.
References forbids(), NBConnection::getFrom(), and NBConnection::getTo().
bool NBTrafficLightDefinition::mustBrake | ( | const NBEdge *const | possProhibitedFrom, |
const NBEdge *const | possProhibitedTo, | ||
const NBEdge *const | possProhibitorFrom, | ||
const NBEdge *const | possProhibitorTo, | ||
bool | regardNonSignalisedLowerPriority | ||
) | const |
Returns the information whether the described flow must let any other flow pass.
[in] | possProhibitedFrom | The maybe prohibited connection's begin |
[in] | possProhibitedTo | The maybe prohibited connection's end |
[in] | possProhibitorFrom | The maybe prohibiting connection's begin |
[in] | possProhibitorTo | The maybe prohibiting connection's end |
[in] | regardNonSignalisedLowerPriority | Whether the right of way rules without traffic lights shall be regarded |
Definition at line 253 of file NBTrafficLightDefinition.cpp.
References forbids().
|
protectedpure virtual |
Computes the traffic light logic finally in dependence to the type.
[in] | brakingTime | Duration a vehicle needs for braking in front of the tls |
Implemented in NBLoadedTLDef, NBLoadedSUMOTLDef, and NBOwnTLDef.
Referenced by compute().
bool NBTrafficLightDefinition::needsCont | ( | const NBEdge * | fromE, |
const NBEdge * | toE, | ||
const NBEdge * | otherFromE, | ||
const NBEdge * | otherToE | ||
) | const |
Definition at line 486 of file NBTrafficLightDefinition.cpp.
References initNeedsContRelation(), myNeedsContRelation, and myNeedsContRelationReady.
Referenced by setType().
|
pure virtual |
Replaces occurences of the removed edge in incoming/outgoing edges of all definitions.
[in] | removed | The removed edge |
[in] | incoming | The edges to use instead if an incoming edge was removed |
[in] | outgoing | The edges to use instead if an outgoing edge was removed |
Implemented in NBLoadedTLDef, NBOwnTLDef, and NBLoadedSUMOTLDef.
Referenced by getNodes().
|
inlinevirtual |
removes the given connection from the traffic light if recontruct=true, reconstructs the logic and informs the edges for immediate use in NETEDIT
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 171 of file NBTrafficLightDefinition.h.
References UNUSED_PARAMETER.
|
virtual |
Removes the given node from the list of controlled nodes.
[in] | node | The node that shall not be controlled by the tls any more |
Definition at line 427 of file NBTrafficLightDefinition.cpp.
References myControlledNodes.
Referenced by NBNode::removeTrafficLight().
|
pure virtual |
Replaces a removed edge/lane.
[in] | removed | The edge to replace |
[in] | removedLane | The lane of this edge to replace |
[in] | by | The edge to insert instead |
[in] | byLane | This edge's lane to insert instead |
Implemented in NBLoadedTLDef, NBOwnTLDef, and NBLoadedSUMOTLDef.
Referenced by getNodes().
|
virtual |
whether the given index must yield to the foeIndex while turing right on a red light
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 511 of file NBTrafficLightDefinition.cpp.
References NBOwnTLDef::computeLogicAndConts(), DummyID, myControlledNodes, myRightOnRedConflicts, myRightOnRedConflictsReady, setParticipantsInformation(), and TLTYPE_STATIC.
Referenced by setType().
|
inlineinherited |
resets the id
[in] | newID | The new id of this object |
Definition at line 82 of file Named.h.
Referenced by Distribution_Parameterized::parse(), NBLoadedSUMOTLDef::reconstructLogic(), NBNodeCont::remapIDs(), NBEdgeCont::remapIDs(), NBNodeCont::rename(), NBEdgeCont::rename(), and IntermodalRouter< E, L, N, V >::splitEdge().
|
inherited |
Sets a parameter.
[in] | key | The parameter's name |
[in] | value | The parameter's value |
Definition at line 51 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by SUMORouteHandler::addParam(), NLHandler::addParam(), ShapeHandler::addPOI(), NBEdge::Lane::Lane(), NIImporter_OpenDrive::loadNetwork(), NIXMLTrafficLightsHandler::myStartElement(), MSStateHandler::myStartElement(), ShapeHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), NIImporter_OpenStreetMap::EdgesHandler::myStartElement(), NBNodeCont::remapIDs(), libsumo::Edge::setParameter(), libsumo::Route::setParameter(), libsumo::Polygon::setParameter(), libsumo::POI::setParameter(), libsumo::TrafficLight::setParameter(), and libsumo::Lane::setParameter().
|
virtual |
Builds the list of participating nodes/edges/links.
Reimplemented in NBLoadedTLDef.
Definition at line 160 of file NBTrafficLightDefinition.cpp.
References collectEdges(), and collectLinks().
Referenced by getNodes(), NBOwnTLDef::initNeedsContRelation(), GNEConnection::isValid(), NBLoadedSUMOTLDef::reconstructLogic(), rightOnRedConflict(), NBLoadedSUMOTLDef::setTLControllingInformation(), and NBTrafficLightLogicCont::setTLControllingInformation().
|
inline |
Sets the programID.
[in] | programID | The new ID of the program (subID) |
Definition at line 322 of file NBTrafficLightDefinition.h.
References mySubID.
Referenced by NBTrafficLightLogicCont::insert(), GNEJunction::invalidateTLS(), and NBLoadedSUMOTLDef::reconstructLogic().
|
pure virtual |
Informs edges about being controlled by a tls.
Implemented in NBLoadedTLDef, NBOwnTLDef, and NBLoadedSUMOTLDef.
Referenced by getNodes().
|
inlinevirtual |
set the algorithm type (static etc..)
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 341 of file NBTrafficLightDefinition.h.
References initNeedsContRelation(), myType, needsCont(), and rightOnRedConflict().
|
inlinevirtual |
patches (loaded) signal plans by modifying lane indices
Reimplemented in NBLoadedSUMOTLDef.
Definition at line 288 of file NBTrafficLightDefinition.h.
References getIncomingEdges(), and UNUSED_PARAMETER.
|
inherited |
Removes a parameter.
[in] | key | The parameter's name |
Definition at line 57 of file Parameterised.cpp.
References Parameterised::myMap.
|
inherited |
Adds or updates all given parameters from the map.
[in] | mapArg | The keys/values to insert |
Definition at line 63 of file Parameterised.cpp.
References Parameterised::myMap.
Referenced by NIImporter_SUMO::_loadNetwork(), PCLoaderOSM::addPOI(), PCLoaderOSM::addPolygon(), NLJunctionControlBuilder::closeJunction(), compute(), and NIImporter_OpenStreetMap::insertEdge().
|
inherited |
Definition at line 102 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 Parameterised::getMap(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), SUMOVTypeParameter::write(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().
|
static |
Definition at line 78 of file NBTrafficLightDefinition.h.
Referenced by NIXMLTrafficLightsHandler::initTrafficLightLogic().
|
staticprotected |
id for temporary definitions
Definition at line 360 of file NBTrafficLightDefinition.h.
Referenced by collectEdges(), NBOwnTLDef::computeLogicAndConts(), NBOwnTLDef::initNeedsContRelation(), initNeedsContRelation(), NBLoadedSUMOTLDef::reconstructLogic(), rightOnRedConflict(), and NBLoadedSUMOTLDef::setTLControllingInformation().
|
protected |
Set of inner edges that shall be controlled, though.
Definition at line 408 of file NBTrafficLightDefinition.h.
Referenced by addControlledInnerEdges(), NBLoadedSUMOTLDef::collectEdges(), collectEdges(), and getControlledInnerEdges().
|
protected |
The list of controlled links.
Definition at line 405 of file NBTrafficLightDefinition.h.
Referenced by NBLoadedSUMOTLDef::addConnection(), NBLoadedSUMOTLDef::amInvalid(), amInvalid(), NBLoadedSUMOTLDef::cleanupStates(), collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), NBLoadedSUMOTLDef::collectEdgeVectors(), NBLoadedSUMOTLDef::collectLinks(), NBLoadedTLDef::collectLinks(), getControlledLinks(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBLoadedTLDef::myCompute(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), NBLoadedSUMOTLDef::reconstructLogic(), NBLoadedSUMOTLDef::removeConnection(), NBLoadedSUMOTLDef::replaceRemoved(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBOwnTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), and NBLoadedSUMOTLDef::shiftTLConnectionLaneIndex().
|
protected |
The container with participating nodes.
Definition at line 396 of file NBTrafficLightDefinition.h.
Referenced by addNode(), NBLoadedSUMOTLDef::amInvalid(), NBLoadedSUMOTLDef::collectEdges(), collectEdges(), NBLoadedSUMOTLDef::collectLinks(), NBLoadedTLDef::collectNodes(), compute(), NBOwnTLDef::computeLogicAndConts(), foes(), forbids(), getNodes(), NBOwnTLDef::initNeedsContRelation(), initNeedsContRelation(), mustBrake(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), NBTrafficLightDefinition(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), NBLoadedSUMOTLDef::reconstructLogic(), removeNode(), rightOnRedConflict(), and NBLoadedSUMOTLDef::setTLControllingInformation().
|
protected |
The list of edges within the area controlled by the tls.
Definition at line 402 of file NBTrafficLightDefinition.h.
Referenced by NBLoadedSUMOTLDef::collectEdges(), and collectEdges().
|
protectedinherited |
The name of the object.
Definition at line 126 of file Named.h.
Referenced by MSE2Collector::addDetectorToLanes(), RODFDetector::buildDestinationDistribution(), NGEdge::buildNBEdge(), NGNode::buildNBNode(), MSSOTLTrafficLightLogic::checkPhases(), NBNode::computeNodeShape(), MSE2Collector::detectorUpdate(), METriggeredCalibrator::execute(), MSCalibrator::execute(), GNEPOI::getAttribute(), GNEPOILane::getAttribute(), GNEPoly::getAttribute(), MSLane::getCanonicalPredecessorLane(), MSLane::getCanonicalSuccessorLane(), NBEdge::getLaneID(), NBEdge::getLaneIDInsecure(), ROEdge::getStoredEffort(), ROEdge::getTravelTime(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSCalibrator::init(), NBEdge::init(), MSLane::isInsertionSuccess(), MSCalibrator::myStartElement(), MSE2Collector::notifyEnter(), MSE2Collector::notifyLeave(), MSE2Collector::notifyMove(), MSMeanData::openInterval(), RORouteDef::preComputeCurrentRoute(), NBEdge::reinitNodes(), MSRoute::release(), GNEPOI::setAttribute(), GNEPOILane::setAttribute(), GNEPoly::setAttribute(), MSSOTLTrafficLightLogic::setToATargetPhase(), NBEdge::splitGeometry(), Distribution_Parameterized::toStr(), MSChargingStation::writeChargingStationOutput(), RODFDetector::writeEmitterDefinition(), MSXMLRawOut::writeLane(), NBNode::writeLogic(), RODFDetector::writeSingleSpeedTrigger(), MEInductLoop::writeXMLOutput(), MSCalibrator::writeXMLOutput(), and MSE3Collector::writeXMLOutput().
|
protected |
The list of incoming edges.
Definition at line 399 of file NBTrafficLightDefinition.h.
Referenced by NBLoadedSUMOTLDef::amInvalid(), collectAllLinks(), NBLoadedSUMOTLDef::collectEdges(), collectEdges(), NBLoadedTLDef::collectLinks(), computeBrakingTime(), getIncomingEdges(), and NBLoadedSUMOTLDef::reconstructLogic().
|
mutableprotected |
Definition at line 451 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBOwnTLDef::correctConflicting(), NBOwnTLDef::initNeedsContRelation(), NBLoadedSUMOTLDef::initNeedsContRelation(), initNeedsContRelation(), NBLoadedTLDef::myCompute(), and needsCont().
|
mutableprotected |
Definition at line 452 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBOwnTLDef::initNeedsContRelation(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBLoadedTLDef::initNeedsContRelation(), initNeedsContRelation(), NBLoadedTLDef::myCompute(), and needsCont().
|
protected |
The offset in the program.
Definition at line 414 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), getOffset(), NBLoadedTLDef::myCompute(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), NBLoadedSUMOTLDef::reconstructLogic(), and NBLoadedSUMOTLDef::setOffset().
|
mutableprotected |
Definition at line 455 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBOwnTLDef::correctConflicting(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBLoadedSUMOTLDef::rightOnRedConflict(), and rightOnRedConflict().
|
mutableprotected |
Definition at line 456 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBLoadedSUMOTLDef::rightOnRedConflict(), and rightOnRedConflict().
|
protected |
The tls program's subid.
Definition at line 411 of file NBTrafficLightDefinition.h.
Referenced by getProgramID(), and setProgramID().
|
protected |
The algorithm type for the traffic light.
Definition at line 417 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::computeLogicAndConts(), getType(), NBLoadedTLDef::myCompute(), NBLoadedSUMOTLDef::patchIfCrossingsAdded(), NBLoadedSUMOTLDef::reconstructLogic(), NBLoadedSUMOTLDef::setType(), and setType().
|
static |
Definition at line 77 of file NBTrafficLightDefinition.h.
Referenced by NBOwnTLDef::addPedestrianScramble(), NIImporter_SUMO::addPhase(), NBTrafficLightLogic::addStep(), NBTrafficLightLogic::closeBuilding(), NBOwnTLDef::computeLogicAndConts(), GNETLSEditorFrame::onCmdPhaseEdit(), GNETLSEditorFrame::varDurString(), and NWWriter_SUMO::writeTrafficLights().