00001 #include "FastShowerUtils/ElectronBarSelConfig.h" 00002 #include "FastShowerUtils/ElectronBarConfigurer.h" 00003 #include "FastShowerUtils/IShowerer.h" 00004 #include "FastShowerUtils/IFnOfParticleParameters.h" 00005 #include "FastShowerUtils/IFnOfParticleParameters2.h" 00006 #include "FastShowerUtils/IAcceptor.h" 00007 #include "FastShowerUtils/Acceptors/ElectronBarAcceptor.h" 00008 #include "FastShowerUtils/Normalisers/EmHcalLeakageBar.h" 00009 #include "FastShowerUtils/Normalisers/SmearElectron.h" 00010 #include "FastShowerUtils/IConfigurer.h" 00011 00012 namespace FastShower{ 00013 ElectronBarSelConfig::ElectronBarSelConfig(Moni& m): 00014 m_configurer(new ElectronBarConfigurer(m) ){ 00015 } 00017 ElectronBarSelConfig::ElectronBarSelConfig(NoMoni& m): 00018 m_configurer(new ElectronBarConfigurer(m) ){ 00019 } 00021 ElectronBarSelConfig::~ElectronBarSelConfig(){ 00022 delete m_configurer; 00023 } 00024 IAcceptor* ElectronBarSelConfig::acceptor() const { 00025 return new ElectronBarAcceptor(); 00026 } 00027 IFnOfParticleParameters2* ElectronBarSelConfig::ehSharer() const { 00028 return new EmHcalLeakageBar(); 00029 } 00030 IFnOfParticleParameters* ElectronBarSelConfig::resolution() const { 00031 return new SmearElectron(); 00032 } 00033 00034 IShowerer* ElectronBarSelConfig::showerer() const { 00035 return m_configurer->makeShowerer("ElectronBarShowerer"); 00036 } 00037 //**************************************************************** 00038 // dummy implementation (used only by soft photons) 00039 //**************************************************************** 00040 std::map<double,std::string> ElectronBarSelConfig::histograms() const { 00041 std::map<double,std::string> hists; 00042 return hists; 00043 } 00044 } 00045 00046 00047