Eclipse SUMO - Simulation of Urban MObility
MSSOTLPhasePolicy Class Reference

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

#include <MSSOTLPhasePolicy.h>

Inheritance diagram for MSSOTLPhasePolicy:
[legend]
Collaboration diagram for MSSOTLPhasePolicy:
[legend]

Public Types

typedef std::map< std::string, std::string > Map
 parameters map More...
 

Public Member Functions

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 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...
 
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...
 
std::vector< double > getDoubles (const std::string &key, std::vector< double > defaultValue=std::vector< double >()) const
 Returns the value for a given key converted to a list of doubles. More...
 
std::string getName ()
 
virtual const std::string getParameter (const std::string &key, const std::string defaultValue="") const
 Returns the value for a given key. More...
 
const Parameterised::MapgetParametersMap () const
 Returns the inner key/value map. More...
 
std::string getParametersStr (const std::string kvsep="=", const std::string sep="|") const
 Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN". More...
 
virtual double getThetaSensitivity ()
 
bool hasParameter (const std::string &key) const
 Returns whether the parameter is set. More...
 
void mergeParameters (const Parameterised::Map &mapArg, const std::string separator=" ", bool uniqueValues=true)
 Adds or appends all given parameters from the map. More...
 
 MSSOTLPhasePolicy (const Parameterised::Map &parameters)
 
 MSSOTLPhasePolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm)
 
 MSSOTLPhasePolicy (MSSOTLPolicyDesirability *desirabilityAlgorithm, const Parameterised::Map &parameters)
 
virtual void setParameter (const std::string &key, const std::string &value)
 Sets a parameter. More...
 
void setParameters (const Parameterised &params)
 set the inner key/value map in map<string, string> format More...
 
void setParametersStr (const std::string &paramsString, const std::string kvsep="=", const std::string sep="|")
 set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN" More...
 
virtual void setThetaSensitivity (double val)
 
void unsetParameter (const std::string &key)
 Removes a parameter. More...
 
void updateParameters (const Parameterised::Map &mapArg)
 Adds or updates all given parameters from the map. More...
 
void writeParams (OutputDevice &device) const
 write Params in the given outputdevice More...
 

Static Public Member Functions

static bool areAttributesValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas) More...
 
static bool areParametersValid (const std::string &value, bool report=false, const std::string kvsep="=", const std::string sep="|")
 check if given string can be parsed to a parameters map "key1=value1|key2=value2|...|keyN=valueN" More...
 

Protected Member Functions

void init ()
 
void init (std::string prefix, const Parameterised *parameterised)
 
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

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

Static Private Member Functions

static bool isParameterValid (const std::string &value, const std::string &kvsep, const std::string &sep)
 check if given string can be parsed to a parameter of type "key=value" More...
 

Private Attributes

MSSOTLPolicyDesirabilitymyDesirabilityAlgorithm
 A pointer to the policy desirability object.\nIt's an optional component related to the computeDesirability() method and it's necessary only when the policy is used in combination with an high level policy. More...
 
Parameterised::Map myMap
 The key->value map. More...
 
std::string myName
 The name of the policy. More...
 
double theta_sensitivity
 The sensitivity of this policy. More...
 

Detailed Description

Class for low-level phase policy.

Definition at line 30 of file MSSOTLPhasePolicy.h.

Member Typedef Documentation

◆ Map

typedef std::map<std::string, std::string> Parameterised::Map
inherited

parameters map

Definition at line 45 of file Parameterised.h.

Constructor & Destructor Documentation

◆ MSSOTLPhasePolicy() [1/3]

MSSOTLPhasePolicy::MSSOTLPhasePolicy ( const Parameterised::Map parameters)

Definition at line 27 of file MSSOTLPhasePolicy.cpp.

References init().

◆ MSSOTLPhasePolicy() [2/3]

MSSOTLPhasePolicy::MSSOTLPhasePolicy ( MSSOTLPolicyDesirability desirabilityAlgorithm)

◆ MSSOTLPhasePolicy() [3/3]

MSSOTLPhasePolicy::MSSOTLPhasePolicy ( MSSOTLPolicyDesirability desirabilityAlgorithm,
const Parameterised::Map parameters 
)

Member Function Documentation

◆ areAttributesValid()

bool Parameterised::areAttributesValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

check if given string can be parsed to an attributes map "key1=value1|key2=value2|...|keyN=valueN" (used in generic datas)

Definition at line 219 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::isParameterValid(), TL, and WRITE_WARNINGF.

Referenced by GNEFrameAttributeModules::GenericDataAttributes::areAttributesValid(), GNEEdgeData::isValid(), GNEEdgeRelData::isValid(), and GNETAZRelData::isValid().

Here is the caller graph for this function:

◆ areParametersValid()

bool Parameterised::areParametersValid ( const std::string &  value,
bool  report = false,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
staticinherited

◆ canRelease()

bool MSSOTLPhasePolicy::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 139 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NLHandler::beginEdgeParsing(), and GNESingleParametersDialog::onCmdAccept().

Here is the caller graph for this function:

◆ computeDesirability() [1/2]

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

◆ computeDesirability() [2/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 111 of file MSSOTLPolicy.cpp.

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

◆ decideNextPhase()

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

Reimplemented in MSSOTLCongestionPolicy.

Definition at line 129 of file MSSOTLPolicy.cpp.

References MSSOTLPolicy::canRelease(), MSPhaseDefinition::isCommit(), MSPhaseDefinition::isDecisional(), MSPhaseDefinition::isTransient(), time2string(), and WRITE_MESSAGE.

Referenced by MSDeterministicHiLevelTrafficLightLogic::decideNextPhase(), MSSOTLPolicyBasedTrafficLightLogic::decideNextPhase(), and MSSwarmTrafficLightLogic::decideNextPhase().

Here is the caller graph for this function:

◆ getDesirabilityAlgorithm()

MSSOTLPolicyDesirability* MSSOTLPolicy::getDesirabilityAlgorithm ( )
inlineinherited

Definition at line 117 of file MSSOTLPolicy.h.

References MSSOTLPolicy::myDesirabilityAlgorithm.

Referenced by MSSOTLCongestionPolicy::MSSOTLCongestionPolicy(), MSSOTLMarchingPolicy::MSSOTLMarchingPolicy(), MSSOTLPhasePolicy(), MSSOTLPlatoonPolicy::MSSOTLPlatoonPolicy(), MSSOTLRequestPolicy::MSSOTLRequestPolicy(), and MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic().

Here is the caller graph for this function:

◆ getDouble()

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

◆ getDoubles()

std::vector< double > Parameterised::getDoubles ( const std::string &  key,
std::vector< double >  defaultValue = std::vector<double>() 
) const
inherited

Returns the value for a given key converted to a list of doubles.

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

References StringTokenizer::getVector(), Parameterised::myMap, TL, StringUtils::toDouble(), WRITE_WARNING, and WRITE_WARNINGF.

Referenced by EnergyParams::EnergyParams().

Here is the caller graph for this function:

◆ getName()

◆ getParameter()

const std::string Parameterised::getParameter ( const std::string &  key,
const std::string  defaultValue = "" 
) const
virtualinherited

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

Reimplemented in NEMALogic, MSSimpleTrafficLightLogic, and MSActuatedTrafficLightLogic.

Definition at line 90 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSPModel_JuPedSim::add(), NBRailwayTopologyAnalyzer::addBidiEdge(), NBEdge::addRestrictedLane(), FareModul::addStop(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), ROEdge::cacheParamRestrictions(), SUMOVTypeParameter::cacheParamRestrictions(), MSVehicleType::check(), MSRailSignal::constraintsAllow(), GUINet::createTLWrapper(), GNEEdge::drawEdgeName(), GNEConnection::drawEdgeValues(), GNEGenericData::drawFilteredAttribute(), GUIEdge::drawGL(), EnergyParams::EnergyParams(), MSDevice_SSM::filterByConflictType(), LIBSUMO_NAMESPACE::TrafficLight::findConstraintsDeadLocks(), LIBSUMO_NAMESPACE::Simulation::findIntermodalRoute(), NBRailwayTopologyAnalyzer::getBrokenRailNodes(), GUIVehicle::getColorValue(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), GUIEdge::getColorValue(), GUILane::getColorValue(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), LIBSUMO_NAMESPACE::TrafficLight::getFutureTripIds(), MSTLLogicControl::WAUTSwitchProcedure::getGSPTime(), RORoutable::getMaxSpeed(), MSDevice_SSM::getMDRAC_PRT(), MSDevice_SSM::getMeasuresAndThresholds(), MSSOTLRequestPolicy::getMinDecisionalPhaseDuration(), GUIBaseVehicle::getOptionalName(), GUITrafficLightLogicWrapper::getOptionalName(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), MSSimpleTrafficLightLogic::getParameter(), NEMALogic::getParameter(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSBaseVehicle::getPrefixedParameter(), GUIBaseVehicle::getScaleValue(), LIBSUMO_NAMESPACE::Vehicle::getStopParameter(), MSDevice::getStringParam(), LIBSUMO_NAMESPACE::TrafficLight::getVehicleByTripId(), MSRailSignalConstraint::getVehID(), MSTriggeredRerouter::getWeight(), MSRailSignal::hasInsertionConstraint(), MSLink::ignoreFoe(), init(), MSStageDriving::init(), PushButtonLogic::init(), SigmoidLogic::init(), SUMOVTypeParameter::initRailVisualizationParameters(), NIImporter_OpenStreetMap::insertNodeChecking(), MSAbstractLaneChangeModel::laneChangeOutput(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), MSSOTLPolicy::MSSOTLPolicy(), MSSOTLPolicy5DFamilyStimulus::MSSOTLPolicy5DFamilyStimulus(), MSDevice_GLOSA::notifyEnter(), MSRailSignalConstraint_Predecessor::PassedTracker::notifyEnter(), GNEVType::overwriteVType(), NWWriter_OpenDrive::parseTrafficSign(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSDevice_SSM::requestsTrajectories(), MSDevice_Bluelight::resetVehicle(), GNEEdgeData::setColor(), GNEEdgeRelData::setColor(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), NBEdge::setOrigID(), MSVehicle::slowDownForSchedule(), NBEdgeCont::splitAt(), LIBSUMO_NAMESPACE::TrafficLight::swapParameters(), LIBSUMO_NAMESPACE::TrafficLight::updateConstraints(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), NWWriter_DlrNavteq::writeLinksUnsplitted(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPOI(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), and NWWriter_OpenDrive::writeSignals().

◆ getParametersMap()

const Parameterised::Map & Parameterised::getParametersMap ( ) const
inherited

Returns the inner key/value map.

Definition at line 145 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_SUMO::_loadNetwork(), NBNode::addCrossing(), NBEdge::addLane(), NBEdge::append(), LIBSUMO_NAMESPACE::TrafficLight::buildConstraint(), GUIParameterTableWindow::closeBuilding(), NLHandler::closeEdge(), NBTrafficLightDefinition::compute(), GNEGenericData::drawAttribute(), GNEGenericData::drawFilteredAttribute(), NLDetectorBuilder::endE3Detector(), GNEAccess::getACParametersMap(), GNECalibrator::getACParametersMap(), GNEDetector::getACParametersMap(), GNEMultiEntryExitDetector::getACParametersMap(), GNEOverheadWire::getACParametersMap(), GNEParkingSpace::getACParametersMap(), GNERerouter::getACParametersMap(), GNERouteProbe::getACParametersMap(), GNEStoppingPlace::getACParametersMap(), GNETAZ::getACParametersMap(), GNEVaporizer::getACParametersMap(), GNEVariableSpeedSign::getACParametersMap(), GNEDataInterval::getACParametersMap(), GNEDataSet::getACParametersMap(), GNEGenericData::getACParametersMap(), GNEContainer::getACParametersMap(), GNEPerson::getACParametersMap(), GNEPersonTrip::getACParametersMap(), GNERide::getACParametersMap(), GNERoute::getACParametersMap(), GNEStop::getACParametersMap(), GNEStopPlan::getACParametersMap(), GNETranship::getACParametersMap(), GNETransport::getACParametersMap(), GNEVehicle::getACParametersMap(), GNEVType::getACParametersMap(), GNEWalk::getACParametersMap(), GNEConnection::getACParametersMap(), GNECrossing::getACParametersMap(), GNEEdge::getACParametersMap(), GNEEdgeType::getACParametersMap(), GNEJunction::getACParametersMap(), GNELane::getACParametersMap(), GNELaneType::getACParametersMap(), GNEPOI::getACParametersMap(), GNEPoly::getACParametersMap(), MSRailSignalConstraint_Predecessor::getDescription(), NWWriter_OpenDrive::getDividerType(), GUILane::getParameterWindow(), GNESingleParametersDialog::GNESingleParametersDialog(), MSRailCrossing::init(), MSActuatedTrafficLightLogic::init(), MSDevice_Taxi::initDispatch(), MSPModel_JuPedSim::initialize(), NIImporter_OpenStreetMap::insertEdge(), NIImporter_OpenStreetMap::insertNodeChecking(), GNEEdgeData::isGenericDataVisible(), GNEEdgeRelData::isGenericDataVisible(), GNETAZRelData::isGenericDataVisible(), GNEGenericData::isVisibleInspectDeleteSelect(), NBEdge::NBEdge(), NBLoadedSUMOTLDef::NBLoadedSUMOTLDef(), NBTrafficLightLogic::NBTrafficLightLogic(), GUIParameterTableWindow::numParams(), GNESingleParametersDialog::onCmdReset(), GNEVType::overwriteVType(), TraCIServerAPI_TrafficLight::processGet(), Parameterised::setParameters(), LIBSUMO_NAMESPACE::TrafficLight::swapConstraints(), GNEEdgeData::writeGenericData(), GNEEdgeRelData::writeGenericData(), and GNETAZRelData::writeGenericData().

◆ getParametersStr()

std::string Parameterised::getParametersStr ( const std::string  kvsep = "=",
const std::string  sep = "|" 
) const
inherited

Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".

Definition at line 151 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by GNEAccess::getAttribute(), GNEBusStop::getAttribute(), GNECalibrator::getAttribute(), GNECalibratorFlow::getAttribute(), GNEChargingStation::getAttribute(), GNEContainerStop::getAttribute(), GNEEntryExitDetector::getAttribute(), GNEInductionLoopDetector::getAttribute(), GNEInstantInductionLoopDetector::getAttribute(), GNELaneAreaDetector::getAttribute(), GNEMultiEntryExitDetector::getAttribute(), GNEOverheadWire::getAttribute(), GNEParkingArea::getAttribute(), GNEParkingSpace::getAttribute(), GNERerouter::getAttribute(), GNERouteProbe::getAttribute(), GNETAZ::getAttribute(), GNETAZSourceSink::getAttribute(), GNETractionSubstation::getAttribute(), GNEVaporizer::getAttribute(), GNEVariableSpeedSign::getAttribute(), GNEEdgeData::getAttribute(), GNEEdgeRelData::getAttribute(), GNETAZRelData::getAttribute(), GNEContainer::getAttribute(), GNEPerson::getAttribute(), GNERoute::getAttribute(), GNEStop::getAttribute(), GNEVehicle::getAttribute(), GNEVType::getAttribute(), GNEConnection::getAttribute(), GNEEdge::getAttribute(), GNEEdgeType::getAttribute(), GNEJunction::getAttribute(), GNELane::getAttribute(), GNELaneType::getAttribute(), GNEPOI::getAttribute(), and GNEPoly::getAttribute().

Here is the caller graph for this function:

◆ getThetaSensitivity()

virtual double MSSOTLPolicy::getThetaSensitivity ( )
inlinevirtualinherited

Definition at line 108 of file MSSOTLPolicy.h.

References MSSOTLPolicy::theta_sensitivity.

Referenced by MSSwarmTrafficLightLogic::MSSwarmTrafficLightLogic().

Here is the caller graph for this function:

◆ hasParameter()

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

Returns whether the parameter is set.

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

Definition at line 84 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by MSStageWalking::activateEntryReminders(), NBEdge::append(), MSVehicleType::build(), GUIInductLoop::buildDetectorGUIRepresentation(), MSDevice_ElecHybrid::buildVehicleDevices(), MSDevice_Example::buildVehicleDevices(), GUINet::createTLWrapper(), EnergyParams::EnergyParams(), MSDevice_SSM::filterByConflictType(), NWWriter_DlrNavteq::getBrunnelType(), GNEEdgeData::getColorValue(), GNEEdgeRelData::getColorValue(), GNETAZRelData::getColorValue(), GNELane::getColorValue(), GUILane::getColorValue(), MSDevice_SSM::getDetectionRange(), MSDevice_SSM::getExtraTime(), MSDevice_SSM::getMDRAC_PRT(), MSDevice_SSM::getMeasuresAndThresholds(), MSDevice_ToC::getOutputFilename(), MSDevice_SSM::getOutputFilename(), LIBSUMO_NAMESPACE::Simulation::getParameter(), MSDevice::getStringParam(), MSTriggeredRerouter::getWeight(), MSStageDriving::init(), SUMOVTypeParameter::initRailVisualizationParameters(), MSEdge::insertVehicle(), NIImporter_OpenStreetMap::load(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSActuatedTrafficLightLogic::MSActuatedTrafficLightLogic(), MSSimpleTrafficLightLogic::MSSimpleTrafficLightLogic(), GNEVType::overwriteVType(), NWWriter_OpenDrive::parseTrafficSign(), NBTrafficLightDefinition::railSignalUncontrolled(), MSDevice_Battery::readParameterValue(), MSDevice_SSM::requestsTrajectories(), NBTrafficLightLogicCont::setOpenDriveSignalParameters(), MSVehicle::slowDownForSchedule(), MSDevice_SSM::useGeoCoords(), MSTLLogicControl::WAUTSwitchProcedure_Stretch::WAUTSwitchProcedure_Stretch(), MSDevice_SSM::writeLanesPositions(), MSDevice_SSM::writePositions(), NWWriter_OpenDrive::writeRoadObjectPoly(), NWWriter_OpenDrive::writeRoadObjects(), and NWWriter_OpenDrive::writeSignals().

Here is the caller graph for this function:

◆ init() [1/3]

void MSSOTLPhasePolicy::init ( )
protectedvirtual

Reimplemented from MSSOTLPolicy.

Definition at line 67 of file MSSOTLPhasePolicy.cpp.

References Parameterised::getParameter(), PushButtonLogic::init(), SigmoidLogic::init(), and m_useVehicleTypesWeights.

Referenced by MSSOTLPhasePolicy().

Here is the caller graph for this function:

◆ init() [2/3]

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

Definition at line 33 of file MSSOTLPolicy.cpp.

References Parameterised::getParameter(), PushButtonLogic::m_prefix, PushButtonLogic::m_pushButtonScaleFactor, StringUtils::toDouble(), and WRITE_MESSAGE.

Referenced by MSSOTLMarchingPolicy::init(), init(), and MSSOTLPlatoonPolicy::init().

Here is the caller graph for this function:

◆ init() [3/3]

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

Definition at line 53 of file MSSOTLPolicy.cpp.

References Parameterised::getParameter(), SigmoidLogic::m_k, SigmoidLogic::m_prefix, SigmoidLogic::m_useSigmoid, StringUtils::toDouble(), and WRITE_MESSAGE.

Referenced by init(), and MSSOTLPlatoonPolicy::init().

Here is the caller graph for this function:

◆ isParameterValid()

bool Parameterised::isParameterValid ( const std::string &  value,
const std::string &  kvsep,
const std::string &  sep 
)
staticprivateinherited

check if given string can be parsed to a parameter of type "key=value"

Definition at line 254 of file Parameterised.cpp.

References StringTokenizer::getVector(), and SUMOXMLDefinitions::isValidParameterKey().

Referenced by Parameterised::areAttributesValid(), and Parameterised::areParametersValid().

Here is the caller graph for this function:

◆ mergeParameters()

void Parameterised::mergeParameters ( const Parameterised::Map mapArg,
const std::string  separator = " ",
bool  uniqueValues = true 
)
inherited

Adds or appends all given parameters from the map.

Parameters
[in]mapArgThe keys/values to insert

Definition at line 65 of file Parameterised.cpp.

References Parameterised::getParameter(), Parameterised::hasParameter(), and Parameterised::setParameter().

Referenced by NBEdge::append().

Here is the caller graph for this function:

◆ pushButtonLogic()

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

Definition at line 39 of file MSSOTLPolicy.cpp.

References MSPhaseDefinition::duration, PushButtonLogic::m_prefix, PushButtonLogic::m_pushButtonScaleFactor, and WRITE_MESSAGE.

Referenced by MSSOTLMarchingPolicy::canRelease(), canRelease(), and MSSOTLPlatoonPolicy::canRelease().

Here is the caller graph for this function:

◆ setParameter()

void Parameterised::setParameter ( const std::string &  key,
const std::string &  value 
)
virtualinherited

Sets a parameter.

Parameters
[in]keyThe parameter's name
[in]valueThe parameter's value

Reimplemented in NEMALogic, MSSimpleTrafficLightLogic, MSRailSignal, MSActuatedTrafficLightLogic, and MSRailCrossing.

Definition at line 45 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NBRailwayTopologyAnalyzer::addBidiEdge(), NLHandler::addDistrict(), RONetHandler::addParam(), ShapeHandler::addPOI(), NBOwnTLDef::buildNemaPhases(), MSParkingArea::enter(), NIImporter_MATSim::EdgesHandler::insertEdge(), NIImporter_OpenStreetMap::insertEdge(), NIImporter_OpenStreetMap::insertNodeChecking(), MSLane::isInsertionSuccess(), NBNodeCont::joinNodeCluster(), NBEdge::Lane::Lane(), NWWriter_OpenDrive::mapmatchRoadObjects(), Parameterised::mergeParameters(), MSStateHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIXMLTrafficLightsHandler::myStartElement(), ShapeHandler::myStartElement(), GNESingleParametersDialog::onCmdAccept(), NBRailwayTopologyAnalyzer::reverseEdges(), GNEVType::setAttribute(), NBEdge::setJunctionPriority(), NIImporter_OpenDrive::setLaneAttributes(), MSRailCrossing::setParameter(), MSActuatedTrafficLightLogic::setParameter(), MSRailSignal::setParameter(), MSSimpleTrafficLightLogic::setParameter(), NEMALogic::setParameter(), LIBSUMO_NAMESPACE::Simulation::setParameter(), Parameterised::setParametersStr(), LIBSUMO_NAMESPACE::Vehicle::setStopParameter(), LIBSUMO_NAMESPACE::TrafficLight::swapParameters(), Parameterised::updateParameters(), NWWriter_OpenDrive::writeNetwork(), and NIImporter_OpenDrive::writeRoadObjects().

Here is the caller graph for this function:

◆ setParameters()

void Parameterised::setParameters ( const Parameterised params)
inherited

set the inner key/value map in map<string, string> format

Definition at line 167 of file Parameterised.cpp.

References Parameterised::getParametersMap(), and Parameterised::myMap.

Referenced by MSStageDriving::clone(), MSStageTranship::clone(), MSStageTrip::clone(), MSStageWaiting::clone(), MSStageWalking::clone(), and MSStageTrip::setArrived().

Here is the caller graph for this function:

◆ setParametersStr()

void Parameterised::setParametersStr ( const std::string &  paramsString,
const std::string  kvsep = "=",
const std::string  sep = "|" 
)
inherited

set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"

Parameters
[in]paramsStringA serialized key-value map
[in]kvsepThe separater between key and value
[in]sepThe separater between map entries

Definition at line 173 of file Parameterised.cpp.

References StringTokenizer::getVector(), Parameterised::myMap, and Parameterised::setParameter().

Referenced by MSDevice_Taxi::initDispatch(), GNEAccess::setAttribute(), GNEBusStop::setAttribute(), GNECalibrator::setAttribute(), GNECalibratorFlow::setAttribute(), GNEChargingStation::setAttribute(), GNEContainerStop::setAttribute(), GNEEntryExitDetector::setAttribute(), GNEInductionLoopDetector::setAttribute(), GNEInstantInductionLoopDetector::setAttribute(), GNELaneAreaDetector::setAttribute(), GNEMultiEntryExitDetector::setAttribute(), GNEOverheadWire::setAttribute(), GNEParkingArea::setAttribute(), GNEParkingSpace::setAttribute(), GNERerouter::setAttribute(), GNERouteProbe::setAttribute(), GNETAZ::setAttribute(), GNETAZSourceSink::setAttribute(), GNETractionSubstation::setAttribute(), GNEVaporizer::setAttribute(), GNEVariableSpeedSign::setAttribute(), GNEEdgeData::setAttribute(), GNEEdgeRelData::setAttribute(), GNETAZRelData::setAttribute(), GNEContainer::setAttribute(), GNEPerson::setAttribute(), GNERoute::setAttribute(), GNEStop::setAttribute(), GNEVehicle::setAttribute(), GNEVType::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEEdgeType::setAttribute(), GNEJunction::setAttribute(), GNELane::setAttribute(), GNELaneType::setAttribute(), GNEPOI::setAttribute(), and GNEPoly::setAttribute().

Here is the caller graph for this function:

◆ setThetaSensitivity()

virtual void MSSOTLPolicy::setThetaSensitivity ( double  val)
inlinevirtualinherited

Definition at line 111 of file MSSOTLPolicy.h.

References MSSOTLPolicy::theta_sensitivity.

◆ sigmoidLogic()

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

Definition at line 69 of file MSSOTLPolicy.cpp.

References MSPhaseDefinition::duration, SigmoidLogic::m_k, SigmoidLogic::m_prefix, SigmoidLogic::m_useSigmoid, RandHelper::rand(), STEPS2TIME, and WRITE_MESSAGE.

Referenced by canRelease(), and MSSOTLPlatoonPolicy::canRelease().

Here is the caller graph for this function:

◆ unsetParameter()

void Parameterised::unsetParameter ( const std::string &  key)
inherited

Removes a parameter.

Parameters
[in]keyThe parameter's name

Definition at line 51 of file Parameterised.cpp.

References Parameterised::myMap.

Referenced by NIImporter_OpenStreetMap::insertEdge(), MSLane::isInsertionSuccess(), NIImporter_OpenStreetMap::load(), GNEVType::setAttribute(), and LIBSUMO_NAMESPACE::TrafficLight::swapParameters().

Here is the caller graph for this function:

◆ updateParameters()

void Parameterised::updateParameters ( const Parameterised::Map mapArg)
inherited

◆ writeParams()

void Parameterised::writeParams ( OutputDevice device) const
inherited

write Params in the given outputdevice

Definition at line 188 of file Parameterised.cpp.

References OutputDevice::closeTag(), StringUtils::escapeXML(), Parameterised::myMap, OutputDevice::openTag(), SUMO_ATTR_KEY, SUMO_ATTR_VALUE, SUMO_TAG_PARAM, and OutputDevice::writeAttr().

Referenced by MSStageWaiting::routeOutput(), MSTransportable::routeOutput(), ROPerson::saveAsXML(), ROVehicle::saveAsXML(), MEVehicle::saveState(), MSVehicle::saveState(), MSStop::write(), SUMOVTypeParameter::write(), SUMOVehicleParameter::Stop::write(), NBPTStop::write(), MSRailSignalConstraint_Predecessor::write(), GNEBusStop::writeAdditional(), GNECalibrator::writeAdditional(), GNECalibratorFlow::writeAdditional(), GNEChargingStation::writeAdditional(), GNEContainerStop::writeAdditional(), GNEInductionLoopDetector::writeAdditional(), GNEInstantInductionLoopDetector::writeAdditional(), GNELaneAreaDetector::writeAdditional(), GNEMultiEntryExitDetector::writeAdditional(), GNEOverheadWire::writeAdditional(), GNEParkingArea::writeAdditional(), GNEParkingSpace::writeAdditional(), GNERerouter::writeAdditional(), GNERouteProbe::writeAdditional(), GNETAZ::writeAdditional(), GNETractionSubstation::writeAdditional(), GNEVaporizer::writeAdditional(), GNEVariableSpeedSign::writeAdditional(), NWWriter_SUMO::writeConnection(), GNEContainer::writeDemandElement(), GNEPerson::writeDemandElement(), GNERoute::writeDemandElement(), GNEVehicle::writeDemandElement(), NWWriter_SUMO::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeJunction(), NWWriter_SUMO::writeLane(), NWWriter_XML::writeNodes(), MSDevice_Vehroutes::writeOutput(), NWWriter_SUMO::writeTrafficLight(), SUMOPolygon::writeXML(), and PointOfInterest::writeXML().

Here is the caller graph for this function:

Field Documentation

◆ m_k

double SigmoidLogic::m_k
protectedinherited

Definition at line 52 of file MSSOTLPolicy.h.

Referenced by SigmoidLogic::init(), and SigmoidLogic::sigmoidLogic().

◆ m_prefix [1/2]

std::string PushButtonLogic::m_prefix
protectedinherited

Definition at line 42 of file MSSOTLPolicy.h.

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

◆ m_prefix [2/2]

std::string SigmoidLogic::m_prefix
protectedinherited

Definition at line 53 of file MSSOTLPolicy.h.

Referenced by SigmoidLogic::init(), and SigmoidLogic::sigmoidLogic().

◆ m_pushButtonScaleFactor

double PushButtonLogic::m_pushButtonScaleFactor
protectedinherited

Definition at line 41 of file MSSOTLPolicy.h.

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

◆ m_useSigmoid

bool SigmoidLogic::m_useSigmoid
protectedinherited

Definition at line 51 of file MSSOTLPolicy.h.

Referenced by SigmoidLogic::init(), and SigmoidLogic::sigmoidLogic().

◆ m_useVehicleTypesWeights

bool MSSOTLPhasePolicy::m_useVehicleTypesWeights
protected

Definition at line 43 of file MSSOTLPhasePolicy.h.

Referenced by canRelease(), and init().

◆ myDesirabilityAlgorithm

MSSOTLPolicyDesirability* MSSOTLPolicy::myDesirabilityAlgorithm
privateinherited

A pointer to the policy desirability object.\nIt's an optional component related to the computeDesirability() method and it's necessary only when the policy is used in combination with an high level policy.

Definition at line 76 of file MSSOTLPolicy.h.

Referenced by MSSOTLPolicy::computeDesirability(), and MSSOTLPolicy::getDesirabilityAlgorithm().

◆ myMap

◆ myName

std::string MSSOTLPolicy::myName
privateinherited

The name of the policy.

Definition at line 71 of file MSSOTLPolicy.h.

Referenced by MSSOTLPolicy::getName().

◆ theta_sensitivity

double MSSOTLPolicy::theta_sensitivity
privateinherited

The sensitivity of this policy.

Definition at line 67 of file MSSOTLPolicy.h.

Referenced by MSSOTLPolicy::getThetaSensitivity(), MSSOTLPolicy::MSSOTLPolicy(), and MSSOTLPolicy::setThetaSensitivity().


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