Package de.tudresden.sumo.cmd
Class Trafficlight
- java.lang.Object
-
- de.tudresden.sumo.cmd.Trafficlight
-
public class Trafficlight extends Object
The Class Trafficlight.- Author:
- Mario Krumnow, Evamarie Wiessner
-
-
Constructor Summary
Constructors Constructor Description Trafficlight()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static SumoCommand
getCompleteRedYellowGreenDefinition(String tlsID)
Returns the complete traffic light program.static SumoCommand
getControlledJunctions(String tlsID)
Returns the junctions controlled by the traffic light.static SumoCommand
getControlledLanes(String tlsID)
Returns the list of lanes which are controlled by the named traffic light.static SumoCommand
getControlledLinks(String tlsID)
Returns the links controlled by the traffic light, sorted by the signal index and described by giving the incoming, outgoing, and via lane.static SumoCommand
getExternalState(String tlsID)
Returns the external state.static SumoCommand
getIDCount()
Returns the number of all traffic lights in the network.static SumoCommand
getIDList()
Returns a list of IDs of all traffic lights within the scenario.static SumoCommand
getNextSwitch(String tlsID)
Returns the assumed time (in ms) at which the TLS changes the phase.static SumoCommand
getParameter(String tlsID, String param)
Returns the chosen parameter.static SumoCommand
getPhase(String tlsID)
Returns the index of the current phase in the current program.static SumoCommand
getPhaseDuration(String tlsID)
getPhaseDuration.static SumoCommand
getPhaseName(String tlsID)
Returns the name of the current phase in the current program.static SumoCommand
getProgram(String tlsID)
Returns the id of the current program.static SumoCommand
getRedYellowGreenState(String tlsID)
Returns the named tl's state as a tuple of light definitions from rRgGyYoO, for red, green, yellow, off, where lower case letters mean that the stream has to decelerate.static SumoCommand
setCompleteRedYellowGreenDefinition(String tlsID, SumoTLSProgram tls)
Set the complete traffic light program.static SumoCommand
setParameter(String tlsID, String param, String value)
Sets the chosen parameter.static SumoCommand
setPhase(String tlsID, int index)
Set the index of the current phase in the current program.static SumoCommand
setPhaseDuration(String tlsID, double phaseDuration)
Set the duration of the currently active phase (in s?).static SumoCommand
setPhaseName(String tlsID, String name)
Set the name of the current phase in the current program.static SumoCommand
setProgram(String tlsID, String programID)
Set the id of the current program.static SumoCommand
setRedYellowGreenState(String tlsID, String state)
Set the named tl's state as a tuple of light definitions.
-
-
-
Method Detail
-
getCompleteRedYellowGreenDefinition
public static SumoCommand getCompleteRedYellowGreenDefinition(String tlsID)
Returns the complete traffic light program.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- program definition
-
getIDCount
public static SumoCommand getIDCount()
Returns the number of all traffic lights in the network.- Returns:
- number of traffic lights
-
getPhaseDuration
public static SumoCommand getPhaseDuration(String tlsID)
getPhaseDuration.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- phase duration
-
getControlledLanes
public static SumoCommand getControlledLanes(String tlsID)
Returns the list of lanes which are controlled by the named traffic light.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- list of controlled lanes
-
getControlledLinks
public static SumoCommand getControlledLinks(String tlsID)
Returns the links controlled by the traffic light, sorted by the signal index and described by giving the incoming, outgoing, and via lane.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- list of controlled links
-
getControlledJunctions
public static SumoCommand getControlledJunctions(String tlsID)
Returns the junctions controlled by the traffic light.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- list of controlled junctions
-
getExternalState
public static SumoCommand getExternalState(String tlsID)
Returns the external state.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- compound of the external state
-
getIDList
public static SumoCommand getIDList()
Returns a list of IDs of all traffic lights within the scenario.- Returns:
- a list of IDs of all TLS
-
getNextSwitch
public static SumoCommand getNextSwitch(String tlsID)
Returns the assumed time (in ms) at which the TLS changes the phase.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- absolute time, counting from simulation start, at which TLS may change
-
getParameter
public static SumoCommand getParameter(String tlsID, String param)
Returns the chosen parameter.- Parameters:
tlsID
- a string identifying the traffic lightparam
- a string identifying the parameter- Returns:
- the specific parameter
-
setParameter
public static SumoCommand setParameter(String tlsID, String param, String value)
Sets the chosen parameter.- Parameters:
tlsID
- the tls IDparam
- a string identifying the parametervalue
- a string identifying the new value- Returns:
- SumoCommand
-
getPhase
public static SumoCommand getPhase(String tlsID)
Returns the index of the current phase in the current program.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- index of the current phase
-
getPhaseName
public static SumoCommand getPhaseName(String tlsID)
Returns the name of the current phase in the current program.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- name of the current phase
-
getProgram
public static SumoCommand getProgram(String tlsID)
Returns the id of the current program.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- index of the current program
-
getRedYellowGreenState
public static SumoCommand getRedYellowGreenState(String tlsID)
Returns the named tl's state as a tuple of light definitions from rRgGyYoO, for red, green, yellow, off, where lower case letters mean that the stream has to decelerate.- Parameters:
tlsID
- a string identifying the traffic light- Returns:
- SumoCommand
-
setCompleteRedYellowGreenDefinition
public static SumoCommand setCompleteRedYellowGreenDefinition(String tlsID, SumoTLSProgram tls)
Set the complete traffic light program.- Parameters:
tlsID
- a string identifying the traffic lighttls
- complete program definition- Returns:
- SumoCommand
-
setPhase
public static SumoCommand setPhase(String tlsID, int index)
Set the index of the current phase in the current program.- Parameters:
tlsID
- a string identifying the traffic lightindex
- an integer identifying the phase (it must be between 0 and the number of phases known to the current program of the tls - 1)- Returns:
- SumoCommand
-
setPhaseName
public static SumoCommand setPhaseName(String tlsID, String name)
Set the name of the current phase in the current program.- Parameters:
tlsID
- a string identifying the traffic lightname
- a string with the phase name- Returns:
- SumoCommand
-
setPhaseDuration
public static SumoCommand setPhaseDuration(String tlsID, double phaseDuration)
Set the duration of the currently active phase (in s?).- Parameters:
tlsID
- a string identifying the traffic lightphaseDuration
- remaining duration of the current phase- Returns:
- SumoCommand
-
setProgram
public static SumoCommand setProgram(String tlsID, String programID)
Set the id of the current program.- Parameters:
tlsID
- a string identifying the traffic lightprogramID
- a string identifying the program- Returns:
- SumoCommand
-
setRedYellowGreenState
public static SumoCommand setRedYellowGreenState(String tlsID, String state)
Set the named tl's state as a tuple of light definitions.- Parameters:
tlsID
- a string identifying the traffic lightstate
- as a tuple of light definitions from rRgGyYoO, for red, green, yellow, off, where lower case letters mean that the stream has to decelerate- Returns:
- SumoCommand
-
-