Eclipse SUMO - Simulation of Urban MObility
PHEMlightdllV5::CEPHandler Class Reference

#include <CEPHandler.h>

Public Member Functions

 CEPHandler ()
 
bool GetCEP (std::vector< std::string > &DataPath, Helpers *Helper, Correction *DataCor)
 
const std::map< std::string, CEP * > & getCEPS () const
 

Private Member Functions

bool CalcCorrection (Correction *DataCor, Helpers *Helper, VEHPHEMLightJSON::Vehicle_Data *vehicle_Data)
 
bool CorrectEmissionData (Correction *DataCor, std::vector< std::string > &header, std::vector< std::vector< double > > &matrix, std::vector< double > &idlingValues)
 
double GetDetTempCor (Correction *DataCor, const std::string &Emi)
 
bool Load (std::vector< std::string > &DataPath, Helpers *Helper, Correction *DataCor, bool fleetMix=false)
 
bool ReadEmissionData (bool readFC, const std::vector< std::string > &DataPath, const std::string &emissionClass, Helpers *Helper, bool fleetMix, Correction *DataCor, std::vector< std::string > &header, std::vector< std::vector< double > > &matrix, std::vector< double > &idlingValues)
 
std::string ReadLine (std::ifstream &s)
 
bool ReadVehicleFile (const std::vector< std::string > &DataPath, const std::string &emissionClass, Helpers *Helper, bool fleetMix, VEHPHEMLightJSON::VEH *&Vehicle)
 
const std::vector< std::string > split (const std::string &s, char delim)
 
double todouble (const std::string &s)
 
std::vector< double > todoubleList (const std::vector< std::string > &s)
 

Private Attributes

std::map< std::string, CEP * > _ceps
 

Detailed Description

Definition at line 244 of file V5/cpp/CEPHandler.h.

Constructor & Destructor Documentation

◆ CEPHandler()

PHEMlightdllV5::CEPHandler::CEPHandler ( )

Definition at line 38 of file V5/cpp/CEPHandler.cpp.

Member Function Documentation

◆ CalcCorrection()

bool PHEMlightdllV5::CEPHandler::CalcCorrection ( Correction DataCor,
Helpers Helper,
VEHPHEMLightJSON::Vehicle_Data vehicle_Data 
)
private

Definition at line 54 of file V5/cpp/CEPHandler.cpp.

References PHEMlightdllV5::VEHPHEMLightJSON::Vehicle_Data::getMileage(), PHEMlightdllV5::Correction::getUseDet(), PHEMlightdllV5::Correction::getUseTNOx(), PHEMlightdllV5::Correction::IniDETfactor(), PHEMlightdllV5::Correction::IniTNOxfactor(), and PHEMlightdllV5::Correction::setVehMileage().

Referenced by Load().

Here is the caller graph for this function:

◆ CorrectEmissionData()

bool PHEMlightdllV5::CEPHandler::CorrectEmissionData ( Correction DataCor,
std::vector< std::string > &  header,
std::vector< std::vector< double > > &  matrix,
std::vector< double > &  idlingValues 
)
private

Definition at line 319 of file V5/cpp/CEPHandler.cpp.

References GetDetTempCor().

Referenced by ReadEmissionData().

Here is the caller graph for this function:

◆ GetCEP()

bool PHEMlightdllV5::CEPHandler::GetCEP ( std::vector< std::string > &  DataPath,
Helpers Helper,
Correction DataCor 
)

Definition at line 45 of file V5/cpp/CEPHandler.cpp.

References getCEPS(), PHEMlightdllV5::Helpers::getgClass(), and Load().

Referenced by HelpersPHEMlight5::getClassByName().

Here is the caller graph for this function:

◆ getCEPS()

const std::map< std::string, CEP * > & PHEMlightdllV5::CEPHandler::getCEPS ( ) const

Definition at line 41 of file V5/cpp/CEPHandler.cpp.

References _ceps.

Referenced by GetCEP(), and HelpersPHEMlight5::getClassByName().

Here is the caller graph for this function:

◆ GetDetTempCor()

double PHEMlightdllV5::CEPHandler::GetDetTempCor ( Correction DataCor,
const std::string &  Emi 
)
private

Definition at line 334 of file V5/cpp/CEPHandler.cpp.

References PHEMlightdllV5::Correction::DETFactors, PHEMlightdllV5::Correction::getTNOxFactor(), PHEMlightdllV5::Correction::getUseDet(), and PHEMlightdllV5::Correction::getUseTNOx().

Referenced by CorrectEmissionData().

Here is the caller graph for this function:

◆ Load()

bool PHEMlightdllV5::CEPHandler::Load ( std::vector< std::string > &  DataPath,
Helpers Helper,
Correction DataCor,
bool  fleetMix = false 
)
private

Definition at line 75 of file V5/cpp/CEPHandler.cpp.

References _ceps, CalcCorrection(), PHEMlightdllV5::Helpers::getgClass(), ReadEmissionData(), and ReadVehicleFile().

Referenced by GetCEP().

Here is the caller graph for this function:

◆ ReadEmissionData()

bool PHEMlightdllV5::CEPHandler::ReadEmissionData ( bool  readFC,
const std::vector< std::string > &  DataPath,
const std::string &  emissionClass,
Helpers Helper,
bool  fleetMix,
Correction DataCor,
std::vector< std::string > &  header,
std::vector< std::vector< double > > &  matrix,
std::vector< double > &  idlingValues 
)
private

Definition at line 257 of file V5/cpp/CEPHandler.cpp.

References CorrectEmissionData(), ReadLine(), PHEMlightdllV5::Helpers::setErrMsg(), split(), and todoubleList().

Referenced by Load().

Here is the caller graph for this function:

◆ ReadLine()

std::string PHEMlightdllV5::CEPHandler::ReadLine ( std::ifstream &  s)
private

Definition at line 380 of file V5/cpp/CEPHandler.cpp.

Referenced by ReadEmissionData().

Here is the caller graph for this function:

◆ ReadVehicleFile()

◆ split()

const std::vector< std::string > PHEMlightdllV5::CEPHandler::split ( const std::string &  s,
char  delim 
)
private

Definition at line 355 of file V5/cpp/CEPHandler.cpp.

Referenced by ReadEmissionData().

Here is the caller graph for this function:

◆ todouble()

double PHEMlightdllV5::CEPHandler::todouble ( const std::string &  s)
private

Definition at line 365 of file V5/cpp/CEPHandler.cpp.

Referenced by todoubleList().

Here is the caller graph for this function:

◆ todoubleList()

std::vector< double > PHEMlightdllV5::CEPHandler::todoubleList ( const std::vector< std::string > &  s)
private

Definition at line 372 of file V5/cpp/CEPHandler.cpp.

References todouble().

Referenced by ReadEmissionData().

Here is the caller graph for this function:

Field Documentation

◆ _ceps

std::map<std::string, CEP*> PHEMlightdllV5::CEPHandler::_ceps
private

Definition at line 249 of file V5/cpp/CEPHandler.h.

Referenced by getCEPS(), and Load().


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