File indexing completed on 2025-12-17 09:24:00
0001 #ifndef MACRO_CALO_FITTING_C
0002 #define MACRO_CALO_FITTING_C
0003
0004 #include <caloreco/CaloTowerBuilder.h>
0005 #include <caloreco/CaloWaveformProcessing.h>
0006
0007 #include <fun4all/Fun4AllServer.h>
0008
0009 #include <Rtypes.h> // for R__LOAD_LIBRARY
0010
0011 R__LOAD_LIBRARY(libcalo_reco.so)
0012
0013 void Process_Calo_Fitting()
0014 {
0015 Fun4AllServer *se = Fun4AllServer::instance();
0016
0017 CaloTowerDefs::BuilderType buildertype = CaloTowerDefs::kPRDFTowerv4;
0018
0019
0020
0021 CaloTowerBuilder *caZDC = new CaloTowerBuilder("ZDCBUILDER");
0022 caZDC->set_detector_type(CaloTowerDefs::ZDC);
0023 caZDC->set_builder_type(buildertype);
0024 caZDC->set_processing_type(CaloWaveformProcessing::FAST);
0025 caZDC->set_nsamples(16);
0026 caZDC->set_offlineflag();
0027 se->registerSubsystem(caZDC);
0028
0029 CaloTowerBuilder *ctbEMCal = new CaloTowerBuilder("EMCalBUILDER");
0030 ctbEMCal->set_detector_type(CaloTowerDefs::CEMC);
0031 ctbEMCal->set_processing_type(CaloWaveformProcessing::TEMPLATE);
0032 ctbEMCal->set_builder_type(buildertype);
0033 ctbEMCal->set_offlineflag(true);
0034 ctbEMCal->set_nsamples(12);
0035 ctbEMCal->set_bitFlipRecovery(true);
0036
0037 ctbEMCal->set_softwarezerosuppression(true, 60);
0038 se->registerSubsystem(ctbEMCal);
0039
0040 CaloTowerBuilder *ctbIHCal = new CaloTowerBuilder("HCALINBUILDER");
0041 ctbIHCal->set_detector_type(CaloTowerDefs::HCALIN);
0042 ctbIHCal->set_processing_type(CaloWaveformProcessing::TEMPLATE);
0043 ctbIHCal->set_builder_type(buildertype);
0044 ctbIHCal->set_offlineflag();
0045 ctbIHCal->set_nsamples(12);
0046 ctbIHCal->set_bitFlipRecovery(true);
0047
0048 ctbIHCal->set_softwarezerosuppression(true, 30);
0049 se->registerSubsystem(ctbIHCal);
0050
0051 CaloTowerBuilder *ctbOHCal = new CaloTowerBuilder("HCALOUTBUILDER");
0052 ctbOHCal->set_detector_type(CaloTowerDefs::HCALOUT);
0053 ctbOHCal->set_processing_type(CaloWaveformProcessing::TEMPLATE);
0054 ctbOHCal->set_builder_type(buildertype);
0055 ctbOHCal->set_offlineflag();
0056 ctbOHCal->set_nsamples(12);
0057 ctbOHCal->set_bitFlipRecovery(true);
0058
0059 ctbOHCal->set_softwarezerosuppression(true, 30);
0060 se->registerSubsystem(ctbOHCal);
0061
0062 CaloTowerBuilder *caEPD = new CaloTowerBuilder("SEPDBUILDER");
0063 caEPD->set_detector_type(CaloTowerDefs::SEPD);
0064 caEPD->set_builder_type(buildertype);
0065 caEPD->set_processing_type(CaloWaveformProcessing::FAST);
0066 caEPD->set_nsamples(12);
0067 caEPD->set_offlineflag();
0068 se->registerSubsystem(caEPD);
0069 }
0070
0071 #endif