/** * \file run_analysis.C * \brief Muon analysis macro * \author Firstname Lastname * \date 2012 */ #include using std::cout; using std::endl; void run_analysis(Int_t nEvents = 100) { // Input and output data TString dir = TString(gSystem->Getenv("VMCWORKDIR")) + TString("/macro/tutorial/reco/events_jpsi/"); // Output directory TString mcFile = dir + "mc.0000.root"; // MC transport file TString parFile = dir + "param.0000.root"; // Parameters file TString recoFile = dir + "global.reco.0000.root"; // Reconstruction file TString analysisFile = dir + "analysis.0000.root"; // Output analysis file TStopwatch timer; timer.Start(); gROOT->LoadMacro("$VMCWORKDIR/macro/littrack/loadlibs.C"); loadlibs(); gSystem->Load("libTutorialReco"); FairRunAna *run = new FairRunAna(); run->SetInputFile(mcFile); run->AddFriend(recoFile); run->SetOutputFile(analysisFile); FairTask* kalman = new CbmKF(); run->AddTask(kalman); // Add our di-muon analysis task CbmMuonAnalysis* analysis = new CbmMuonAnalysis(); run->AddTask(analysis); // ----- Parameter database -------------------------------------------- FairRuntimeDb* rtdb = run->GetRuntimeDb(); FairParRootFileIo* parIo1 = new FairParRootFileIo(); parIo1->open(parFile.Data()); rtdb->setFirstInput(parIo1); rtdb->setOutput(parIo1); rtdb->saveOutput(); // ------------------------------------------------------------------------ // ----- Initialize and run -------------------------------------------- run->Init(); run->Run(0, nEvents); // ------------------------------------------------------------------------ // ----- Finish ------------------------------------------------------- timer.Stop(); cout << endl << endl; cout << "Macro finished successfully." << endl; cout << "Test passed"<< endl; cout << " All ok " << endl; cout << "MC file is" << mcFile << endl; cout << "Reco file is " << recoFile << endl; cout << "Parameter file is " << parFile << endl; cout << "Real time " << timer.RealTime() << " s, CPU time " << timer.CpuTime() << " s" << endl; cout << endl; // ------------------------------------------------------------------------ }