File indexing completed on 2025-08-05 08:12:40
0001 #include <fun4all/Fun4AllDstInputManager.h>
0002 #include <fun4all/Fun4AllInputManager.h>
0003 #include <fun4all/Fun4AllServer.h>
0004 #include <fun4all/SubsysReco.h>
0005
0006 #include <TSystem.h>
0007
0008 #include <hbcup/AnaUPC.h>
0009
0010 R__LOAD_LIBRARY(libhbcup.so)
0011 R__LOAD_LIBRARY(libfun4all.so)
0012 R__LOAD_LIBRARY(libg4dst.so)
0013
0014
0015 void Fun4All_AnaUPC(const int nevnt = 0,
0016 const std::string& inputfile = "G4sPHENIX.root",
0017 std::string outputfile = "")
0018 {
0019 Fun4AllServer *se = Fun4AllServer::instance();
0020
0021 if ( outputfile.size() == 0 )
0022 {
0023 outputfile = inputfile + "_anaupc.root";
0024 }
0025
0026 AnaUPC *anaupc = new AnaUPC("anaupc", outputfile);
0027
0028 anaupc->analyzeTracks(true);
0029 anaupc->analyzeTruth(false);
0030 se->registerSubsystem(anaupc);
0031
0032 Fun4AllInputManager *in = new Fun4AllDstInputManager("DSTin");
0033
0034 if ( inputfile.substr(inputfile.size()-5,inputfile.size()-1) == ".root" )
0035 {
0036 in->fileopen(inputfile);
0037 }
0038 if ( inputfile.substr(inputfile.size()-5,inputfile.size()-1) == ".list" )
0039 {
0040 in->AddListFile(inputfile);
0041 }
0042 se->registerInputManager(in);
0043
0044 se->run(nevnt);
0045 se->End();
0046 delete se;
0047
0048 cout <<"All done. Exiting..."<<endl;
0049
0050 gSystem->Exit(0);
0051 }
0052