/*** * Macro for testing the Digital Search Tapes for KRATTA Detector * * The Kratta unpacked event is read from root trees stored in "DST" * files. * * Structure of the file with DST file list (here "runlist_dst-local.dat") 1 /home/sebastian/Datasrc/Dst_201302/au400_1671_kratta.root /home/sebastian/Datasrc/Dst_201302/au400_1344_kratta.root /home/sebastian/Datasrc/Dst_201302/au400_1672_kratta.root /home/sebastian/Datasrc/Dst_201302/au400_1673_kratta.root * * Comment: * TKratDstVisualisator works for only one file. * The task TKratDstVisualisator is crashing when the second file * is goning to be analysed - to be corrected (TODO). * * Usage: * root unpack_kratta_dstReader.C -l * */ void unpack_kratta_dstReader() { // ---------- Load libraries ---------------------------------------- gROOT->LoadMacro("$VMCWORKDIR/gconfig/basiclibs.C"); basiclibs(); gSystem->Load("libBase"); // ----------- Load libs for kratta analysis---------------------------- gSystem->Load("libKratMktreedst"); gSystem->Load("libTKratDstReader"); gSystem->Load("libTKratDstAna"); gSystem->Load("libTKratDstVisualisator"); gSystem->Load("libTKratDstParamAna"); // Style setup (can be moved to rootlogon) gStyle->SetPalette(1); // --------------------------------------------------------------------- FairRunAna *fRun= new FairRunAna(); TString outFile = "output_unpack_dstana_0730.root"; //TString inputFile = "./dstana_0724_input.root"; //debugging //fRun->SetInputFile(inputFile); //debugging fRun->SetOutputFile(outFile); TString InFiles="runlist_dst-local.dat" ; TKratDstReader *pTKratDstReader = new TKratDstReader("TKratDstReader", InFiles, 2 ); TKratDstAna *pTKratDstAna = new TKratDstAna("TKratDstAna", 2 ); TKratDstVisualisator *pTKratDstVisualisator = new TKratDstVisualisator("TKratDstVisualisator", 1 ); TKratDstParamAna *pTKratDstParamAna = new TKratDstParamAna("TKratTaskTemplate", 1 ); //------------------------Tasks onfiguration-------------------------- //pTKratDstReader->SetVerboseLevel(6); pTKratDstVisualisator->SetEventsBetweenUpdatingToStore(500); pTKratDstVisualisator->SetModuleToAnalyse(0); //-------------Register(add) tasks in analysis manager---------------- fRun->AddTask( pTKratDstReader ); fRun->AddTask( pTKratDstParamAna ); //fRun->AddTask( pTKratDstVisualisator ); fRun->AddTask( pTKratDstAna ); //-------------------------------------------------------------------- fRun->Init(); Long64_t eventss = pTKratDstReader->GetNumberOfEventsInInputFiles(); cout << "Events in files = " << eventss << endl; //-------------------------------------------------------------------- cout << "Press enter to start..." << endl; getchar(); //eventss = 10000; // for debugging and tests only fRun->Run(0, eventss ); cout << "Done" << endl; }