Eclipse SUMO - Simulation of Urban MObility
NBOwnTLDef Class Reference

A traffic light logics which must be computed (only nodes/edges are given) More...

#include <NBOwnTLDef.h>

Inheritance diagram for NBOwnTLDef:
Collaboration diagram for NBOwnTLDef:

Data Structures

class  edge_by_incoming_priority_sorter
 Sorts edges by their priority within the node they end at. 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 buildAllRedState (SUMOTime allRedTime, NBTrafficLightLogic *logic, const std::string &state)
 
void clearParameter ()
 Clears the parameter map. More...
 
NBTrafficLightLogiccompute (OptionsCont &oc)
 Computes the traffic light logic. More...
 
int computeBrakingTime (double minDecel) const
 Computes the time vehicles may need to brake. More...
 
NBTrafficLightLogiccomputeLogicAndConts (int brakingTimeSeconds, bool onlyConts=false)
 helper function for myCompute 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...
 
NBConnectionVectorgetControlledLinks ()
 returns the controlled links (non const version) More...
 
const NBConnectionVectorgetControlledLinks () const
 returns the controlled links (depends on previous call to collectLinks) More...
 
std::string getDescription () const
 get ID and programID together (for convenient debugging) 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 EdgeVectorgetIncomingEdges () const
 Returns the list of incoming edges (must be build first) More...
 
int getMaxIndex ()
 Returns the maximum index controlled by this traffic light. More...
 
virtual int getMaxValidIndex ()
 Returns the maximum index controlled by this traffic light. 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::map< std::string, std::string > & getParametersMap () const
 Returns the inner key/value map. More...
 
const std::string & getProgramID () const
 Returns the ProgramID. More...
 
TrafficLightType getType () const
 get the algorithm type (static etc..) More...
 
void initNeedsContRelation () const
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. 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 from, const NBEdge *const to) const
 Returns the information whether the described flow must let any 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...
 
 NBOwnTLDef (const std::string &id, const std::vector< NBNode * > &junctions, SUMOTime offset, TrafficLightType type)
 Constructor. More...
 
 NBOwnTLDef (const std::string &id, NBNode *junction, SUMOTime offset, TrafficLightType type)
 Constructor. More...
 
 NBOwnTLDef (const std::string &id, SUMOTime offset, TrafficLightType type)
 Constructor. More...
 
bool needsCont (const NBEdge *fromE, const NBEdge *toE, const NBEdge *otherFromE, const NBEdge *otherToE) const
 
virtual bool rightOnRedConflict (int index, int foeIndex) const
 whether the given index must yield to the foeIndex while turning 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...
 
void setSinglePhase ()
 Forces the definition not to compute an additional phase for left-movers. More...
 
virtual void setType (TrafficLightType type)
 set the algorithm type (static etc..) More...
 
virtual void shiftTLConnectionLaneIndex (NBEdge *edge, int offset, int threshold=-1)
 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...
 
virtual bool usingSignalGroups () const
 whether this definition uses signal group (multiple connections with the same link index) More...
 
void writeParams (OutputDevice &device) const
 write Params in the given outputdevice More...
 
 ~NBOwnTLDef ()
 Destructor. More...
 
Public methods from NBTrafficLightDefinition-interface
void remapRemoved (NBEdge *removed, const EdgeVector &incoming, const EdgeVector &outgoing)
 Replaces occurences of the removed edge in incoming/outgoing edges of all definitions. More...
 
void setTLControllingInformation () const
 Informs edges about being controlled by a tls. 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

static std::string addPedestrianPhases (NBTrafficLightLogic *logic, SUMOTime greenTime, SUMOTime minDur, SUMOTime maxDur, std::string state, const std::vector< NBNode::Crossing * > &crossings, const EdgeVector &fromEdges, const EdgeVector &toEdges)
 add 1 or 2 phases depending on the presence of pedestrian crossings More...
 
static void addPedestrianScramble (NBTrafficLightLogic *logic, int noLinksAll, SUMOTime greenTime, SUMOTime yellowTime, const std::vector< NBNode::Crossing * > &crossings, const EdgeVector &fromEdges, const EdgeVector &toEdges)
 add an additional pedestrian phase if there are crossings that did not get green yet 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...
 
static std::string patchStateForCrossings (const std::string &state, const std::vector< NBNode::Crossing * > &crossings, const EdgeVector &fromEdges, const EdgeVector &toEdges)
 compute phase state in regard to pedestrian crossings More...
 

Static Public Attributes

static const std::string DefaultProgramID = "0"
 
static const SUMOTime UNSPECIFIED_DURATION
 

Protected Types

typedef std::set< StreamPairNeedsContRelation
 
typedef std::set< std::pair< int, int > > RightOnRedConflicts
 

Protected Member Functions

std::string allowByVClass (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges, SVCPermissions perm)
 
std::string allowCompatible (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges, const std::vector< int > &fromLanes, const std::vector< int > &toLanes)
 allow connections that are compatible with the chosen edges More...
 
std::string allowFollowers (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges)
 
std::string allowPredecessors (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges, const std::vector< int > &fromLanes, const std::vector< int > &toLanes)
 
std::string allowSingleEdge (std::string state, const EdgeVector &fromEdges)
 
std::string allowUnrelated (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges, const std::vector< bool > &isTurnaround, const std::vector< NBNode::Crossing * > &crossings)
 
virtual bool amInvalid () const
 
void checkCustomCrossingIndices (NBTrafficLightLogic *logic) const
 fix states in regard to custom crossing indices More...
 
void collectAllLinks ()
 helper method for use in NBOwnTLDef and NBLoadedSUMOTLDef More...
 
virtual void collectEdges ()
 Build the list of participating edges. More...
 
double computeUnblockedWeightedStreamNumber (const NBEdge *const e1, const NBEdge *const e2)
 Returns how many streams outgoing from the edges can pass the junction without being blocked. More...
 
std::string correctConflicting (std::string state, const EdgeVector &fromEdges, const EdgeVector &toEdges, const std::vector< bool > &isTurnaround, const std::vector< int > &fromLanes, const std::vector< bool > &hadGreenMajor, bool &haveForbiddenLeftMover, std::vector< bool > &rightTurnConflicts)
 change 'G' to 'g' for conflicting connections More...
 
bool corridorLike () const
 test whether a joined tls with layout 'opposites' would be built without dedicated left-turn phase More...
 
bool forbidden (const std::string &state, int index, const EdgeVector &fromEdges, const EdgeVector &toEdges)
 whether the given index is forbidden by a green link in the current state More...
 
std::pair< NBEdge *, NBEdge * > getBestCombination (const EdgeVector &edges)
 Returns the combination of two edges from the given which has most unblocked streams. More...
 
std::pair< NBEdge *, NBEdge * > getBestPair (EdgeVector &incoming)
 Returns the combination of two edges from the given which has most unblocked streams. More...
 
double getDirectionalWeight (LinkDirection dir)
 Returns the weight of a stream given its direction. More...
 
int getToPrio (const NBEdge *const e)
 Returns this edge's priority at the node it ends at. More...
 
Protected methods from NBTrafficLightDefinition-interface
NBTrafficLightLogicmyCompute (int brakingTimeSeconds)
 Computes the traffic light logic finally in dependence to the type. More...
 
void collectLinks ()
 Collects the links participating in this traffic light. More...
 
void replaceRemoved (NBEdge *removed, int removedLane, NBEdge *by, int byLane)
 Replaces a removed edge/lane. More...
 

Static Protected Member Functions

static EdgeVector getConnectedOuterEdges (const EdgeVector &incoming)
 get edges that have connections More...
 
static bool hasCrossing (const NBEdge *from, const NBEdge *to, const std::vector< NBNode::Crossing * > &crossings)
 compute whether the given connection is crossed by pedestrians 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)
 

Private Attributes

bool myHaveSinglePhase
 Whether left-mover should not have an additional phase. More...
 
std::map< std::string, std::string > myMap
 The key->value map. More...
 

Detailed Description

A traffic light logics which must be computed (only nodes/edges are given)

Definition at line 47 of file NBOwnTLDef.h.

Member Typedef Documentation

◆ NeedsContRelation

typedef std::set<StreamPair> NBTrafficLightDefinition::NeedsContRelation
protectedinherited

Definition at line 461 of file NBTrafficLightDefinition.h.

◆ RightOnRedConflicts

typedef std::set<std::pair<int, int> > NBTrafficLightDefinition::RightOnRedConflicts
protectedinherited

Definition at line 465 of file NBTrafficLightDefinition.h.

Member Enumeration Documentation

◆ TLColor

An enumeration of possible tl-signal states.

Enumerator
TLCOLOR_RED 

Signal shows red.

TLCOLOR_YELLOW 

Signal shows yellow.

TLCOLOR_REDYELLOW 

Signal shows red/yellow (unused)

TLCOLOR_GREEN 

Signal shows green.

TLCOLOR_BLINK 

Signal is blinking yellow.

Definition at line 78 of file NBTrafficLightDefinition.h.

Constructor & Destructor Documentation

◆ NBOwnTLDef() [1/3]

NBOwnTLDef::NBOwnTLDef ( const std::string &  id,
const std::vector< NBNode * > &  junctions,
SUMOTime  offset,
TrafficLightType  type 
)

Constructor.

Parameters
[in]idThe id of the tls
[in]junctionsJunctions controlled by this tls
[in]offsetThe offset of the plan
[in]typeThe algorithm type for the computed traffic light

Definition at line 55 of file NBOwnTLDef.cpp.

◆ NBOwnTLDef() [2/3]

NBOwnTLDef::NBOwnTLDef ( const std::string &  id,
NBNode junction,
SUMOTime  offset,
TrafficLightType  type 
)

Constructor.

Parameters
[in]idThe id of the tls
[in]junctionThe junction controlled by this tls
[in]offsetThe offset of the plan
[in]typeThe algorithm type for the computed traffic light

Definition at line 63 of file NBOwnTLDef.cpp.

◆ NBOwnTLDef() [3/3]

NBOwnTLDef::NBOwnTLDef ( const std::string &  id,
SUMOTime  offset,
TrafficLightType  type 
)

Constructor.

Parameters
[in]idThe id of the tls
[in]offsetThe offset of the plan
[in]typeThe algorithm type for the computed traffic light

Definition at line 70 of file NBOwnTLDef.cpp.

◆ ~NBOwnTLDef()

NBOwnTLDef::~NBOwnTLDef ( )

Destructor.

Definition at line 77 of file NBOwnTLDef.cpp.

Member Function Documentation

◆ addControlledInnerEdges()

void NBTrafficLightDefinition::addControlledInnerEdges ( const std::vector< std::string > &  edges)
inherited

Adds the given ids into the list of inner edges controlled by the tls.

Parameters
[in]edgesThe list of edge ids which shall be controlled despite lying with the jointly controlled node cluster

Definition at line 435 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::myControlledInnerEdges.

Referenced by NIXMLTrafficLightsHandler::initTrafficLightLogic().

◆ addNode()

void NBTrafficLightDefinition::addNode ( NBNode node)
virtualinherited

◆ addPedestrianPhases()

std::string NBOwnTLDef::addPedestrianPhases ( NBTrafficLightLogic logic,
SUMOTime  greenTime,
SUMOTime  minDur,
SUMOTime  maxDur,
std::string  state,
const std::vector< NBNode::Crossing * > &  crossings,
const EdgeVector fromEdges,
const EdgeVector toEdges 
)
static

add 1 or 2 phases depending on the presence of pedestrian crossings

Definition at line 651 of file NBOwnTLDef.cpp.

References NBTrafficLightLogic::addStep(), OptionsCont::getOptions(), patchStateForCrossings(), and TIME2STEPS.

Referenced by addPedestrianScramble(), computeLogicAndConts(), and NBLoadedSUMOTLDef::patchIfCrossingsAdded().

◆ addPedestrianScramble()

void NBOwnTLDef::addPedestrianScramble ( NBTrafficLightLogic logic,
int  noLinksAll,
SUMOTime  greenTime,
SUMOTime  yellowTime,
const std::vector< NBNode::Crossing * > &  crossings,
const EdgeVector fromEdges,
const EdgeVector toEdges 
)
static

◆ addTo()

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

Adds this object to the given container.

Parameters
[in,filled]cont The container to add this item to

Definition at line 127 of file Named.h.

References Named::StoringVisitor::add().

◆ allowByVClass()

std::string NBOwnTLDef::allowByVClass ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges,
SVCPermissions  perm 
)
protected

Definition at line 914 of file NBOwnTLDef.cpp.

Referenced by computeLogicAndConts().

◆ allowCompatible()

std::string NBOwnTLDef::allowCompatible ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges,
const std::vector< int > &  fromLanes,
const std::vector< int > &  toLanes 
)
protected

allow connections that are compatible with the chosen edges

Definition at line 792 of file NBOwnTLDef.cpp.

References allowFollowers(), allowPredecessors(), and allowSingleEdge().

Referenced by computeLogicAndConts().

◆ allowFollowers()

std::string NBOwnTLDef::allowFollowers ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges 
)
protected

Definition at line 827 of file NBOwnTLDef.cpp.

Referenced by allowCompatible().

◆ allowPredecessors()

std::string NBOwnTLDef::allowPredecessors ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges,
const std::vector< int > &  fromLanes,
const std::vector< int > &  toLanes 
)
protected

Definition at line 857 of file NBOwnTLDef.cpp.

References forbidden().

Referenced by allowCompatible().

◆ allowSingleEdge()

std::string NBOwnTLDef::allowSingleEdge ( std::string  state,
const EdgeVector fromEdges 
)
protected

Definition at line 802 of file NBOwnTLDef.cpp.

Referenced by allowCompatible().

◆ allowUnrelated()

std::string NBOwnTLDef::allowUnrelated ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges,
const std::vector< bool > &  isTurnaround,
const std::vector< NBNode::Crossing * > &  crossings 
)
protected

Definition at line 890 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::forbids(), hasCrossing(), and isForbidden().

Referenced by computeLogicAndConts().

◆ amInvalid()

bool NBTrafficLightDefinition::amInvalid ( ) const
protectedvirtualinherited

◆ buildAllRedState()

void NBOwnTLDef::buildAllRedState ( SUMOTime  allRedTime,
NBTrafficLightLogic logic,
const std::string &  state 
)

Definition at line 1038 of file NBOwnTLDef.cpp.

References NBTrafficLightLogic::addStep().

Referenced by computeLogicAndConts().

◆ checkCustomCrossingIndices()

void NBOwnTLDef::checkCustomCrossingIndices ( NBTrafficLightLogic logic) const
protected

fix states in regard to custom crossing indices

Definition at line 1052 of file NBOwnTLDef.cpp.

References NBTrafficLightLogic::getNumLinks(), MAX2(), MIN2(), NBTrafficLightDefinition::myControlledNodes, and NBTrafficLightLogic::setStateLength().

Referenced by computeLogicAndConts().

◆ clearParameter()

◆ collectAllLinks()

◆ collectEdges()

◆ collectLinks()

void NBOwnTLDef::collectLinks ( )
protectedvirtual

Collects the links participating in this traffic light.

Exceptions
ProcessErrorIf a link could not be found
See also
NBTrafficLightDefinition::collectLinks

Implements NBTrafficLightDefinition.

Definition at line 730 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::collectAllLinks().

◆ collectReachable()

std::set< NBEdge * > NBTrafficLightDefinition::collectReachable ( EdgeVector  outer,
const EdgeVector within,
bool  checkControlled 
)
staticprivateinherited

◆ compute()

NBTrafficLightLogic * NBTrafficLightDefinition::compute ( OptionsCont oc)
inherited

◆ computeBrakingTime()

int NBTrafficLightDefinition::computeBrakingTime ( double  minDecel) const
inherited

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 138 of file NBTrafficLightDefinition.cpp.

References MAX2(), NBContHelper::maxSpeed(), and NBTrafficLightDefinition::myIncomingEdges.

Referenced by NBTrafficLightDefinition::compute(), GNETLSEditorFrame::onCmdPhaseCreate(), and NBLoadedSUMOTLDef::patchIfCrossingsAdded().

◆ computeLogicAndConts()

NBTrafficLightLogic * NBOwnTLDef::computeLogicAndConts ( int  brakingTimeSeconds,
bool  onlyConts = false 
)

helper function for myCompute

Parameters
[in]brakingTimeDuration a vehicle needs for braking in front of the tls
[in]onlyContswhether the method is only called to compute myNeedsContRelation
Returns
The computed logic

Definition at line 240 of file NBOwnTLDef.cpp.

References addPedestrianPhases(), addPedestrianScramble(), NBTrafficLightLogic::addStep(), allowByVClass(), allowCompatible(), allowUnrelated(), buildAllRedState(), checkCustomCrossingIndices(), NBTrafficLightLogic::closeBuilding(), correctConflicting(), corridorLike(), DEBUGCOND, NBTrafficLightDefinition::DummyID, getBestPair(), getConnectedOuterEdges(), NBTrafficLightLogic::getDuration(), OptionsCont::getFloat(), Named::getID(), Named::getIDSecure(), NBTrafficLightDefinition::getIncomingEdges(), OptionsCont::getInt(), OptionsCont::getOptions(), NBEdge::getPermissions(), NBTrafficLightLogic::getPhases(), NBTrafficLightDefinition::getProgramID(), OptionsCont::getString(), LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, LINKDIR_TURN, MAX2(), MIN2(), MIN_GREEN_TIME, NBTrafficLightDefinition::myControlledNodes, myHaveSinglePhase, NBTrafficLightDefinition::myNeedsContRelation, NBTrafficLightDefinition::myNeedsContRelationReady, NBTrafficLightDefinition::myOffset, NBTrafficLightDefinition::myRightOnRedConflicts, NBTrafficLightDefinition::myRightOnRedConflictsReady, NBTrafficLightDefinition::myType, NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED, NBHelpers::relAngle(), NBTrafficLightLogic::setPhaseDuration(), STEPS2TIME, SUMOTime_MAX, SVC_BICYCLE, SVC_DELIVERY, SVC_PEDESTRIAN, SVC_TRAM, TIME2STEPS, time2string(), TLTYPE_STATIC, toString(), NBTrafficLightDefinition::UNSPECIFIED_DURATION, and WRITE_WARNING.

Referenced by initNeedsContRelation(), myCompute(), and NBTrafficLightDefinition::rightOnRedConflict().

◆ computeUnblockedWeightedStreamNumber()

double NBOwnTLDef::computeUnblockedWeightedStreamNumber ( const NBEdge *const  e1,
const NBEdge *const  e2 
)
protected

Returns how many streams outgoing from the edges can pass the junction without being blocked.

Parameters
[in]e1The first edge
[in]e2The second edge
Todo:
There are several magic numbers; describe

Definition at line 103 of file NBOwnTLDef.cpp.

References DEBUGCOND, NBTrafficLightDefinition::forbids(), NBEdge::getConnectionsFromLane(), NBNode::getDirection(), getDirectionalWeight(), NBEdge::getID(), NBEdge::getJunctionPriority(), NBEdge::getNumLanes(), NBEdge::getToNode(), NBEdge::getTurnDestination(), HEIGH_WEIGHT, and LOW_WEIGHT.

Referenced by getBestCombination().

◆ correctConflicting()

std::string NBOwnTLDef::correctConflicting ( std::string  state,
const EdgeVector fromEdges,
const EdgeVector toEdges,
const std::vector< bool > &  isTurnaround,
const std::vector< int > &  fromLanes,
const std::vector< bool > &  hadGreenMajor,
bool &  haveForbiddenLeftMover,
std::vector< bool > &  rightTurnConflicts 
)
protected

change 'G' to 'g' for conflicting connections

Parameters
[in]state
[in]fromEdges
[in]toEdges
[in]isTurnaround
[in]fromLanes
[in]hadGreenMajor
[out]haveForbiddenLeftMover
[out]rightTurnConflicts
Returns
The corrected state

Definition at line 937 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::forbids(), OptionsCont::getBool(), OptionsCont::getOptions(), NBTrafficLightDefinition::getType(), LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_RIGHT, NBTrafficLightDefinition::myNeedsContRelation, NBTrafficLightDefinition::myRightOnRedConflicts, NODETYPE_TRAFFIC_LIGHT_RIGHT_ON_RED, and NBNode::rightTurnConflict().

Referenced by computeLogicAndConts().

◆ corridorLike()

bool NBOwnTLDef::corridorLike ( ) const
protected

test whether a joined tls with layout 'opposites' would be built without dedicated left-turn phase

Definition at line 1088 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::DummyID, Named::getID(), NBTrafficLightLogic::getPhases(), NBTrafficLightDefinition::myControlledNodes, and TLTYPE_STATIC.

Referenced by computeLogicAndConts().

◆ foes()

bool NBTrafficLightDefinition::foes ( const NBEdge *const  from1,
const NBEdge *const  to1,
const NBEdge *const  from2,
const NBEdge *const  to2 
) const
inherited

Returns the information whether the given flows cross.

Parameters
[in]from1The starting edge of the first stream
[in]to1The ending edge of the first stream
[in]from2The starting edge of the second stream
[in]to2The ending edge of the second stream
Returns
Whether both stream are foes (cross)

Definition at line 392 of file NBTrafficLightDefinition.cpp.

References NBNode::foes(), and NBTrafficLightDefinition::myControlledNodes.

Referenced by forbidden(), and NBLoadedSUMOTLDef::initNeedsContRelation().

◆ forbidden()

bool NBOwnTLDef::forbidden ( const std::string &  state,
int  index,
const EdgeVector fromEdges,
const EdgeVector toEdges 
)
protected

whether the given index is forbidden by a green link in the current state

Definition at line 926 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::foes().

Referenced by allowPredecessors().

◆ forbids()

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
inherited

Returns the information whether "prohibited" flow must let "prohibitor" flow pass.

Parameters
[in]possProhibitedFromThe maybe prohibited connection's begin
[in]possProhibitedToThe maybe prohibited connection's end
[in]possProhibitorFromThe maybe prohibiting connection's begin
[in]possProhibitorToThe maybe prohibiting connection's end
[in]regardNonSignalisedLowerPriorityWhether the right of way rules without traffic lights shall be regarded
[in]sameNodeOnlyWhether the check shall only be performed if both edges are incoming to the same node
Returns
Whether the second flow prohibits the first one
See also
forbids

Definition at line 273 of file NBTrafficLightDefinition.cpp.

References DEBUGCOND, NBNode::foes(), NBNode::forbids(), NBEdge::getConnectedEdges(), NBNode::getDirection(), Named::getID(), NBEdge::getID(), LINKDIR_STRAIGHT, and NBTrafficLightDefinition::myControlledNodes.

Referenced by allowUnrelated(), computeUnblockedWeightedStreamNumber(), correctConflicting(), NBLoadedSUMOTLDef::initNeedsContRelation(), NBTrafficLightDefinition::mustBrake(), and NBLoadedTLDef::myCompute().

◆ getBestCombination()

std::pair< NBEdge *, NBEdge * > NBOwnTLDef::getBestCombination ( const EdgeVector edges)
protected

Returns the combination of two edges from the given which has most unblocked streams.

Parameters
[in]edgesThe list of edges to include in the computation
Returns
The two edges for which the weighted number of unblocked streams is the highest

Definition at line 162 of file NBOwnTLDef.cpp.

References computeUnblockedWeightedStreamNumber(), DEBUGCOND, Named::getIDSecure(), GeomHelper::getMinAngleDiff(), and NUMERICAL_EPS.

Referenced by getBestPair().

◆ getBestPair()

std::pair< NBEdge *, NBEdge * > NBOwnTLDef::getBestPair ( EdgeVector incoming)
protected

Returns the combination of two edges from the given which has most unblocked streams.

The chosen edges are removed from the given vector

Parameters
[in,changed]incoming The list of edges which are participating in the logic
Returns
The two edges for which the weighted number of unblocked streams is the highest

Definition at line 199 of file NBOwnTLDef.cpp.

References DEBUGCOND, getBestCombination(), Named::getID(), Named::getIDSecure(), getToPrio(), and toString().

Referenced by computeLogicAndConts().

◆ getConnectedOuterEdges()

EdgeVector NBOwnTLDef::getConnectedOuterEdges ( const EdgeVector incoming)
staticprotected

get edges that have connections

Definition at line 778 of file NBOwnTLDef.cpp.

Referenced by computeLogicAndConts().

◆ getControlledInnerEdges()

std::vector< std::string > NBTrafficLightDefinition::getControlledInnerEdges ( ) const
inherited

Retrieve the ids of edges explicitly controlled by the tls.

Definition at line 441 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::myControlledInnerEdges.

Referenced by NIXMLTrafficLightsHandler::initTrafficLightLogic().

◆ getControlledLinks() [1/2]

NBConnectionVector& NBTrafficLightDefinition::getControlledLinks ( )
inlineinherited

returns the controlled links (non const version)

Definition at line 301 of file NBTrafficLightDefinition.h.

References NBTrafficLightDefinition::myControlledLinks.

◆ getControlledLinks() [2/2]

const NBConnectionVector& NBTrafficLightDefinition::getControlledLinks ( ) const
inlineinherited

◆ getDescription()

std::string NBTrafficLightDefinition::getDescription ( ) const
inherited

get ID and programID together (for convenient debugging)

Definition at line 535 of file NBTrafficLightDefinition.cpp.

References Named::getID(), NBTrafficLightDefinition::getProgramID(), and toString().

◆ getDirectionalWeight()

double NBOwnTLDef::getDirectionalWeight ( LinkDirection  dir)
protected

Returns the weight of a stream given its direction.

Parameters
[in]dirThe direction of the stream
Returns
This stream's weight
Todo:
There are several magic numbers; describe

Definition at line 87 of file NBOwnTLDef.cpp.

References HEIGH_WEIGHT, LINKDIR_LEFT, LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_RIGHT, LINKDIR_STRAIGHT, and LOW_WEIGHT.

Referenced by computeUnblockedWeightedStreamNumber().

◆ getDouble()

◆ getID()

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

Returns the id.

Returns
The stored id

Definition at line 77 of file Named.h.

References Named::myID.

Referenced by MSLCM_LC2013::adaptSpeedToPedestrians(), MSVehicle::adaptToLeader(), MSVehicle::adaptToLeaders(), MSPModel_Remote::add(), MSPModel_Striping::add(), LaneStoringVisitor::add(), MSVehicleTransfer::add(), PCPolyContainer::add(), MSDetectorControl::add(), Named::StoringVisitor::add(), ShapeContainer::add(), NLTriggerBuilder::addAccess(), RORouteDef::addAlternative(), MSLane::addApproachingLane(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), MSPModel_Striping::addCrossingVehs(), RODFDetectorCon::addDetector(), RONet::addEdge(), NBParkingCont::addEdges2Keep(), ROJTREdge::addFollowerProbability(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSLane::addNeigh(), RONet::addNode(), NIImporter_SUMO::addPhase(), GUIEdge::addRerouter(), RONet::addRouteDef(), NIXMLEdgesHandler::addSplit(), NBTrafficLightLogic::addStep(), ROVehicle::addStop(), MSRouteHandler::addStop(), MSVehicle::addStop(), MSNet::addStoppingPlace(), MSVehicle::addTraciStop(), MSVehicle::addTraciStopAtStoppingPlace(), AGActivityTripWriter::addTrip(), NIXMLConnectionsHandler::addWalkingArea(), libsumo::Helper::applySubscriptionFilters(), 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(), MSRailSignal::LinkInfo::buildDriveWay(), NLDetectorBuilder::buildE2Detector(), RODFNet::buildEdgeFlowMap(), GNETLSEditorFrame::buildIinternalLanes(), NBEdge::buildInnerEdges(), NGEdge::buildNBEdge(), NIVissimEdge::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(), ROJTRRouter::compute(), IntermodalRouter< E, L, N, V >::compute(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBNode::computeLanes2Lanes(), NBNode::computeLogic(), computeLogicAndConts(), NBNode::computeNodeShape(), NBNodeShapeComputer::computeNodeShapeDefault(), NBNodeShapeComputer::computeNodeShapeSmall(), RODFNet::computeRoutesFor(), NBTrafficLightLogicCont::computeSingleLogic(), NBNode::computeSmoothShape(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NGNet::connect(), corridorLike(), 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_BuildDistrictNodes(), NIVissimDistrictConnection::dict_BuildDistricts(), MSTransportable::Stage_Waiting::endEventOutput(), MSTransportable::Stage_Driving::endEventOutput(), MSE3Collector::enter(), MSVehicle::enterLaneAtMove(), METriggeredCalibrator::execute(), Command_SaveTLSState::execute(), Command_SaveTLSSwitchStates::execute(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), MSCalibrator::execute(), MSPModel_Striping::MovePedestrians::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(), RODFDetectorCon::getAggFlowFor(), RODFDetectorCon::getAnyDetectorForEdge(), MSPModel_Striping::getArbitraryPath(), MSVehicle::getBackPosition(), MSVehicle::getBackPositionOnLane(), libsumo::Vehicle::getBestLanes(), getBestPair(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSVehicle::getCenterOnEdge(), MSDevice_Battery::getChargingStationID(), MSRailSignal::getClickableTLLinkID(), GUILane::getColorValue(), libsumo::TrafficLight::getControlledLinks(), MSLane::getCriticalLeader(), NBNodeShapeComputer::getDefaultRadius(), NBTrafficLightDefinition::getDescription(), MSLink::getDescription(), GUIPerson::getDestinationEdgeID(), RODFNet::getDetectorEdge(), libsumo::Lane::getEdgeID(), GUIMEVehicle::getEdgeID(), GUIPerson::getEdgeID(), MSMeanData::getEdgeID(), MSPModel_Remote::getFirstPedestrianLane(), MSLane::getFollower(), MSLane::getFollowersOnConsecutive(), GUIPerson::getFromEdgeID(), MSCalibrator::getID(), NBEdge::getID(), libsumo::LaneArea::getLaneID(), libsumo::InductionLoop::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(), MSLane::getOppositeFollower(), MSLane::getOppositeLeader(), MSLane::getOppositePos(), libsumo::Simulation::getParameter(), GUITrafficLightLogicWrapper::getParameterWindow(), GUILane::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(), MSPerson::MSPersonStage_Walking::getStageSummary(), MSContainer::MSContainerStage_Tranship::getStageSummary(), MSPerson::MSPersonStage_Driving::getStageSummary(), MSTransportable::Stage_Trip::getStageSummary(), MSTransportable::Stage_Waiting::getStageSummary(), MSNet::getStoppingPlaceID(), MSLane::getSurroundingVehicles(), MSRailSignal::getTLLinkID(), MSLane::getUpcomingLinks(), MSDevice_SSM::getUpstreamVehicles(), MSPModel_Striping::getVehicleObstacles(), MSDevice_SSM::getVehiclesOnJunction(), MSLink::getZipperSpeed(), NBNode::guessCrossings(), RODFDetectorCon::guessEmptyFlows(), NBNodeCont::guessTLs(), GUITLLogicPhasesTrackerWindow::GUITLLogicPhasesTrackerWindow(), MSLane::handleCollisionBetween(), MSVehicle::haveValidStopEdges(), libsumo::POI::highlight(), MSVehicle::ignoreRed(), MSDeterministicHiLevelTrafficLightLogic::init(), MSRailSignal::init(), MSDelayBasedTrafficLightLogic::init(), MSActuatedTrafficLightLogic::init(), MSTrafficLightLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSE2Collector::initAuxiliaries(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBTrafficLightLogicCont::insert(), NBNodeCont::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(), NBEdgeCont::joinSameNodeConnectingEdges(), 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(), MSE3Collector::MSE3EntryReminder::notifyEnter(), MSMeanData::MeanDataValues::notifyEnter(), MSDevice_BTsender::notifyEnter(), MSDevice_Bluelight::notifyEnter(), MSDevice_Example::notifyEnter(), MSDevice_BTreceiver::notifyEnter(), MSMeanData_Net::MSLaneMeanDataValues::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSE3Collector::MSE3LeaveReminder::notifyEnter(), MSMeanData::MeanDataValueTracker::notifyEnter(), MSE2Collector::notifyEnter(), MSDevice_SSM::notifyEnter(), MSDevice_Transportable::notifyLeave(), MSDevice_Example::notifyLeave(), MSDevice_Bluelight::notifyLeave(), MSDevice_BTsender::notifyLeave(), MSDevice_BTreceiver::notifyLeave(), MSE2Collector::notifyLeave(), MSDevice_SSM::notifyLeave(), MSDevice_Example::notifyMove(), MSDevice_Bluelight::notifyMove(), MSDevice_BTsender::notifyMove(), MSDevice_BTreceiver::notifyMove(), MSE2Collector::notifyMove(), MSDevice_SSM::notifyMove(), GUIViewTraffic::onGamingClick(), MSLink::opened(), RORouteHandler::openRoute(), RODFNet::idComp::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBNode::nodes_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_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(), MSBaseVehicle::reroute(), MSRailSignal::LinkInfo::reroute(), GUIVehicle::rerouteDRTStop(), MSTriggeredRerouter::rerouteParkingArea(), MSVehicle::rerouteParkingArea(), MSLane::resetManeuverReservation(), MSLane::resetPartialOccupation(), RODFNet::revalidateFlows(), NBRailwayTopologyAnalyzer::reverseEdges(), RONet::saveAndRemoveRoutesUntil(), ROVehicle::saveAsXML(), ROPerson::Ride::saveAsXML(), MSTransportableDevice_Routing::saveState(), MSDevice_Routing::saveState(), 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(), 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(), setTLControllingInformation(), NBTrafficLightLogicCont::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdge::shiftPositionAtNode(), MSLane::sortManeuverReservations(), IntermodalNetwork< E, L, N, V >::splitEdge(), MSLaneChangerSublane::startChangeSublane(), MSStopOut::stopEnded(), MSStopOut::stopStarted(), MSLane::succLinkSec(), GUITrafficLightLogicWrapper::switchTLSLogic(), MELoop::teleportVehicle(), MSSOTLTrafficLightLogic::trySwitch(), PolygonDynamics::update(), MSDevice_SSM::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(), NBParking::write(), MSBatteryExport::write(), MSEmissionExport::write(), MSFCDExport::write(), MSInstantInductLoop::write(), MSLink::writeApproaching(), MSRailSignal::writeBlocks(), NWWriter_DlrNavteq::writeConnectedLanes(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), RODFDetector::writeEmitterDefinition(), RODFDetectorCon::writeEmitterPOIs(), RODFDetectorCon::writeEmitters(), RODFDetectorCon::writeEndRerouterDetectors(), NWWriter_OpenDrive::writeInternalEdge(), writeInterval(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::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(), PointOfInterest::writeXML(), SUMOPolygon::writeXML(), MSRouteProbe::writeXMLOutput(), MSInductLoop::writeXMLOutput(), MSE2Collector::writeXMLOutput(), and RONet::~RONet().

◆ getIDSecure()

template<class T >
static std::string Named::getIDSecure ( const T *  obj,
const std::string &  fallBack = "NULL" 
)
inlinestaticinherited

get an identifier for Named-like object which may be Null

Definition at line 70 of file Named.h.

Referenced by MSLCM_LC2013::_wantsChange(), MSLCM_SL2015::_wantsChangeSublane(), MSLaneChanger::changeOpposite(), MSVehicle::checkRewindLinkLanes(), DijkstraRouter< E, V, BASE >::compute(), AStarRouter< MSEdge, SUMOVehicle, SUMOAbstractRouterPermissions< MSEdge, SUMOVehicle > >::compute(), NBEdge::computeEdge2Edges(), NBEdge::computeLanes2Edges(), computeLogicAndConts(), MSLaneChanger::continueChange(), MSLane::detectCollisions(), MSRailSignal::DriveWay::findProtection(), MSCFModel_W99::followSpeed(), MSCFModel_CACC::followSpeed(), MSVehicle::getBackPositionOnLane(), getBestCombination(), 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_LC2013::saveBlockerLength(), MSLCM_SL2015::saveBlockerLength(), MSLCM_LC2013::slowDownForBlocked(), MSLCM_SL2015::slowDownForBlocked(), MSLaneChangerSublane::startChangeSublane(), toString(), MSLeaderInfo::toString(), MSLeaderDistanceInfo::toString(), MSCriticalFollowerDistanceInfo::toString(), MSVehicle::updateBestLanes(), and MSAbstractLaneChangeModel::updateShadowLane().

◆ getIncomingEdges()

const EdgeVector & NBTrafficLightDefinition::getIncomingEdges ( ) const
inherited

Returns the list of incoming edges (must be build first)

Returns
The edges which are incoming into the tls

Definition at line 447 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::myIncomingEdges.

Referenced by computeLogicAndConts(), and NBLoadedSUMOTLDef::reconstructLogic().

◆ getMaxIndex()

int NBOwnTLDef::getMaxIndex ( )
virtual

Returns the maximum index controlled by this traffic light.

Implements NBTrafficLightDefinition.

Definition at line 1076 of file NBOwnTLDef.cpp.

References NBTrafficLightDefinition::compute(), NBTrafficLightLogic::getNumLinks(), OptionsCont::getOptions(), and NBTrafficLightDefinition::setParticipantsInformation().

◆ getMaxValidIndex()

virtual int NBTrafficLightDefinition::getMaxValidIndex ( )
inlinevirtualinherited

Returns the maximum index controlled by this traffic light.

Reimplemented in NBLoadedSUMOTLDef.

Definition at line 357 of file NBTrafficLightDefinition.h.

References NBTrafficLightDefinition::getMaxIndex().

Referenced by GNEConnection::isValid().

◆ getNodes()

◆ getOffset()

SUMOTime NBTrafficLightDefinition::getOffset ( )
inlineinherited

Returns the offset.

Returns
Offset

Definition at line 325 of file NBTrafficLightDefinition.h.

References NBTrafficLightDefinition::myOffset.

Referenced by GNEJunction::invalidateTLS(), NBNode::invalidateTLS(), and NBLoadedSUMOTLDef::reconstructLogic().

◆ getParameter()

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

Returns the value for a given key.

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

Definition at line 71 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NBEdge::addRestrictedLane(), FareModul::addStop(), NBEdge::append(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Bluelight::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), libsumo::Simulation::findIntermodalRoute(), MSSwarmTrafficLightLogic::getBetaNo(), MSSwarmTrafficLightLogic::getBetaSp(), MSDevice::getBoolParam(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), MSSwarmTrafficLightLogic::getChangePlanProbability(), GNELane::getColorValue(), GUILane::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(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), libsumo::Route::getParameter(), libsumo::Polygon::getParameter(), libsumo::POI::getParameter(), libsumo::Person::getParameter(), libsumo::TrafficLight::getParameter(), libsumo::Edge::getParameter(), libsumo::Lane::getParameter(), libsumo::VehicleType::getParameter(), libsumo::Vehicle::getParameter(), libsumo::Simulation::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(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), GNEVehicleType::initRailVisualizationParameters(), MSVehicleType::initRailVisualizationParameters(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), libsumo::Helper::moveToXYMap(), 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().

◆ getParametersMap()

const std::map< std::string, std::string > & Parameterised::getParametersMap ( ) const
inherited

Returns the inner key/value map.

Definition at line 105 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_SUMO::_loadNetwork(), NBEdge::addLane(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GNEVehicleType::getGenericParameters(), GNELane::getGenericParameters(), GNEPoly::getGenericParameters(), GNEStop::getGenericParameters(), GNEPOI::getGenericParameters(), GNEJunction::getGenericParameters(), GNERide::getGenericParameters(), GNEPersonTrip::getGenericParameters(), GNEWalk::getGenericParameters(), GNEEdge::getGenericParameters(), GNERoute::getGenericParameters(), GNEPerson::getGenericParameters(), GNEAdditional::getGenericParameters(), GNEVehicle::getGenericParameters(), GNEVehicleType::getGenericParametersStr(), GNELane::getGenericParametersStr(), GNEPoly::getGenericParametersStr(), GNEStop::getGenericParametersStr(), GNEPOI::getGenericParametersStr(), GNEJunction::getGenericParametersStr(), GNERide::getGenericParametersStr(), GNEPersonTrip::getGenericParametersStr(), GNEWalk::getGenericParametersStr(), GNEEdge::getGenericParametersStr(), GNERoute::getGenericParametersStr(), GNEPerson::getGenericParametersStr(), GNEAdditional::getGenericParametersStr(), GNEVehicle::getGenericParametersStr(), GUITrafficLightLogicWrapper::getParameterWindow(), GUIPolygon::getParameterWindow(), GUIJunctionWrapper::getParameterWindow(), GUIPointOfInterest::getParameterWindow(), GUILane::getParameterWindow(), GUIPerson::getTypeParameterWindow(), GUIContainer::getTypeParameterWindow(), GUIVehicle::getTypeParameterWindow(), GUIMEVehicle::getTypeParameterWindow(), NIImporter_OpenStreetMap::insertEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), GUIParameterTableWindow::numParams(), GNEVehicleType::overwriteVType(), and TraCIServerAPI_TrafficLight::processGet().

◆ getProgramID()

◆ getToPrio()

int NBOwnTLDef::getToPrio ( const NBEdge *const  e)
protected

Returns this edge's priority at the node it ends at.

Parameters
[in]eThe edge to ask for his priority
Returns
The edge's priority at his destination node

Definition at line 81 of file NBOwnTLDef.cpp.

References NBEdge::getJunctionPriority(), and NBEdge::getToNode().

Referenced by getBestPair().

◆ getType()

◆ hasCrossing()

bool NBOwnTLDef::hasCrossing ( const NBEdge from,
const NBEdge to,
const std::vector< NBNode::Crossing * > &  crossings 
)
staticprotected

compute whether the given connection is crossed by pedestrians

Definition at line 632 of file NBOwnTLDef.cpp.

References NBNode::Crossing::edges, NBEdge::getFromNode(), and NBNode::Crossing::node.

Referenced by allowUnrelated().

◆ initNeedsContRelation()

◆ knowsParameter()

◆ mustBrake() [1/3]

bool NBTrafficLightDefinition::mustBrake ( const NBConnection possProhibited,
const NBConnection possProhibitor,
bool  regardNonSignalisedLowerPriority 
) const
inherited

Returns the information whether the described flow must let the other flow pass.

Parameters
[in]possProhibitedThe maybe prohibited connection
[in]possProhibitorThe maybe prohibiting connection
[in]regardNonSignalisedLowerPriorityWhether the right of way rules without traffic lights shall be regarded
Returns
Whether the second flow prohibits the first one
See also
forbids

Definition at line 263 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::forbids(), NBConnection::getFrom(), and NBConnection::getTo().

◆ mustBrake() [2/3]

bool NBTrafficLightDefinition::mustBrake ( const NBEdge *const  from,
const NBEdge *const  to 
) const
inherited

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!

Parameters
[in]fromThe connection's start edge
[in]toThe connection's end edge
Returns
Whether the described connection must brake (has higher priorised foes)

Definition at line 236 of file NBTrafficLightDefinition.cpp.

References NBNode::mustBrake(), and NBTrafficLightDefinition::myControlledNodes.

Referenced by NBLoadedTLDef::mustBrake().

◆ mustBrake() [3/3]

bool NBTrafficLightDefinition::mustBrake ( const NBEdge *const  possProhibitedFrom,
const NBEdge *const  possProhibitedTo,
const NBEdge *const  possProhibitorFrom,
const NBEdge *const  possProhibitorTo,
bool  regardNonSignalisedLowerPriority 
) const
inherited

Returns the information whether the described flow must let any other flow pass.

Parameters
[in]possProhibitedFromThe maybe prohibited connection's begin
[in]possProhibitedToThe maybe prohibited connection's end
[in]possProhibitorFromThe maybe prohibiting connection's begin
[in]possProhibitorToThe maybe prohibiting connection's end
[in]regardNonSignalisedLowerPriorityWhether the right of way rules without traffic lights shall be regarded
Returns
Whether the second flow prohibits the first one
See also
forbids

Definition at line 251 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::forbids().

◆ myCompute()

NBTrafficLightLogic * NBOwnTLDef::myCompute ( int  brakingTimeSeconds)
protectedvirtual

Computes the traffic light logic finally in dependence to the type.

Parameters
[in]brakingTimeDuration a vehicle needs for braking in front of the tls
Returns
The computed logic
See also
NBTrafficLightDefinition::myCompute

Implements NBTrafficLightDefinition.

Definition at line 235 of file NBOwnTLDef.cpp.

References computeLogicAndConts().

◆ needsCont()

bool NBTrafficLightDefinition::needsCont ( const NBEdge fromE,
const NBEdge toE,
const NBEdge otherFromE,
const NBEdge otherToE 
) const
inherited

◆ patchStateForCrossings()

std::string NBOwnTLDef::patchStateForCrossings ( const std::string &  state,
const std::vector< NBNode::Crossing * > &  crossings,
const EdgeVector fromEdges,
const EdgeVector toEdges 
)
static

compute phase state in regard to pedestrian crossings

Definition at line 682 of file NBOwnTLDef.cpp.

References NBNode::Crossing::edges, NBNode::getDirection(), isForbidden(), LINKDIR_PARTLEFT, LINKDIR_PARTRIGHT, LINKDIR_STRAIGHT, NBNode::mustBrakeForCrossing(), and NBNode::Crossing::node.

Referenced by addPedestrianPhases().

◆ remapRemoved()

void NBOwnTLDef::remapRemoved ( NBEdge removed,
const EdgeVector incoming,
const EdgeVector outgoing 
)
virtual

Replaces occurences of the removed edge in incoming/outgoing edges of all definitions.

Parameters
[in]removedThe removed edge
[in]incomingThe edges to use instead if an incoming edge was removed
[in]outgoingThe edges to use instead if an outgoing edge was removed
See also
NBTrafficLightDefinition::remapRemoved

Implements NBTrafficLightDefinition.

Definition at line 748 of file NBOwnTLDef.cpp.

◆ removeConnection()

virtual void NBTrafficLightDefinition::removeConnection ( const NBConnection conn,
bool  reconstruct = true 
)
inlinevirtualinherited

removes the given connection from the traffic light if recontruct=true, reconstructs the logic and informs the edges for immediate use in NETEDIT

Note
: tlIndex is not necessarily unique. we need the whole connection data here

Reimplemented in NBLoadedSUMOTLDef.

Definition at line 165 of file NBTrafficLightDefinition.h.

References UNUSED_PARAMETER.

◆ removeNode()

void NBTrafficLightDefinition::removeNode ( NBNode node)
virtualinherited

Removes the given node from the list of controlled nodes.

Parameters
[in]nodeThe node that shall not be controlled by the tls any more

Definition at line 425 of file NBTrafficLightDefinition.cpp.

References NBTrafficLightDefinition::myControlledNodes.

Referenced by NBNode::removeTrafficLight().

◆ replaceRemoved()

void NBOwnTLDef::replaceRemoved ( NBEdge removed,
int  removedLane,
NBEdge by,
int  byLane 
)
protectedvirtual

Replaces a removed edge/lane.

Parameters
[in]removedThe edge to replace
[in]removedLaneThe lane of this edge to replace
[in]byThe edge to insert instead
[in]byLaneThis edge's lane to insert instead
See also
NBTrafficLightDefinition::replaceRemoved

Implements NBTrafficLightDefinition.

Definition at line 753 of file NBOwnTLDef.cpp.

◆ rightOnRedConflict()

bool NBTrafficLightDefinition::rightOnRedConflict ( int  index,
int  foeIndex 
) const
virtualinherited

◆ setID()

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

◆ setParameter()

void Parameterised::setParameter ( const std::string &  key,
const std::string &  value 
)
inherited

Sets a parameter.

Parameters
[in]keyThe parameter's name
[in]valueThe parameter's value

Definition at line 45 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NLHandler::addDistrict(), SUMORouteHandler::addParam(), ShapeHandler::addPOI(), NBEdge::append(), NIImporter_OpenStreetMap::insertNodeChecking(), NBNodeCont::joinNodeCluster(), NBEdge::Lane::Lane(), NIImporter_OpenDrive::loadNetwork(), NIXMLTrafficLightsHandler::myStartElement(), MSStateHandler::myStartElement(), ShapeHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), GNEAdditionalHandler::parseGenericParameter(), GNEVehicleType::setAttribute(), GNEConnection::setGenericParametersStr(), GNEVehicleType::setGenericParametersStr(), GNELane::setGenericParametersStr(), GNEPoly::setGenericParametersStr(), GNEStop::setGenericParametersStr(), GNEPOI::setGenericParametersStr(), GNEJunction::setGenericParametersStr(), GNERide::setGenericParametersStr(), GNEPersonTrip::setGenericParametersStr(), GNEWalk::setGenericParametersStr(), GNEEdge::setGenericParametersStr(), GNERoute::setGenericParametersStr(), GNEPerson::setGenericParametersStr(), GNEAdditional::setGenericParametersStr(), GNEVehicle::setGenericParametersStr(), NIImporter_OpenDrive::setLaneAttributes(), libsumo::Route::setParameter(), libsumo::Polygon::setParameter(), libsumo::TrafficLight::setParameter(), libsumo::POI::setParameter(), libsumo::Edge::setParameter(), and libsumo::Lane::setParameter().

◆ setParticipantsInformation()

◆ setProgramID()

void NBTrafficLightDefinition::setProgramID ( const std::string &  programID)
inlineinherited

Sets the programID.

Parameters
[in]programIDThe new ID of the program (subID)

Definition at line 317 of file NBTrafficLightDefinition.h.

References NBTrafficLightDefinition::mySubID.

Referenced by NBTrafficLightLogicCont::insert(), GNEJunction::invalidateTLS(), and NBLoadedSUMOTLDef::reconstructLogic().

◆ setSinglePhase()

void NBOwnTLDef::setSinglePhase ( )
inline

Forces the definition not to compute an additional phase for left-movers.

Definition at line 105 of file NBOwnTLDef.h.

References myHaveSinglePhase.

◆ setTLControllingInformation()

void NBOwnTLDef::setTLControllingInformation ( ) const
virtual

◆ setType()

virtual void NBTrafficLightDefinition::setType ( TrafficLightType  type)
inlinevirtualinherited

set the algorithm type (static etc..)

Reimplemented in NBLoadedSUMOTLDef.

Definition at line 336 of file NBTrafficLightDefinition.h.

References NBTrafficLightDefinition::myType.

◆ shiftTLConnectionLaneIndex()

virtual void NBTrafficLightDefinition::shiftTLConnectionLaneIndex ( NBEdge edge,
int  offset,
int  threshold = -1 
)
inlinevirtualinherited

patches (loaded) signal plans by modifying lane indices

Reimplemented in NBLoadedSUMOTLDef.

Definition at line 282 of file NBTrafficLightDefinition.h.

References UNUSED_PARAMETER.

◆ unsetParameter()

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

Removes a parameter.

Parameters
[in]keyThe parameter's name

Definition at line 51 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by GNEVehicleType::setAttribute().

◆ updateParameter()

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

◆ usingSignalGroups()

virtual bool NBTrafficLightDefinition::usingSignalGroups ( ) const
inlinevirtualinherited

whether this definition uses signal group (multiple connections with the same link index)

Reimplemented in NBLoadedSUMOTLDef.

Definition at line 369 of file NBTrafficLightDefinition.h.

◆ writeParams()

Field Documentation

◆ DefaultProgramID

const std::string NBTrafficLightDefinition::DefaultProgramID = "0"
staticinherited

◆ DummyID

◆ myControlledInnerEdges

std::set<std::string> NBTrafficLightDefinition::myControlledInnerEdges
protectedinherited

◆ myControlledLinks

◆ myControlledNodes

◆ myEdgesWithin

EdgeVector NBTrafficLightDefinition::myEdgesWithin
protectedinherited

The list of edges within the area controlled by the tls.

Definition at line 413 of file NBTrafficLightDefinition.h.

Referenced by NBLoadedSUMOTLDef::collectEdges(), and NBTrafficLightDefinition::collectEdges().

◆ myHaveSinglePhase

bool NBOwnTLDef::myHaveSinglePhase
private

Whether left-mover should not have an additional phase.

Definition at line 282 of file NBOwnTLDef.h.

Referenced by computeLogicAndConts(), and setSinglePhase().

◆ myID

◆ myIncomingEdges

◆ myMap

◆ myNeedsContRelation

◆ myNeedsContRelationReady

◆ myOffset

◆ myRightOnRedConflicts

◆ myRightOnRedConflictsReady

bool NBTrafficLightDefinition::myRightOnRedConflictsReady
mutableprotectedinherited

◆ mySubID

std::string NBTrafficLightDefinition::mySubID
protectedinherited

The tls program's subid.

Definition at line 422 of file NBTrafficLightDefinition.h.

Referenced by NBTrafficLightDefinition::getProgramID(), and NBTrafficLightDefinition::setProgramID().

◆ myType

◆ UNSPECIFIED_DURATION


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