SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MSTrafficLightLogic::SwitchCommand Class Reference

Class realising the switch between the traffic light phases. More...

#include <MSTrafficLightLogic.h>

Inheritance diagram for MSTrafficLightLogic::SwitchCommand:
Command

Public Member Functions

void deschedule (MSTrafficLightLogic *tlLogic)
 Marks this swicth as invalid (if the phase duration has changed, f.e.)
SUMOTime execute (SUMOTime currentTime)
 Executes the regarded junction's "trySwitch"- method.
SUMOTime getNextSwitchTime () const
 Returns the assumed next switch time.
 SwitchCommand (MSTLLogicControl &tlcontrol, MSTrafficLightLogic *tlLogic, SUMOTime nextSwitch)
 Constructor.
 ~SwitchCommand ()
 Destructor.

Private Member Functions

SwitchCommand & operator= (const SwitchCommand &)
 Invalidated assignment operator.
 SwitchCommand (const SwitchCommand &)
 Invalidated copy constructor.

Private Attributes

bool myAmValid
 Information whether this switch command is still valid.
SUMOTime myAssumedNextSwitch
 Assumed switch time (may change in case of adaptive traffic lights)
MSTLLogicControl & myTLControl
 The responsible traffic lights control.
MSTrafficLightLogic * myTLLogic
 The logic to be executed on a switch.

Detailed Description

Class realising the switch between the traffic light phases.

Definition at line 353 of file MSTrafficLightLogic.h.


Constructor & Destructor Documentation

MSTrafficLightLogic::SwitchCommand::SwitchCommand ( MSTLLogicControl &  tlcontrol,
MSTrafficLightLogic *  tlLogic,
SUMOTime  nextSwitch 
)

Constructor.

Parameters:
[in]tlcontrolThe responsible traffic lights control
[in]tlLogicThe controlled tls logic
[in]durationDuration till next switch

Definition at line 54 of file MSTrafficLightLogic.cpp.

MSTrafficLightLogic::SwitchCommand::~SwitchCommand ( )

Destructor.

Definition at line 60 of file MSTrafficLightLogic.cpp.

MSTrafficLightLogic::SwitchCommand::SwitchCommand ( const SwitchCommand &  )
private

Invalidated copy constructor.


Member Function Documentation

void MSTrafficLightLogic::SwitchCommand::deschedule ( MSTrafficLightLogic *  tlLogic)

Marks this swicth as invalid (if the phase duration has changed, f.e.)

Parameters:
[in]tlLogicThe controlled tls logic

Definition at line 91 of file MSTrafficLightLogic.cpp.

Referenced by MSSimpleTrafficLightLogic::changeStepAndDuration(), and MSTrafficLightLogic::~MSTrafficLightLogic().

SUMOTime MSTrafficLightLogic::SwitchCommand::execute ( SUMOTime  currentTime)
virtual

Executes the regarded junction's "trySwitch"- method.

Parameters:
[in]currentTimeThe current simulation time
Returns:
The time after which the command shall be executed again (the time of next switch)

Implements Command.

Definition at line 65 of file MSTrafficLightLogic.cpp.

References MSTLLogicControl::TLSLogicVariants::executeOnSwitchActions().

SUMOTime MSTrafficLightLogic::SwitchCommand::getNextSwitchTime ( ) const
inline

Returns the assumed next switch time.

Returns:
The assumed next switch time

Definition at line 383 of file MSTrafficLightLogic.h.

References myAssumedNextSwitch.

Referenced by MSTrafficLightLogic::getNextSwitchTime().

SwitchCommand& MSTrafficLightLogic::SwitchCommand::operator= ( const SwitchCommand &  )
private

Invalidated assignment operator.


Field Documentation

bool MSTrafficLightLogic::SwitchCommand::myAmValid
private

Information whether this switch command is still valid.

Definition at line 399 of file MSTrafficLightLogic.h.

SUMOTime MSTrafficLightLogic::SwitchCommand::myAssumedNextSwitch
private

Assumed switch time (may change in case of adaptive traffic lights)

Definition at line 396 of file MSTrafficLightLogic.h.

Referenced by getNextSwitchTime().

MSTLLogicControl& MSTrafficLightLogic::SwitchCommand::myTLControl
private

The responsible traffic lights control.

Definition at line 390 of file MSTrafficLightLogic.h.

MSTrafficLightLogic* MSTrafficLightLogic::SwitchCommand::myTLLogic
private

The logic to be executed on a switch.

Definition at line 393 of file MSTrafficLightLogic.h.


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