#include <ISmearerFactory.h>
Public Member Functions | |
ISmearerFactory () | |
~ISmearerFactory () | |
Static Public Member Functions | |
static ISmearer * | create (int, const int, const int, const int, std::string &, MsgStream &, std::vector< double >, int) |
Electron, muon, photon or default smearer can be provided depending on inputs.
Definition at line 22 of file ISmearerFactory.h.
Atlfast::ISmearerFactory::ISmearerFactory | ( | ) | [inline] |
Atlfast::ISmearerFactory::~ISmearerFactory | ( | ) | [inline] |
ISmearer * Atlfast::ISmearerFactory::create | ( | int | , | |
const | int, | |||
const | int, | |||
const | int, | |||
std::string & | , | |||
MsgStream & | , | |||
std::vector< double > | , | |||
int | ||||
) | [static] |
Static function to create concrete smearers
Definition at line 7 of file ISmearerFactory.cxx.
00014 { 00015 00016 ISmearer* smearer; 00017 00018 if (particleType == 11) 00019 { 00020 smearer = new ElectronSmearer(randSeed, lumi, log); 00021 smearer->setSmearParameters(smearParamArray); 00022 smearer->setSmearParamSchema(smearParamSchema); 00023 } 00024 else if (particleType == 13) 00025 { 00026 smearer = new MuonSmearer(randSeed, lumi, muSmearKey, muonResFile, log); 00027 smearer->setSmearParameters(smearParamArray); 00028 smearer->setSmearParamSchema(smearParamSchema); 00029 } 00030 else if (particleType == 22) 00031 { 00032 smearer = new PhotonSmearer(randSeed, lumi, log); 00033 smearer->setSmearParameters(smearParamArray); 00034 smearer->setSmearParamSchema(smearParamSchema); 00035 } 00036 else 00037 { 00038 smearer = new DefaultSmearer(randSeed); 00039 } 00040 00041 00042 return smearer; 00043 00044 }