SUMO - Simulation of Urban MObility
Command_SaveTLCoupledLaneDet Class Reference

Writes e2 state of a link for the time the link has yellow/red. More...

#include <Command_SaveTLCoupledLaneDet.h>

Inheritance diagram for Command_SaveTLCoupledLaneDet:
Inheritance graph
Collaboration diagram for Command_SaveTLCoupledLaneDet:
Collaboration graph

Public Member Functions

 Command_SaveTLCoupledLaneDet (MSTLLogicControl::TLSLogicVariants &tlls, MSDetectorFileOutput *dtf, SUMOTime begin, OutputDevice &device, MSLink *link)
 Constructor. More...
 
void execute ()
 Executes the command. More...
 
 ~Command_SaveTLCoupledLaneDet ()
 Destructor. More...
 

Protected Attributes

MSDetectorFileOutputmyDetector
 The detector to use. More...
 
OutputDevicemyDevice
 The file to write the output to. More...
 
const MSTLLogicControl::TLSLogicVariantsmyLogics
 The logic to use. More...
 
SUMOTime myStartTime
 The last time the values were written. More...
 

Private Member Functions

 Command_SaveTLCoupledLaneDet (const Command_SaveTLCoupledLaneDet &)
 Invalidated copy constructor. More...
 
Command_SaveTLCoupledLaneDetoperator= (const Command_SaveTLCoupledLaneDet &)
 Invalidated assignment operator. More...
 

Private Attributes

bool myHadOne
 Whether the last link state was already saved. More...
 
LinkState myLastState
 The state the link had the last time. More...
 
MSLinkmyLink
 The link to observe. More...
 

Detailed Description

Writes e2 state of a link for the time the link has yellow/red.

Todo:
Problem: The detector may not save the last state (on simulation end)

Definition at line 48 of file Command_SaveTLCoupledLaneDet.h.

Constructor & Destructor Documentation

◆ Command_SaveTLCoupledLaneDet() [1/2]

Command_SaveTLCoupledLaneDet::Command_SaveTLCoupledLaneDet ( MSTLLogicControl::TLSLogicVariants tlls,
MSDetectorFileOutput dtf,
SUMOTime  begin,
OutputDevice device,
MSLink link 
)

Constructor.

Parameters
[in]tllsThe logic to observe
[in]dtfThe detector used to generate the values
[in]beginThe begin simulation time
[in]deviceThe output device to write the detector values into
[in]linkThe link that shall be observed

Definition at line 47 of file Command_SaveTLCoupledLaneDet.cpp.

References execute().

◆ ~Command_SaveTLCoupledLaneDet()

Command_SaveTLCoupledLaneDet::~Command_SaveTLCoupledLaneDet ( )

Destructor.

Definition at line 56 of file Command_SaveTLCoupledLaneDet.cpp.

◆ Command_SaveTLCoupledLaneDet() [2/2]

Command_SaveTLCoupledLaneDet::Command_SaveTLCoupledLaneDet ( const Command_SaveTLCoupledLaneDet )
private

Invalidated copy constructor.

Member Function Documentation

◆ execute()

void Command_SaveTLCoupledLaneDet::execute ( )
virtual

Executes the command.

Called when an active tls program switches, this method checks whether the tls signal responsible for the link has switched to green. If so, the values collected so far are written using "writeXMLOutput". Otherwise, the values are reset.

See also
MSDetectorFileOutput::writeXMLOutput
MSE2Collector::writeXMLOutput

Reimplemented from Command_SaveTLCoupledDet.

Definition at line 61 of file Command_SaveTLCoupledLaneDet.cpp.

References MSNet::getCurrentTimeStep(), MSNet::getInstance(), MSLink::getState(), LINKSTATE_TL_RED, Command_SaveTLCoupledDet::myDetector, Command_SaveTLCoupledDet::myDevice, myHadOne, myLastState, myLink, Command_SaveTLCoupledDet::myStartTime, MSDetectorFileOutput::reset(), and MSDetectorFileOutput::writeXMLOutput().

Referenced by Command_SaveTLCoupledLaneDet().

◆ operator=()

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

Invalidated assignment operator.

Field Documentation

◆ myDetector

MSDetectorFileOutput* Command_SaveTLCoupledDet::myDetector
protectedinherited

The detector to use.

Definition at line 92 of file Command_SaveTLCoupledDet.h.

Referenced by execute(), and Command_SaveTLCoupledDet::execute().

◆ myDevice

OutputDevice& Command_SaveTLCoupledDet::myDevice
protectedinherited

The file to write the output to.

Definition at line 86 of file Command_SaveTLCoupledDet.h.

Referenced by execute(), and Command_SaveTLCoupledDet::execute().

◆ myHadOne

bool Command_SaveTLCoupledLaneDet::myHadOne
private

Whether the last link state was already saved.

Definition at line 88 of file Command_SaveTLCoupledLaneDet.h.

Referenced by execute().

◆ myLastState

LinkState Command_SaveTLCoupledLaneDet::myLastState
private

The state the link had the last time.

Definition at line 85 of file Command_SaveTLCoupledLaneDet.h.

Referenced by execute().

◆ myLink

MSLink* Command_SaveTLCoupledLaneDet::myLink
private

The link to observe.

Definition at line 82 of file Command_SaveTLCoupledLaneDet.h.

Referenced by execute().

◆ myLogics

const MSTLLogicControl::TLSLogicVariants& Command_SaveTLCoupledDet::myLogics
protectedinherited

The logic to use.

Definition at line 89 of file Command_SaveTLCoupledDet.h.

◆ myStartTime

SUMOTime Command_SaveTLCoupledDet::myStartTime
protectedinherited

The last time the values were written.

Definition at line 95 of file Command_SaveTLCoupledDet.h.

Referenced by execute(), and Command_SaveTLCoupledDet::execute().


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