void campaign_macal_1220( int run_to_analyse = 1000 ) { // ---- Load libraries -------------------------------------------- gROOT->LoadMacro("$VMCWORKDIR/gconfig/basiclibs.C"); basiclibs(); gSystem->Load("libGeoBase"); gSystem->Load("libParBase"); gSystem->Load("libBase"); gSystem->Load("libMbs"); gSystem->Load("libMbsAPI"); gSystem->Load("libTATOFEvent"); gSystem->Load("libTCAMACEvent"); gSystem->Load("libTCHIEvent"); gSystem->Load("libTLANDEvent"); gSystem->Load("libTKRATEvent"); gSystem->Load("libTRootEvent"); gSystem->Load("libTMbsInfo"); gSystem->Load("libTCHIGridCsI"); gSystem->Load("libMBSUnpack"); gSystem->Load("libMerger"); gSystem->Load("libTMBALLEvent"); gSystem->Load("libAnaCHI"); // ------------------------------------------------------------------- ///Load libs for kratta analysis gSystem->Load("libTKratAnaStep1"); gSystem->Load("libTKratAnaStep2"); gSystem->Load("libKratMktreedst"); gSystem->Load("libTKRATEventParam"); gSystem->Load("libTKratMerger"); gSystem->Load("libTKratDstReader"); gSystem->Load("libTKratDstAna"); gSystem->Load("libTKratDstVisualisator"); gSystem->Load("libTKratDstParamAna"); gSystem->Load("libTKratTaskTemplate"); gSystem->Load("libTRootKRATEvent"); gSystem->Load("libKrattaReTab"); gSystem->Load("libKrattaEneLib"); gSystem->Load("libKrattaPartIdent"); gSystem->Load("libSwiatowid"); gSystem->Load("libTKratCalib"); gSystem->Load("libTKratAnalysisAssistant"); // --------------------------------------------------------------------------- /// 1. Prepeare the input and output file: //int run_to_analyse = 1671; //TString pathToLmdFiles = "/lustre/fopi/asyeos/MAY11/"; TString pathToLmdFiles = "/home/sebastian/Datasrc/MAY11/"; TString PathToKrattaDsts = "/home/sebastian/Datasrc/Dst_201302/"; TString PathToResults = "./results"; /// 1.2. Preparing inputfile name - runlist: TKratAnalysisAssistant rAa(pathToLmdFiles); rAa.CreateRunlistForRuns(run_to_analyse,run_to_analyse); Int_t noOfFoundedFiles = rAa.GetNoOfFilesInLastRunlist(); if ( noOfFoundedFiles == 0 ){ cout << "No lmd files found for run " << run_to_analyse << endl; cout << "Done" << endl; return; } //TString InFiles ="runlist-local.dat" ; TString InFiles = rAa.GetFileNameWithRunlist(); cout << "Found = " << noOfFoundedFiles << " files." << endl; cout << "Filename = " << InFiles << endl; /// 1.2. Preparing outputfile name: //TString outFile = TString(outputFile3); //"analysis_results-calib-test.root"; //TString outFile = "/lustre/fopi/skupny/2013-12-kratta_calib_ana/analysis_result_Au1660-1680.root"; Int_t pathLen= pathToLmdFiles.Length(); vector outputFile1 = rAa.GetLmdFilesForRuns(run_to_analyse,run_to_analyse); string outputFile2 = outputFile1[0].substr(0, outputFile1[0].length()-4); string outputFile3 = outputFile2.substr( pathLen+1 , outputFile2.length()-25); TString outFile = PathToResults +"/"+ TString(outputFile3) + "_kratcalib.root"; cout << "Results will be stored in file: " << outFile << endl; // ------------------------------------------------------------------- FairRunAna *fRun= new FairRunAna(); fRun->SetOutputFile(outFile); // ------ Declare tasks ---------------------------------------------- MBSUnpack *MBSunpack = new MBSUnpack("MBS unpack", InFiles); ///NEEDED FOR PROPER KRATTA DST MERGING (fills fMbsInfo [TMbsInfo] ) LANDUnpack *LANDunpack = new LANDUnpack("LAND unpack"); CHIUnpack *CHIunpack = new CHIUnpack("Chimera unpack"); MBUnpack *MBunpack = new MBUnpack("MicroBall unpack"); ///NEEDED FOR PROPER KRATTA DST MERGING (fills fMBSTS [TRootTS]) CAMACUnpack *CAMACunpack = new CAMACUnpack("CAMAC unpack"); ATOFUnpack *ATOFunpack = new ATOFUnpack("ATOF unpack"); Merger *AsyMerger = new Merger("Asy Merger"); ///NEEDED FOR PROPER KRATTA DST MERGING ? TKratMerger *pTKratMerger = new TKratMerger("TKratMerger", InFiles, PathToKrattaDsts ); TKratCalib *pTKratCalib = new TKratCalib("TKratCalib" ); //pTKratCalib->SetVerboseLevel(3); pTKratCalib->SaveOutputIntoTree(); // ------ Add tasks to the scheduler manager ------------------------- ///Lvl 0 fRun->AddTask(MBSunpack); fRun->AddTask(LANDunpack); fRun->AddTask(CHIunpack); fRun->AddTask(MBunpack); fRun->AddTask(CAMACunpack); fRun->AddTask(ATOFunpack); fRun->AddTask(AsyMerger); fRun->AddTask( pTKratMerger ); fRun->AddTask( pTKratCalib ); // ------ Initialize ------------------------------------------------ fRun->Init(); pTKratMerger->PrintLoadedDstFiles(); // ------ Run -------------------------------------------------------- //fRun->RunOnLmdFiles(); fRun->Run(0, 1000); cout << "Done" << endl; }