00001 #include "FastShowerUtils/HadEcSelConfig.h" 00002 #include "FastShowerUtils/SoftHadEcConfigurer.h" 00003 #include "FastShowerUtils/HadLateEcConfigurer.h" 00004 #include "FastShowerUtils/HadEarlyEcConfigurer.h" 00005 #include "FastShowerUtils/IShowerer.h" 00006 #include "FastShowerUtils/IFnOfParticleParameters2.h" 00007 #include "FastShowerUtils/IAcceptor.h" 00008 #include "FastShowerUtils/Acceptors/HadronEcAcceptor.h" 00009 #include "FastShowerUtils/Normalisers/HadEcalHcalSharesEc.h" 00010 00011 namespace FastShower{ 00012 HadEcSelConfig::HadEcSelConfig(Moni& m): 00013 m_softConfigurer(new SoftHadEcConfigurer(m)), 00014 m_lateConfigurer(new HadLateEcConfigurer(m)), 00015 m_earlyConfigurer(new HadEarlyEcConfigurer(m)){ 00016 } 00018 HadEcSelConfig::HadEcSelConfig(NoMoni& m): 00019 m_softConfigurer(new SoftHadEcConfigurer(m)), 00020 m_lateConfigurer(new HadLateEcConfigurer(m)), 00021 m_earlyConfigurer(new HadEarlyEcConfigurer(m)){ 00022 } 00024 HadEcSelConfig::~HadEcSelConfig(){ 00025 delete m_softConfigurer; 00026 delete m_lateConfigurer; 00027 delete m_earlyConfigurer; 00028 } 00029 IAcceptor* HadEcSelConfig::acceptor() const { 00030 return new HadronEcAcceptor(); 00031 } 00032 IFnOfParticleParameters2* HadEcSelConfig::ehSharer() const { 00033 return new HadEcalHcalSharesEc(this,"HadEcalHcalSharesEc"); 00034 } 00035 00036 IShowerer* HadEcSelConfig::softShowerer() const { 00037 return m_softConfigurer->makeShowerer("softEcShowerer"); 00038 } 00039 IShowerer* HadEcSelConfig::lateShowerer() const { 00040 return m_lateConfigurer->makeShowerer("LateEcShowerer"); 00041 } 00042 IShowerer* HadEcSelConfig::earlyShowerer() const { 00043 return m_earlyConfigurer->makeShowerer("EarlyEcShowerer"); 00044 } 00046 std::map<double,std::string> HadEcSelConfig::histograms() const { 00047 std::map<double,std::string> hists; 00048 double ePoint[10] = {0.2, 0.3, 0.4, 0.5, 1.0, 2.0, 5.0, 10.0, 20.0, 50.0}; 00049 std::string iFile[10] = {"FastShowerHistograms/hist7001", 00050 "FastShowerHistograms/hist7002", 00051 "FastShowerHistograms/hist7003", 00052 "FastShowerHistograms/hist7004", 00053 "FastShowerHistograms/hist7005", 00054 "FastShowerHistograms/hist7006", 00055 "FastShowerHistograms/hist7007", 00056 "FastShowerHistograms/hist7008", 00057 "FastShowerHistograms/hist7009", 00058 "FastShowerHistograms/hist7010"}; 00059 for (int i=0; i<10; ++i){ 00060 hists[ePoint[i]] = iFile[i]; 00061 } 00062 return hists; 00063 } 00064 } 00065 00066 00067