File indexing completed on 2025-12-16 09:24:01
0001 #ifndef FUN4ALL_YEAR2_FITTING_C
0002 #define FUN4ALL_YEAR2_FITTING_C
0003
0004 #include <Calo_Fitting.C>
0005 #include <QA.C>
0006
0007 #include <calotrigger/TriggerRunInfoReco.h>
0008
0009 #include <calovalid/CaloFittingQA.h>
0010
0011 #include <ffamodules/CDBInterface.h>
0012 #include <ffamodules/FlagHandler.h>
0013 #include <ffamodules/HeadReco.h>
0014 #include <ffamodules/SyncReco.h>
0015
0016 #include <fun4all/Fun4AllDstInputManager.h>
0017 #include <fun4all/Fun4AllDstOutputManager.h>
0018 #include <fun4all/Fun4AllInputManager.h>
0019 #include <fun4all/Fun4AllRunNodeInputManager.h>
0020 #include <fun4all/Fun4AllServer.h>
0021 #include <fun4all/Fun4AllUtils.h>
0022 #include <fun4all/SubsysReco.h>
0023
0024 #include <phool/recoConsts.h>
0025
0026 #include <TSystem.h>
0027
0028 R__LOAD_LIBRARY(libfun4allraw.so)
0029 R__LOAD_LIBRARY(libcalovalid.so)
0030 R__LOAD_LIBRARY(libcalotrigger.so)
0031
0032
0033 void Fun4All_Year2_Fitting(int nEvents = 100,
0034 const std::string &fname = "DST_TRIGGERED_EVENT_run2pp_ana451_2024p009-00047748-00000.root",
0035 const std::string &outfile = "DST_CALOFITTING_run2pp_ana451_2024p009-00047748-00000.root",
0036 const std::string &outfile_hist = "HIST_CALOFITTINGQA_run2pp_ana451_2024p009-00047748-00000.root",
0037 const std::string &dbtag = "ProdA_2024")
0038 {
0039 gSystem->Load("libg4dst.so");
0040
0041 Fun4AllServer *se = Fun4AllServer::instance();
0042 se->Verbosity(1);
0043
0044 recoConsts *rc = recoConsts::instance();
0045
0046 std::pair<int, int> runseg = Fun4AllUtils::GetRunSegment(fname);
0047 int runnumber = runseg.first;
0048
0049
0050 rc->set_StringFlag("CDB_GLOBALTAG", dbtag);
0051 rc->set_uint64Flag("TIMESTAMP", runnumber);
0052 CDBInterface::instance()->Verbosity(1);
0053
0054 FlagHandler *flag = new FlagHandler();
0055 se->registerSubsystem(flag);
0056
0057
0058 TriggerRunInfoReco *triggerinfo = new TriggerRunInfoReco();
0059 se->registerSubsystem(triggerinfo);
0060
0061 Process_Calo_Fitting();
0062
0063
0064
0065 CaloFittingQA *ca = new CaloFittingQA("CaloFittingQA");
0066 se->registerSubsystem(ca);
0067
0068 Fun4AllInputManager *In = new Fun4AllDstInputManager("in");
0069 In->AddFile(fname);
0070 se->registerInputManager(In);
0071
0072 Fun4AllDstOutputManager *out = new Fun4AllDstOutputManager("DSTOUT", outfile);
0073 out->StripNode("CEMCPackets");
0074 out->StripNode("HCALPackets");
0075 out->StripNode("ZDCPackets");
0076 out->StripNode("SEPDPackets");
0077 se->registerOutputManager(out);
0078
0079 se->run(nEvents);
0080 se->End();
0081
0082 QAHistManagerDef::saveQARootFile(outfile_hist);
0083
0084 CDBInterface::instance()->Print();
0085 se->PrintTimer();
0086 delete se;
0087 std::cout << "All done!" << std::endl;
0088 gSystem->Exit(0);
0089 }
0090 #endif