Back to home page

sPhenix code displayed by LXR

 
 

    


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   // build towers
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   //60 ADC SZS
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   //30 ADC SZS
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   //30 ADC SZS
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