SUMO - Simulation of Urban MObility
Command_SaveTLSSwitchStates Class Reference

Writes the switch times of a tls into a file when the tls switches. More...

#include <Command_SaveTLSSwitchStates.h>

Inheritance diagram for Command_SaveTLSSwitchStates:
Inheritance graph
Collaboration diagram for Command_SaveTLSSwitchStates:
Collaboration graph

Public Member Functions

 Command_SaveTLSSwitchStates (const MSTLLogicControl::TLSLogicVariants &logics, OutputDevice &od)
 Constructor. More...
 
 ~Command_SaveTLSSwitchStates ()
 Destructor. More...
 
Derived from Command
SUMOTime execute (SUMOTime currentTime)
 Writes the state of the tls if a change occured. More...
 

Private Member Functions

 Command_SaveTLSSwitchStates (const Command_SaveTLSSwitchStates &)
 Invalidated copy constructor. More...
 
Command_SaveTLSSwitchStatesoperator= (const Command_SaveTLSSwitchStates &)
 Invalidated assignment operator. More...
 

Private Attributes

const MSTLLogicControl::TLSLogicVariantsmyLogics
 The traffic light logic to use. More...
 
OutputDevicemyOutputDevice
 The device to write to. More...
 
std::string myPreviousProgramID
 Storage for prior sub-id. More...
 
std::string myPreviousState
 Storage for prior state. More...
 

Detailed Description

Writes the switch times of a tls into a file when the tls switches.

Todo:
Revalidate this - as tls are not seting the link information directly ater being switched, the computed information may be delayed

Definition at line 56 of file Command_SaveTLSSwitchStates.h.

Constructor & Destructor Documentation

◆ Command_SaveTLSSwitchStates() [1/2]

Command_SaveTLSSwitchStates::Command_SaveTLSSwitchStates ( const MSTLLogicControl::TLSLogicVariants logics,
OutputDevice od 
)

Constructor.

Parameters
[in]tllsThe logic to write state of
[in]odThe output device to write the state into

Definition at line 42 of file Command_SaveTLSSwitchStates.cpp.

References MSEventControl::addEvent(), MSNet::getEndOfTimestepEvents(), MSNet::getInstance(), myOutputDevice, and OutputDevice::writeXMLHeader().

◆ ~Command_SaveTLSSwitchStates()

Command_SaveTLSSwitchStates::~Command_SaveTLSSwitchStates ( )

Destructor.

Definition at line 50 of file Command_SaveTLSSwitchStates.cpp.

◆ Command_SaveTLSSwitchStates() [2/2]

Command_SaveTLSSwitchStates::Command_SaveTLSSwitchStates ( const Command_SaveTLSSwitchStates )
private

Invalidated copy constructor.

Member Function Documentation

◆ execute()

SUMOTime Command_SaveTLSSwitchStates::execute ( SUMOTime  currentTime)
virtual

Writes the state of the tls if a change occured.

If the state or the active program has changed, the state is written to the output device.

Parameters
[in]currentTimeThe current simulation time
Returns
Always DELTA_T (will be executed in next time step)
See also
Command
Todo:
Here, a discrete even (on switch / program change) would be appropriate

Implements Command.

Definition at line 55 of file Command_SaveTLSSwitchStates.cpp.

References DELTA_T, MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseDef(), MSTrafficLightLogic::getCurrentPhaseIndex(), Named::getID(), MSTrafficLightLogic::getProgramID(), MSPhaseDefinition::getState(), myLogics, myOutputDevice, myPreviousProgramID, myPreviousState, and time2string().

◆ operator=()

Command_SaveTLSSwitchStates& Command_SaveTLSSwitchStates::operator= ( const Command_SaveTLSSwitchStates )
private

Invalidated assignment operator.

Field Documentation

◆ myLogics

const MSTLLogicControl::TLSLogicVariants& Command_SaveTLSSwitchStates::myLogics
private

The traffic light logic to use.

Definition at line 93 of file Command_SaveTLSSwitchStates.h.

Referenced by execute().

◆ myOutputDevice

OutputDevice& Command_SaveTLSSwitchStates::myOutputDevice
private

The device to write to.

Definition at line 90 of file Command_SaveTLSSwitchStates.h.

Referenced by Command_SaveTLSSwitchStates(), and execute().

◆ myPreviousProgramID

std::string Command_SaveTLSSwitchStates::myPreviousProgramID
private

Storage for prior sub-id.

Definition at line 99 of file Command_SaveTLSSwitchStates.h.

Referenced by execute().

◆ myPreviousState

std::string Command_SaveTLSSwitchStates::myPreviousState
private

Storage for prior state.

Definition at line 96 of file Command_SaveTLSSwitchStates.h.

Referenced by execute().


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