SUMO - Simulation of Urban MObility
MSSOTLMarchingPolicy Class Reference

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

#include <MSSOTLMarchingPolicy.h>

Inheritance diagram for MSSOTLMarchingPolicy:
Inheritance graph
Collaboration diagram for MSSOTLMarchingPolicy:
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...
 
double computeDesirability (double vehInMeasure, double vehOutMeasure, double vehInDispersionMeasure, double vehOutDispersionMeasure)
 Computes the desirability of this policy, necessary when used in combination with an high level policy. More...
 
double computeDesirability (double vehInMeasure, double vehOutMeasure)
 
virtual int decideNextPhase (SUMOTime elapsed, const MSPhaseDefinition *stage, int currentPhaseIndex, int phaseMaxCTS, bool thresholdPassed, bool pushButtonPressed, int vehicleCount)
 
MSSOTLPolicyDesirabilitygetDesirabilityAlgorithm ()
 
double getDouble (const std::string &key, const double defaultValue) const
 Returns the value for a given key converted to a double. More...
 
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 double getThetaSensitivity ()
 
bool knowsParameter (const std::string &key) const
 Returns whether the parameter is known. More...
 
 MSSOTLMarchingPolicy (const std::map< std::string, std::string > &parameters)
 
 MSSOTLMarchingPolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm)
 
 MSSOTLMarchingPolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm, const std::map< std::string, std::string > &parameters)
 
virtual void setThetaSensitivity (double val)
 
void writeParams (OutputDevice &out) const
 

Protected Member Functions

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

Protected Attributes

std::string m_prefix
 
double m_pushButtonScaleFactor
 

Detailed Description

Class for low-level marching policy.

Definition at line 41 of file MSSOTLMarchingPolicy.h.

Constructor & Destructor Documentation

◆ MSSOTLMarchingPolicy() [1/3]

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

Definition at line 25 of file MSSOTLMarchingPolicy.cpp.

References init().

◆ MSSOTLMarchingPolicy() [2/3]

MSSOTLMarchingPolicy::MSSOTLMarchingPolicy ( MSSOTLPolicyDesirability desirabilityAlgorithm)

◆ MSSOTLMarchingPolicy() [3/3]

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

Member Function Documentation

◆ addParameter() [1/3]

◆ addParameter() [2/3]

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 57 of file Parameterised.cpp.

References Parameterised::myMap.

◆ addParameter() [3/3]

void Parameterised::addParameter ( const Parameterised p)
inherited

Adds all given parameter.

Parameters
[in]pThe keys/values to insert

Definition at line 65 of file Parameterised.cpp.

References Parameterised::myMap.

◆ canRelease()

bool MSSOTLMarchingPolicy::canRelease ( SUMOTime  elapsed,
bool  thresholdPassed,
bool  pushButtonPressed,
const MSPhaseDefinition stage,
int  vehicleCount 
)
virtual

◆ clearParameter()

void Parameterised::clearParameter ( )
inherited

Clears the parameter map.

Definition at line 99 of file Parameterised.cpp.

References Parameterised::myMap.

◆ computeDesirability() [1/2]

double MSSOTLPolicy::computeDesirability ( double  vehInMeasure,
double  vehOutMeasure,
double  vehInDispersionMeasure,
double  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.

◆ computeDesirability() [2/2]

double MSSOTLPolicy::computeDesirability ( double  vehInMeasure,
double  vehOutMeasure 
)
inherited

◆ decideNextPhase()

int MSSOTLPolicy::decideNextPhase ( SUMOTime  elapsed,
const MSPhaseDefinition stage,
int  currentPhaseIndex,
int  phaseMaxCTS,
bool  thresholdPassed,
bool  pushButtonPressed,
int  vehicleCount 
)
virtualinherited

◆ getDesirabilityAlgorithm()

◆ getDouble()

double Parameterised::getDouble ( const std::string &  key,
const double  defaultValue 
) const
inherited

Returns the value for a given key converted to a double.

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 89 of file Parameterised.cpp.

References TplConvert::_2double(), and Parameterised::myMap.

Referenced by MSDevice_Battery::buildVehicleDevices().

◆ getMap()

const std::map<std::string, std::string>& Parameterised::getMap ( ) const
inlineinherited

◆ getName()

◆ getParameter()

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 79 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSTLLogicControl::WAUTSwitchProcedure_Stretch::adaptLogic(), MSDevice_Battery::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), MSDevice::equippedByDefaultAssignmentOptions(), MSSOTLTrafficLightLogic::getDecayConstant(), MSDevice_SSM::getDetectionRange(), MSTLLogicControl::WAUTSwitchProcedure::getGSPValue(), MSSOTLTrafficLightLogic::getInputSensorsLength(), MSDevice_SSM::getLoggingFrequency(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), MSSOTLRequestTrafficLightLogic::getMinDecisionalPhaseDuration(), MSSOTLTrafficLightLogic::getMode(), MSDevice_SSM::getOutputFilename(), MSSOTLTrafficLightLogic::getOutputSensorsLength(), TraCI_Polygon::getParameter(), TraCI_VehicleType::getParameter(), TraCI_Route::getParameter(), TraCI_POI::getParameter(), TraCI_Lane::getParameter(), TraCI_Vehicle::getParameter(), MSSOTLTrafficLightLogic::getSpeedThreshold(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchAreaNo(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::getStretchBereichDef(), MSSOTLTrafficLightLogic::getThreshold(), MSTriggeredRerouter::getWeight(), PushButtonLogic::init(), MSSOTLPhasePolicy::init(), SigmoidLogic::init(), MSSOTLTrafficLightLogic::init(), MSSwarmTrafficLightLogic::init(), NIImporter_OpenStreetMap::insertEdge(), MSSOTLTrafficLightLogic::isDecayThresholdActivated(), MSSOTLTrafficLightLogic::isPushButtonPressed(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSDelayBasedTrafficLightLogic::MSDelayBasedTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic(), TraCIServerAPI_Edge::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_Person::processGet(), MSSOTLPolicyDesirability::readParameter(), MSDevice_SSM::requestsTrajectories(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::stretchLogic(), TraCIServerAPI_Vehicle::vtdMap(), and NWWriter_DlrNavteq::writeLinksUnsplitted().

◆ getThetaSensitivity()

virtual double MSSOTLPolicy::getThetaSensitivity ( )
inlinevirtualinherited

◆ init() [1/2]

void PushButtonLogic::init ( std::string  prefix,
const Parameterised parameterised 
)
protectedinherited

◆ init() [2/2]

void MSSOTLMarchingPolicy::init ( )
protectedvirtual

Reimplemented from MSSOTLPolicy.

Definition at line 54 of file MSSOTLMarchingPolicy.cpp.

References PushButtonLogic::init().

Referenced by MSSOTLMarchingPolicy().

◆ knowsParameter()

bool Parameterised::knowsParameter ( const std::string &  key) const
inherited

◆ pushButtonLogic()

bool PushButtonLogic::pushButtonLogic ( SUMOTime  elapsed,
bool  pushButtonPressed,
const MSPhaseDefinition stage 
)
protectedinherited

◆ setThetaSensitivity()

virtual void MSSOTLPolicy::setThetaSensitivity ( double  val)
inlinevirtualinherited

Definition at line 122 of file MSSOTLPolicy.h.

Referenced by MSSwarmTrafficLightLogic::updateSensitivities().

◆ writeParams()

Field Documentation

◆ m_prefix

std::string PushButtonLogic::m_prefix
protectedinherited

◆ m_pushButtonScaleFactor

double PushButtonLogic::m_pushButtonScaleFactor
protectedinherited

Definition at line 52 of file MSSOTLPolicy.h.

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


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