SUMO - Simulation of Urban MObility

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

Information whether this switch command is still valid.

Definition at line 399 of file MSTrafficLightLogic.h.

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

Definition at line 396 of file MSTrafficLightLogic.h.

Referenced by getNextSwitchTime().

The responsible traffic lights control.

Definition at line 390 of file MSTrafficLightLogic.h.

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:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines