SUMO - Simulation of Urban MObility
Command_SaveTLSSwitches Class Reference

Writes information about the green durations of a tls. More...

#include <Command_SaveTLSSwitches.h>

Inheritance diagram for Command_SaveTLSSwitches:
Command

Public Member Functions

 Command_SaveTLSSwitches (const MSTLLogicControl::TLSLogicVariants &logics, OutputDevice &od)
 Constructor.
 ~Command_SaveTLSSwitches ()
 Destructor.
Derived from Command
SUMOTime execute (SUMOTime currentTime)
 Writes the output if a change occured.

Private Member Functions

 Command_SaveTLSSwitches (const Command_SaveTLSSwitches &)
 Invalidated copy constructor.
Command_SaveTLSSwitchesoperator= (const Command_SaveTLSSwitches &)
 Invalidated assignment operator.

Private Attributes

const
MSTLLogicControl::TLSLogicVariants
myLogics
 The traffic light logic to use.
OutputDevicemyOutputDevice
 The device to write to.
std::map< int, SUMOTimemyPreviousLinkStates
 Storage for prior states; map from signal group to last green time begin.

Detailed Description

Writes information about the green durations of a tls.

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_SaveTLSSwitches.h.


Constructor & Destructor Documentation

Constructor.

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

Definition at line 49 of file Command_SaveTLSSwitches.cpp.

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

Invalidated copy constructor.


Member Function Documentation

Writes the output if a change occured.

Called in each tme step, this class computes which link have red since the last tls switch and writes the information about their green duration into the given stream.

Information whether a link had green and since when is stored in "myPreviousLinkStates".

Parameters:
[in]currentTimeThe current simulation time
Returns:
Always DELTA_T (will be executed in next time step)
See also:
Command

Implements Command.

Definition at line 62 of file Command_SaveTLSSwitches.cpp.

References DELTA_T, MSTLLogicControl::TLSLogicVariants::getActive(), MSTrafficLightLogic::getCurrentPhaseDef(), Named::getID(), MSTrafficLightLogic::getID(), MSLink::getLane(), MSTrafficLightLogic::getLanesAt(), MSTrafficLightLogic::getLinks(), MSTrafficLightLogic::getProgramID(), MSPhaseDefinition::getState(), LINKSTATE_TL_GREEN_MAJOR, LINKSTATE_TL_GREEN_MINOR, myLogics, myOutputDevice, myPreviousLinkStates, and time2string().

Command_SaveTLSSwitches& Command_SaveTLSSwitches::operator= ( const Command_SaveTLSSwitches ) [private]

Invalidated assignment operator.


Field Documentation

The traffic light logic to use.

Definition at line 96 of file Command_SaveTLSSwitches.h.

Referenced by execute().

The device to write to.

Definition at line 93 of file Command_SaveTLSSwitches.h.

Referenced by Command_SaveTLSSwitches(), and execute().

Storage for prior states; map from signal group to last green time begin.

Definition at line 99 of file Command_SaveTLSSwitches.h.

Referenced by execute().


The documentation for this class was generated from the following files:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines