SUMO - Simulation of Urban MObility
MSSOTLE2Sensors Class Reference

#include <MSSOTLE2Sensors.h>

Inheritance diagram for MSSOTLE2Sensors:
Inheritance graph
Collaboration diagram for MSSOTLE2Sensors:
Collaboration graph

Public Member Functions

void buildCountOutSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb)
 
void buildCountSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb)
 
void buildOutSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb)
 This function member has to be extended to properly build sensors for the output lanes Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to theirs MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building. More...
 
void buildOutSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb, double sensorLength)
 
void buildSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb)
 This function member has to be extended to properly build sensors for the input lanes Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to theirs MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building. More...
 
void buildSensors (MSTrafficLightLogic::LaneVectorVector controlledLanes, NLDetectorBuilder &nb, double sensorLength)
 
int countVehicles (MSLane *lane)
 
int countVehicles (std::string laneId)
 
int estimateVehicles (std::string laneId)
 
double getEstimateQueueLength (std::string laneId)
 
virtual double getMaxSpeed (std::string laneId)
 
int getPassedVeh (std::string laneId, bool out)
 
virtual double meanVehiclesSpeed (MSLane *lane)
 
virtual double meanVehiclesSpeed (std::string laneId)
 
 MSSOTLE2Sensors (std::string tlLogicID, const MSTrafficLightLogic::Phases *phases)
 
void setSpeedThresholdParam (double newThreshold)
 
virtual void setVehicleWeigths (const std::string &weightString)
 
virtual void stepChanged (int newStep)
 
void subtractPassedVeh (std::string laneId, int passed)
 
 ~MSSOTLE2Sensors (void)
 

Protected Member Functions

void buildContinueSensior (MSLane *lane, NLDetectorBuilder &nb, double sensorLength, MSLane *continueOnLane, double usedLength)
 
void buildCountSensorForLane (MSLane *lane, NLDetectorBuilder &nb)
 
void buildCountSensorForOutLane (MSLane *lane, NLDetectorBuilder &nb)
 
void buildSensorForLane (MSLane *lane, NLDetectorBuilder &nb)
 This function member has to be extended to properly build a sensor for a specific input lane Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to the respective MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building. More...
 
void buildSensorForLane (MSLane *lane, NLDetectorBuilder &nb, double sensorLength)
 
void buildSensorForOutLane (MSLane *lane, NLDetectorBuilder &nb)
 This function member has to be extended to properly build a sensor for a specific output lane Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to the respective MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building. More...
 
void buildSensorForOutLane (MSLane *lane, NLDetectorBuilder &nb, double sensorLength)
 
int count (MSE2Collector *sensor)
 
template<typename Method , typename ValueType >
bool getVelueFromSensor (std::string laneId, Method function, ValueType &value)
 

Protected Attributes

int currentStep
 
std::map< std::string, std::vector< std::string > > m_continueSensorOnLanes
 
MSLaneID_MaxSpeedMap m_maxSpeedMap
 
MSLaneID_MSE2CollectorMap m_sensorMap
 
std::map< const std::string, int > m_typeWeightMap
 
const MSTrafficLightLogic::PhasesmyPhases
 
double speedThresholdParam
 
std::string tlLogicID
 

Detailed Description

Definition at line 36 of file MSSOTLE2Sensors.h.

Constructor & Destructor Documentation

◆ MSSOTLE2Sensors()

MSSOTLE2Sensors::MSSOTLE2Sensors ( std::string  tlLogicID,
const MSTrafficLightLogic::Phases phases 
)

Definition at line 31 of file MSSOTLE2Sensors.cpp.

◆ ~MSSOTLE2Sensors()

MSSOTLE2Sensors::~MSSOTLE2Sensors ( void  )

Definition at line 36 of file MSSOTLE2Sensors.cpp.

Member Function Documentation

◆ buildContinueSensior()

◆ buildCountOutSensors()

void MSSOTLE2Sensors::buildCountOutSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb 
)

Definition at line 84 of file MSSOTLE2Sensors.cpp.

References buildCountSensorForOutLane().

Referenced by MSSOTLTrafficLightLogic::init().

◆ buildCountSensorForLane()

◆ buildCountSensorForOutLane()

◆ buildCountSensors()

void MSSOTLE2Sensors::buildCountSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb 
)

Definition at line 67 of file MSSOTLE2Sensors.cpp.

References buildCountSensorForLane().

Referenced by MSSOTLTrafficLightLogic::init().

◆ buildOutSensors() [1/2]

void MSSOTLE2Sensors::buildOutSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb 
)
virtual

This function member has to be extended to properly build sensors for the output lanes Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to theirs MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building.

Implements MSSOTLSensors.

Definition at line 102 of file MSSOTLE2Sensors.cpp.

References OUTPUT_SENSOR_LENGTH.

◆ buildOutSensors() [2/2]

void MSSOTLE2Sensors::buildOutSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb,
double  sensorLength 
)

Definition at line 107 of file MSSOTLE2Sensors.cpp.

References buildSensorForOutLane().

◆ buildSensorForLane() [1/2]

void MSSOTLE2Sensors::buildSensorForLane ( MSLane lane,
NLDetectorBuilder nb 
)
protectedvirtual

This function member has to be extended to properly build a sensor for a specific input lane Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to the respective MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building.

Implements MSSOTLSensors.

Definition at line 243 of file MSSOTLE2Sensors.cpp.

References INPUT_SENSOR_LENGTH.

Referenced by buildSensors().

◆ buildSensorForLane() [2/2]

◆ buildSensorForOutLane() [1/2]

void MSSOTLE2Sensors::buildSensorForOutLane ( MSLane lane,
NLDetectorBuilder nb 
)
protectedvirtual

This function member has to be extended to properly build a sensor for a specific output lane Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to the respective MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building.

Implements MSSOTLSensors.

Definition at line 328 of file MSSOTLE2Sensors.cpp.

References OUTPUT_SENSOR_LENGTH.

Referenced by buildOutSensors().

◆ buildSensorForOutLane() [2/2]

◆ buildSensors() [1/2]

void MSSOTLE2Sensors::buildSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb 
)
virtual

This function member has to be extended to properly build sensors for the input lanes Sensors has to be constrained on lane dimension Built sensors has to be collected and associated properly to theirs MSLane for retrieval using MSSOTLSensors::countVehicles(std::string) See extension classes for further specifications on sensor building.

Implements MSSOTLSensors.

Definition at line 40 of file MSSOTLE2Sensors.cpp.

References INPUT_SENSOR_LENGTH.

Referenced by MSSOTLTrafficLightLogic::init().

◆ buildSensors() [2/2]

void MSSOTLE2Sensors::buildSensors ( MSTrafficLightLogic::LaneVectorVector  controlledLanes,
NLDetectorBuilder nb,
double  sensorLength 
)

Definition at line 46 of file MSSOTLE2Sensors.cpp.

References buildSensorForLane().

◆ count()

int MSSOTLE2Sensors::count ( MSE2Collector sensor)
protected

◆ countVehicles() [1/2]

int MSSOTLE2Sensors::countVehicles ( MSLane lane)
virtual

Implements MSSOTLSensors.

Definition at line 378 of file MSSOTLE2Sensors.cpp.

References Named::getID().

Referenced by setSpeedThresholdParam().

◆ countVehicles() [2/2]

int MSSOTLE2Sensors::countVehicles ( std::string  laneId)
virtual

Implements MSSOTLSensors.

Definition at line 428 of file MSSOTLE2Sensors.cpp.

References count(), m_continueSensorOnLanes, and m_sensorMap.

◆ estimateVehicles()

int MSSOTLE2Sensors::estimateVehicles ( std::string  laneId)

Definition at line 412 of file MSSOTLE2Sensors.cpp.

References m_continueSensorOnLanes, m_sensorMap, and speedThresholdParam.

Referenced by setSpeedThresholdParam().

◆ getEstimateQueueLength()

double MSSOTLE2Sensors::getEstimateQueueLength ( std::string  laneId)

Definition at line 386 of file MSSOTLE2Sensors.cpp.

References m_sensorMap.

Referenced by setSpeedThresholdParam().

◆ getMaxSpeed()

double MSSOTLE2Sensors::getMaxSpeed ( std::string  laneId)
virtual

Implements MSSOTLSensors.

Definition at line 445 of file MSSOTLE2Sensors.cpp.

References m_maxSpeedMap, and WRITE_ERROR.

Referenced by setSpeedThresholdParam().

◆ getPassedVeh()

◆ getVelueFromSensor()

template<typename Method , typename ValueType >
bool MSSOTLE2Sensors::getVelueFromSensor ( std::string  laneId,
Method  function,
ValueType &  value 
)
inlineprotected

Definition at line 134 of file MSSOTLE2Sensors.h.

References m_sensorMap.

Referenced by getPassedVeh(), and meanVehiclesSpeed().

◆ meanVehiclesSpeed() [1/2]

double MSSOTLE2Sensors::meanVehiclesSpeed ( MSLane lane)
virtual

Implements MSSOTLSensors.

Definition at line 455 of file MSSOTLE2Sensors.cpp.

References Named::getID().

Referenced by setSpeedThresholdParam().

◆ meanVehiclesSpeed() [2/2]

double MSSOTLE2Sensors::meanVehiclesSpeed ( std::string  laneId)
virtual

◆ setSpeedThresholdParam()

void MSSOTLE2Sensors::setSpeedThresholdParam ( double  newThreshold)
inline

◆ setVehicleWeigths()

void MSSOTLE2Sensors::setVehicleWeigths ( const std::string &  weightString)
virtual

Definition at line 503 of file MSSOTLE2Sensors.cpp.

References TplConvert::_2int(), m_typeWeightMap, split(), trim(), and WRITE_MESSAGE.

Referenced by setSpeedThresholdParam().

◆ stepChanged()

virtual void MSSOTLSensors::stepChanged ( int  newStep)
inlinevirtualinherited

◆ subtractPassedVeh()

void MSSOTLE2Sensors::subtractPassedVeh ( std::string  laneId,
int  passed 
)

Field Documentation

◆ currentStep

int MSSOTLSensors::currentStep
protectedinherited

Definition at line 44 of file MSSOTLSensors.h.

◆ m_continueSensorOnLanes

std::map<std::string, std::vector<std::string> > MSSOTLE2Sensors::m_continueSensorOnLanes
protected

◆ m_maxSpeedMap

MSLaneID_MaxSpeedMap MSSOTLE2Sensors::m_maxSpeedMap
protected

◆ m_sensorMap

◆ m_typeWeightMap

std::map<const std::string, int> MSSOTLE2Sensors::m_typeWeightMap
protected

Definition at line 152 of file MSSOTLE2Sensors.h.

Referenced by count(), and setVehicleWeigths().

◆ myPhases

const MSTrafficLightLogic::Phases* MSSOTLSensors::myPhases
protectedinherited

Definition at line 42 of file MSSOTLSensors.h.

Referenced by MSSOTLSensors::MSSOTLSensors().

◆ speedThresholdParam

double MSSOTLE2Sensors::speedThresholdParam
protected

Definition at line 150 of file MSSOTLE2Sensors.h.

Referenced by estimateVehicles(), and setSpeedThresholdParam().

◆ tlLogicID

std::string MSSOTLSensors::tlLogicID
protectedinherited

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