SUMO - Simulation of Urban MObility
MSSOTLPhasePolicy Class Reference

Class for low-level phase policy. More...

#include <MSSOTLPhasePolicy.h>

Inheritance diagram for MSSOTLPhasePolicy:
Inheritance graph
Collaboration diagram for MSSOTLPhasePolicy:
Collaboration graph

Public Member Functions

void addParameter (const std::string &key, const std::string &value)
 Adds a parameter. More...
 
void addParameter (const std::map< std::string, std::string > &mapArg)
 Adds all given parameter. More...
 
void addParameter (const Parameterised &p)
 Adds all given parameter. More...
 
bool canRelease (SUMOTime elapsed, bool thresholdPassed, bool pushButtonPressed, const MSPhaseDefinition *stage, int vehicleCount)
 
void clearParameter ()
 Clears the parameter map. More...
 
SUMOReal computeDesirability (SUMOReal vehInMeasure, SUMOReal vehOutMeasure, SUMOReal vehInDispersionMeasure, SUMOReal vehOutDispersionMeasure)
 Computes the desirability of this policy, necessary when used in combination with an high level policy. More...
 
SUMOReal computeDesirability (SUMOReal vehInMeasure, SUMOReal vehOutMeasure)
 
virtual int decideNextPhase (SUMOTime elapsed, const MSPhaseDefinition *stage, int currentPhaseIndex, int phaseMaxCTS, bool thresholdPassed, bool pushButtonPressed, int vehicleCount)
 
MSSOTLPolicyDesirabilitygetDesirabilityAlgorithm ()
 
const std::map< std::string, std::string > & getMap () const
 Returns the inner key/value map. More...
 
std::string getName ()
 
const std::string & getParameter (const std::string &key, const std::string &defaultValue) const
 Returns the value for a given key. More...
 
virtual SUMOReal getThetaSensitivity ()
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. More...
 
 MSSOTLPhasePolicy (const std::map< std::string, std::string > &parameters)
 
 MSSOTLPhasePolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm)
 
 MSSOTLPhasePolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm, const std::map< std::string, std::string > &parameters)
 
virtual void setThetaSensitivity (SUMOReal val)
 

Protected Member Functions

void init (std::string prefix, const Parameterised *parameterised)
 
void init ()
 
void init (std::string prefix, const Parameterised *parameterised)
 
bool pushButtonLogic (SUMOTime elapsed, bool pushButtonPressed, const MSPhaseDefinition *stage)
 
bool sigmoidLogic (SUMOTime elapsed, const MSPhaseDefinition *stage, int vehicleCount)
 

Protected Attributes

SUMOReal m_k
 
std::string m_prefix
 
std::string m_prefix
 
SUMOReal m_pushButtonScaleFactor
 
bool m_useSigmoid
 
bool m_useVehicleTypesWeights
 

Detailed Description

Class for low-level phase policy.

Definition at line 41 of file MSSOTLPhasePolicy.h.

Constructor & Destructor Documentation

MSSOTLPhasePolicy::MSSOTLPhasePolicy ( const std::map< std::string, std::string > &  parameters)

Definition at line 27 of file MSSOTLPhasePolicy.cpp.

References init().

MSSOTLPhasePolicy::MSSOTLPhasePolicy ( MSSOTLPolicyDesirability desirabilityAlgorithm)
MSSOTLPhasePolicy::MSSOTLPhasePolicy ( MSSOTLPolicyDesirability desirabilityAlgorithm,
const std::map< std::string, std::string > &  parameters 
)

Member Function Documentation

void Parameterised::addParameter ( const std::map< std::string, std::string > &  mapArg)
inherited

Adds all given parameter.

Parameters
[in]mapArgThe keys/values to insert

Definition at line 59 of file Parameterised.cpp.

References Parameterised::myMap.

void Parameterised::addParameter ( const Parameterised p)
inherited

Adds all given parameter.

Parameters
[in]pThe keys/values to insert

Definition at line 67 of file Parameterised.cpp.

References Parameterised::myMap.

bool MSSOTLPhasePolicy::canRelease ( SUMOTime  elapsed,
bool  thresholdPassed,
bool  pushButtonPressed,
const MSPhaseDefinition stage,
int  vehicleCount 
)
virtual
void Parameterised::clearParameter ( )
inherited

Clears the parameter map.

Definition at line 91 of file Parameterised.cpp.

References Parameterised::myMap.

SUMOReal MSSOTLPolicy::computeDesirability ( SUMOReal  vehInMeasure,
SUMOReal  vehOutMeasure,
SUMOReal  vehInDispersionMeasure,
SUMOReal  vehOutDispersionMeasure 
)
inherited

Computes the desirability of this policy, necessary when used in combination with an high level policy.

Definition at line 106 of file MSSOTLPolicy.cpp.

References MSSOTLPolicyDesirability::computeDesirability(), DBG, MSSOTLPolicy::getName(), MSSOTLPolicy::myDesirabilityAlgorithm, and WRITE_MESSAGE.

SUMOReal MSSOTLPolicy::computeDesirability ( SUMOReal  vehInMeasure,
SUMOReal  vehOutMeasure 
)
inherited
int MSSOTLPolicy::decideNextPhase ( SUMOTime  elapsed,
const MSPhaseDefinition stage,
int  currentPhaseIndex,
int  phaseMaxCTS,
bool  thresholdPassed,
bool  pushButtonPressed,
int  vehicleCount 
)
virtualinherited
const std::map<std::string, std::string>& Parameterised::getMap ( ) const
inlineinherited
const std::string & Parameterised::getParameter ( const std::string &  key,
const std::string &  defaultValue 
) const
inherited

Returns the value for a given key.

Parameters
[in]keyThe key to ask for
[in]defaultValueThe default value to return if no value is stored under the key
Returns
The value stored under the key

Definition at line 81 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), MSDevice_Example::buildVehicleDevices(), MSDevice_Battery::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), MSSOTLTrafficLightLogic::getDecayConstant(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSSOTLTrafficLightLogic::getThreshold(), PushButtonLogic::init(), init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), TraCIServerAPI_Edge::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Route::processGet(), TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_Polygon::processGet(), TraCIServerAPI_POI::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_Lane::processGet(), MSSOTLPolicyDesirability::readParameter(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), and TraCIServerAPI_Vehicle::vtdMap().

virtual SUMOReal MSSOTLPolicy::getThetaSensitivity ( )
inlinevirtualinherited
void PushButtonLogic::init ( std::string  prefix,
const Parameterised parameterised 
)
protectedinherited
void MSSOTLPhasePolicy::init ( )
protectedvirtual
void SigmoidLogic::init ( std::string  prefix,
const Parameterised parameterised 
)
protectedinherited
bool Parameterised::knowsParameter ( const std::string &  key) const
inherited

Returns whether the parameter is known.

Parameters
[in]keyThe key to ask for
Returns
Whether the key is known

Definition at line 75 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSDevice_Example::buildVehicleDevices(), and MSDevice::equippedByDefaultAssignmentOptions().

bool PushButtonLogic::pushButtonLogic ( SUMOTime  elapsed,
bool  pushButtonPressed,
const MSPhaseDefinition stage 
)
protectedinherited
virtual void MSSOTLPolicy::setThetaSensitivity ( SUMOReal  val)
inlinevirtualinherited

Definition at line 122 of file MSSOTLPolicy.h.

Referenced by MSSwarmTrafficLightLogic::updateSensitivities().

bool SigmoidLogic::sigmoidLogic ( SUMOTime  elapsed,
const MSPhaseDefinition stage,
int  vehicleCount 
)
protectedinherited

Field Documentation

SUMOReal SigmoidLogic::m_k
protectedinherited

Definition at line 63 of file MSSOTLPolicy.h.

std::string PushButtonLogic::m_prefix
protectedinherited
std::string SigmoidLogic::m_prefix
protectedinherited

Definition at line 64 of file MSSOTLPolicy.h.

SUMOReal PushButtonLogic::m_pushButtonScaleFactor
protectedinherited

Definition at line 52 of file MSSOTLPolicy.h.

Referenced by PushButtonLogic::init(), and PushButtonLogic::pushButtonLogic().

bool SigmoidLogic::m_useSigmoid
protectedinherited

Definition at line 62 of file MSSOTLPolicy.h.

bool MSSOTLPhasePolicy::m_useVehicleTypesWeights
protected

Definition at line 54 of file MSSOTLPhasePolicy.h.

Referenced by canRelease(), and init().


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