Back to home page

sPhenix code displayed by LXR

 
 

    


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 //! Simple macro to analyze simDSTs or real DSTs for UPC analysis
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   //anaupc->Verbosity(10);
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