]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Substitued At with FindObject +
authorfbellini <fbellini@cern.ch>
Fri, 9 Jan 2015 16:13:10 +0000 (17:13 +0100)
committerfbellini <fbellini@cern.ch>
Fri, 9 Jan 2015 16:15:37 +0000 (17:15 +0100)
New year's cleanup and minor fixes to plotting style

TOF/macrosQA/MakeTrendingTOFQA.C

index 5ddf3e209bc1bc8a619cdf5188a09deb0dd22385..0caa78217f87131d44132a0116f61d8f3dfcb4e6 100644 (file)
 /*
-fbellini@cern.ch, last update on 12/07/2013
-- added average multi vs. run number trending plot
-Previous history - january 2012:
-- added flag for displaying reduced n. of trending plots
-- now producing tree run by run
-- new method to produce trending plots from list of trees
+  fbellini@cern.ch, last update on 09/01/2015
+  - cleanup and fixes for graphics
+  Previous history:
+  - added average multi vs. run number trending plot
+  - added flag for displaying reduced n. of trending plots
+  - now producing tree run by run
+  - new method to produce trending plots from list of trees
 */
 
 Int_t MakeTrendingTOFQA(char * runlist, Int_t year=2012, char *period="LHC12a", char* pass="cpass1", char* nameSuffix ="_barrel",Bool_t isMC=kTRUE, Int_t trainId=0, Bool_t displayAll=kTRUE, Bool_t includeStartTime=kTRUE){                                             
-       Int_t filesCounter=0;
+  Int_t filesCounter=0;
   
-       if (!runlist) {
-               printf("Invalid list of runs given as input: nothing done\n");
-               return 1;
-       }       
-       Int_t runNumber;
-       char infile[300]; 
-       char postFileName[20];
-       char treePostFileName[20];
+  if (!runlist) {
+    printf("Invalid list of runs given as input: nothing done\n");
+    return 1;
+  }    
+  Int_t runNumber;
+  char infile[300]; 
+  char postFileName[20];
+  char treePostFileName[20];
   
-       char trendFileName[100]; 
-       //Define trending output
-       if (trainId==0){
-         sprintf(trendFileName,"treeTOFQA_%s_%s.root",period,pass);  
-       }else{
-         sprintf(trendFileName,"treeTOFQA_QA%i_%s_%s.root",trainId,period,pass);
-       }
-       TFile * trendFile=new TFile(trendFileName,"recreate");
-       FILE * files = fopen(runlist, "r") ; 
-
-       //create chain of treePostQA     
-       Long64_t nentries=100000, firstentry=0; 
-       TChain *chainTree = 0;
-       chainTree=new TChain("trendTree");
+  char trendFileName[100]; 
+  //Define trending output
+  if (trainId==0){
+    sprintf(trendFileName,"treeTOFQA_%s_%s.root",period,pass);  
+  }else{
+    sprintf(trendFileName,"treeTOFQA_QA%i_%s_%s.root",trainId,period,pass);
+  }
+  TFile * trendFile=new TFile(trendFileName,"recreate");
+  FILE * files = fopen(runlist, "r") ; 
+
+  //create chain of treePostQA     
+  Long64_t nentries=100000, firstentry=0; 
+  TChain *chainTree = 0;
+  chainTree=new TChain("trendTree");
        
-       while (fscanf(files,"%d",&runNumber)==1 ){
+  while (fscanf(files,"%d",&runNumber)==1 ){
          
-         //get QAtrain output
-         if (trainId==0){
-           if (!isMC) sprintf(infile,"alien:///alice/data/%i/%s/000%d/%s/QAresults%s.root",year,period,runNumber,pass,nameSuffix);
-           else sprintf(infile,"alien:///alice/sim/%i/%s/%d/QAresults%s.root",year,period,runNumber,nameSuffix);
-         } else{
-           if (!isMC) sprintf(infile,"alien:///alice/data/%i/%s/000%d/ESDs/%s/QA%i/QAresults%s.root",year,period,runNumber,pass,trainId,nameSuffix);
-           else sprintf(infile,"alien:///alice/sim/%i/%s/%d/QA%i/QAresults%s.root",year,period,runNumber,trainId,nameSuffix);
-         }
-
-         Printf("============== Opening QA file(s) for run %i =======================\n",runNumber);
+    //get QAtrain output
+    if (trainId==0){
+      if (!isMC) sprintf(infile,"alien:///alice/data/%i/%s/000%d/%s/QAresults%s.root",year,period,runNumber,pass,nameSuffix);
+      else sprintf(infile,"alien:///alice/sim/%i/%s/%d/QAresults%s.root",year,period,runNumber,nameSuffix);
+    } else{
+      if (!isMC) sprintf(infile,"alien:///alice/data/%i/%s/000%d/ESDs/%s/QA%i/QAresults%s.root",year,period,runNumber,pass,trainId,nameSuffix);
+      else sprintf(infile,"alien:///alice/sim/%i/%s/%d/QA%i/QAresults%s.root",year,period,runNumber,trainId,nameSuffix);
+    }
+
+    Printf("============== Opening QA file(s) for run %i =======================\n",runNumber);
          
-         //run post-analysis
-         if (RunESDQApostAnalysis(infile,runNumber,isMC,kTRUE,displayAll,includeStartTime)==0){
-           filesCounter++;
-           sprintf(postFileName,"postQA_%i.root",runNumber);
-           sprintf(treePostFileName,"treePostQA_%i.root",runNumber);
+    //run post-analysis
+    if (RunESDQApostAnalysis(infile,runNumber,isMC,kTRUE,displayAll,includeStartTime)==0){
+      filesCounter++;
+      sprintf(postFileName,"postQA_%i.root",runNumber);
+      sprintf(treePostFileName,"treePostQA_%i.root",runNumber);
            
-           if (MakePostQAtree(runNumber, isMC, postFileName, treePostFileName, includeStartTime)==0){
-             chainTree->Add(treePostFileName); 
-             Printf("Tree chain has now %d entries ",(Int_t)chainTree->GetEntries());
-           } else {
-             Printf("Could not get tree with trending quantities for run %i: SKIPPING",runNumber);
-           
-         } else 
-           Printf("Post analysis not run on QA output %s", infile);
-       }
-       return  MakeTrendingFromTreeWithErrors(chainTree, trendFileName, displayAll, includeStartTime); 
+      if (MakePostQAtree(runNumber, isMC, postFileName, treePostFileName, includeStartTime)==0){
+       chainTree->Add(treePostFileName); 
+       Printf("Tree chain has now %d entries ",(Int_t)chainTree->GetEntries());
+      } else {
+       Printf("Could not get tree with trending quantities for run %i: SKIPPING",runNumber);
+      } 
+    } else 
+      Printf("Post analysis not run on QA output %s", infile);
+  }
+  return  MakeTrendingFromTreeWithErrors(chainTree, trendFileName, displayAll, includeStartTime); 
 }
 //-----------------------------------------------------------
 Int_t MakeTrendingHistoFromTreeList(char * fileList, TString treeName = "trendTree", Bool_t displayAll=kFALSE, Bool_t includeStartTime=kTRUE){    
 
-       Int_t filesCounter=0;
+  Int_t filesCounter=0;
   
-       if (!fileList) {
-               printf("Invalid list of runs given as input: nothing done\n");
-               return 1;
-       }       
-       char infile[300]; 
-       char trendFileName[100]; 
-       //Define trending output
-       sprintf(trendFileName,"trendingHistoTOFQA_%s.root",fileList);  
-       TFile * trendFile=new TFile(trendFileName,"recreate");
-       FILE * files = fopen(fileList, "r") ; 
-
-       //create chain of treePostQA
-       Long64_t nentries=100000, firstentry=0; 
-       TChain *chainTree =new TChain(treeName.Data());
+  if (!fileList) {
+    printf("Invalid list of runs given as input: nothing done\n");
+    return 1;
+  }    
+  char infile[300]; 
+  char trendFileName[100]; 
+  //Define trending output
+  sprintf(trendFileName,"trendingHistoTOFQA_%s.root",fileList);  
+  TFile * trendFile=new TFile(trendFileName,"recreate");
+  FILE * files = fopen(fileList, "r") ; 
+
+  //create chain of treePostQA
+  Long64_t nentries=100000, firstentry=0; 
+  TChain *chainTree =new TChain(treeName.Data());
        
-       while (fscanf(files,"%s",&infile)==1 ){   
-         if (!TFile::Open(infile,"r")) 
-           Printf("Error: cannot open file %s", infile);
-         Printf("============== Adding QA tree file %s to the chain",infile);
-         filesCounter++;         
-         chainTree->Add(infile); 
-       }
-       return  MakeTrendingFromTreeWithErrors(chainTree, trendFileName, displayAll, includeStartTime); 
+  while (fscanf(files,"%s",&infile)==1 ){        
+    if (!TFile::Open(infile,"r")) 
+      Printf("Error: cannot open file %s", infile);
+    Printf("============== Adding QA tree file %s to the chain",infile);
+    filesCounter++;      
+    chainTree->Add(infile); 
+  }
+  return  MakeTrendingFromTreeWithErrors(chainTree, trendFileName, displayAll, includeStartTime); 
 }
 
 //______________________________________________________________________________
 Int_t MakeTrendingFromTreeWithErrors(TChain * fin,char* trendFileName=NULL, Bool_t displayAll=kFALSE, Bool_t includeStartTime=kTRUE){
 
-       if (!trendFileName) 
-               return 3;
+  if (!trendFileName) 
+    return 3;
  
-       if (!fin) 
-               return 4;
-
-       Int_t runNumber;
-       Double_t avTime=0., peakTime=0., spreadTime=0., peakTimeErr=0., spreadTimeErr=0.,negTimeRatio=0.,
-               avRawTime=0., peakRawTime=0., spreadRawTime=0., peakRawTimeErr=0., spreadRawTimeErr=0., 
-               avTot=0., peakTot=0.,spreadTot=0.,  peakTotErr=0.,spreadTotErr=0.,
-               orphansRatio=0., avL=0., negLratio=0.,
-               effPt1=0., effPt2=0., matchEffLinFit1Gev=0.,matchEffLinFit1GevErr=0.;
-       Double_t avDiffTime=0.,peakDiffTime=0., spreadDiffTime=0.,peakDiffTimeErr=0., spreadDiffTimeErr=0.,avT0fillRes=0.;
+  if (!fin) 
+    return 4;
+
+  Int_t runNumber;
+  Double_t avTime=0., peakTime=0., spreadTime=0., peakTimeErr=0., spreadTimeErr=0.,negTimeRatio=0.,
+    avRawTime=0., peakRawTime=0., spreadRawTime=0., peakRawTimeErr=0., spreadRawTimeErr=0., 
+    avTot=0., peakTot=0.,spreadTot=0.,  peakTotErr=0.,spreadTotErr=0.,
+    orphansRatio=0., avL=0., negLratio=0.,
+    effPt1=0., effPt2=0., matchEffLinFit1Gev=0.,matchEffLinFit1GevErr=0.;
+  Double_t avDiffTime=0.,peakDiffTime=0., spreadDiffTime=0.,peakDiffTimeErr=0., spreadDiffTimeErr=0.,avT0fillRes=0.;
    
-       Double_t avT0A=0.,peakT0A=0., spreadT0A=0.,peakT0AErr=0., spreadT0AErr=0.;
-       Double_t avT0C=0.,peakT0C=0., spreadT0C=0.,peakT0CErr=0., spreadT0CErr=0.;
-       Double_t avT0AC=0.,peakT0AC=0., spreadT0AC=0.,peakT0ACErr=0., spreadT0ACErr=0.;
-       Double_t avT0res=0.,peakT0res=0., spreadT0res=0.,peakT0resErr=0., spreadT0resErr=0.;
-       Float_t avMulti=0;
-       Float_t fractionEventsWHits=0.0;
-       Double_t goodChannelRatio=0.0;
+  Double_t avT0A=0.,peakT0A=0., spreadT0A=0.,peakT0AErr=0., spreadT0AErr=0.;
+  Double_t avT0C=0.,peakT0C=0., spreadT0C=0.,peakT0CErr=0., spreadT0CErr=0.;
+  Double_t avT0AC=0.,peakT0AC=0., spreadT0AC=0.,peakT0ACErr=0., spreadT0ACErr=0.;
+  Double_t avT0res=0.,peakT0res=0., spreadT0res=0.,peakT0resErr=0., spreadT0resErr=0.;
+  Float_t avMulti=0;
+  Float_t fractionEventsWHits=0.0;
+  Double_t goodChannelRatio=0.0;
    
-       TTree * ttree = (TTree*) fin->CloneTree();
-       ttree->SetBranchAddress("run",&runNumber);
-       ttree->SetBranchAddress("avMulti",&avMulti);
-       ttree->SetBranchAddress("goodChannelsRatio",&goodChannelRatio);   
-       ttree->SetBranchAddress("avTime",&avTime); //mean time
-       ttree->SetBranchAddress("peakTime",&peakTime); //main peak time after fit
-       ttree->SetBranchAddress("spreadTime",&spreadTime); //spread of main peak of time after fit
-       ttree->SetBranchAddress("peakTimeErr",&peakTimeErr); //main peak time after fit error
-       ttree->SetBranchAddress("spreadTimeErr",&spreadTimeErr); //spread of main peak of time after fit error
+  TTree * ttree = (TTree*) fin->CloneTree();
+  ttree->SetBranchAddress("run",&runNumber);
+  ttree->SetBranchAddress("avMulti",&avMulti);
+  ttree->SetBranchAddress("goodChannelsRatio",&goodChannelRatio);   
+  ttree->SetBranchAddress("avTime",&avTime); //mean time
+  ttree->SetBranchAddress("peakTime",&peakTime); //main peak time after fit
+  ttree->SetBranchAddress("spreadTime",&spreadTime); //spread of main peak of time after fit
+  ttree->SetBranchAddress("peakTimeErr",&peakTimeErr); //main peak time after fit error
+  ttree->SetBranchAddress("spreadTimeErr",&spreadTimeErr); //spread of main peak of time after fit error
    
-       ttree->SetBranchAddress("negTimeRatio",&negTimeRatio); //negative time ratio
+  ttree->SetBranchAddress("negTimeRatio",&negTimeRatio); //negative time ratio
    
-       ttree->SetBranchAddress("avRawTime",&avRawTime); //mean raw time
-       ttree->SetBranchAddress("peakRawTime",&peakRawTime); //mean peak of raw time after fit
-       ttree->SetBranchAddress("spreadRawTime",&spreadRawTime); //spread of main peak of raw time after fit
-       ttree->SetBranchAddress("peakRawTimeErr",&peakRawTimeErr); //main peak raw  time after fit error
-       ttree->SetBranchAddress("spreadRawTimeErr",&spreadRawTimeErr); //spread of  raw main peak of time after fit error
+  ttree->SetBranchAddress("avRawTime",&avRawTime); //mean raw time
+  ttree->SetBranchAddress("peakRawTime",&peakRawTime); //mean peak of raw time after fit
+  ttree->SetBranchAddress("spreadRawTime",&spreadRawTime); //spread of main peak of raw time after fit
+  ttree->SetBranchAddress("peakRawTimeErr",&peakRawTimeErr); //main peak raw  time after fit error
+  ttree->SetBranchAddress("spreadRawTimeErr",&spreadRawTimeErr); //spread of  raw main peak of time after fit error
   
-       ttree->SetBranchAddress("avTot",&avTot); //main peak tot
-       ttree->SetBranchAddress("peakTot",&peakTot); // main peak of tot after fit
-       ttree->SetBranchAddress("spreadTot",&spreadTot); //spread of main peak of tot after fit
-       ttree->SetBranchAddress("peakTotErr",&peakTotErr); // main peak of tot after fit
-       ttree->SetBranchAddress("spreadTotErr",&spreadTotErr); //spread of main peak of tot after fit
+  ttree->SetBranchAddress("avTot",&avTot); //main peak tot
+  ttree->SetBranchAddress("peakTot",&peakTot); // main peak of tot after fit
+  ttree->SetBranchAddress("spreadTot",&spreadTot); //spread of main peak of tot after fit
+  ttree->SetBranchAddress("peakTotErr",&peakTotErr); // main peak of tot after fit
+  ttree->SetBranchAddress("spreadTotErr",&spreadTotErr); //spread of main peak of tot after fit
    
-       ttree->SetBranchAddress("orphansRatio",&orphansRatio); //orphans ratio
+  ttree->SetBranchAddress("orphansRatio",&orphansRatio); //orphans ratio
    
-       ttree->SetBranchAddress("avL",&avL); //mean track length
-       ttree->SetBranchAddress("negLratio",&negLratio);//ratio of tracks with track length <350 cm
+  ttree->SetBranchAddress("avL",&avL); //mean track length
+  ttree->SetBranchAddress("negLratio",&negLratio);//ratio of tracks with track length <350 cm
    
-       ttree->SetBranchAddress("effPt1",&effPt1);//matching eff at 1 GeV/c
-       ttree->SetBranchAddress("effPt2",&effPt2); //matching eff at 2 GeV/c
-       ttree->SetBranchAddress("matchEffLinFit1Gev",&matchEffLinFit1Gev);//matching eff fit param 
-       ttree->SetBranchAddress("matchEffLinFit1GevErr",&matchEffLinFit1GevErr);////matching eff fit param error
+  ttree->SetBranchAddress("effPt1",&effPt1);//matching eff at 1 GeV/c
+  ttree->SetBranchAddress("effPt2",&effPt2); //matching eff at 2 GeV/c
+  ttree->SetBranchAddress("matchEffLinFit1Gev",&matchEffLinFit1Gev);//matching eff fit param 
+  ttree->SetBranchAddress("matchEffLinFit1GevErr",&matchEffLinFit1GevErr);////matching eff fit param error
    
-       ttree->SetBranchAddress("avPiDiffTime",&avDiffTime); //mean t-texp
-       ttree->SetBranchAddress("peakPiDiffTime",&peakDiffTime); //main peak t-texp after fit
-       ttree->SetBranchAddress("spreadPiDiffTime",&spreadDiffTime); //spread of main peak t-texp after fit
-       ttree->SetBranchAddress("peakPiDiffTimeErr",&peakDiffTimeErr); //main peak t-texp after fit error
-       ttree->SetBranchAddress("spreadPiDiffTimeErr",&spreadDiffTimeErr); //spread of main peak of t-texp after fit error
+  ttree->SetBranchAddress("avPiDiffTime",&avDiffTime); //mean t-texp
+  ttree->SetBranchAddress("peakPiDiffTime",&peakDiffTime); //main peak t-texp after fit
+  ttree->SetBranchAddress("spreadPiDiffTime",&spreadDiffTime); //spread of main peak t-texp after fit
+  ttree->SetBranchAddress("peakPiDiffTimeErr",&peakDiffTimeErr); //main peak t-texp after fit error
+  ttree->SetBranchAddress("spreadPiDiffTimeErr",&spreadDiffTimeErr); //spread of main peak of t-texp after fit error
    
-       ttree->SetBranchAddress("avT0A",&avT0A); //main peak t0A
-       ttree->SetBranchAddress("peakT0A",&peakT0A); // main peak of t0A after fit
-       ttree->SetBranchAddress("spreadT0A",&spreadT0A); //spread of main peak of t0A after fit
-       ttree->SetBranchAddress("peakT0AErr",&peakT0AErr); // main peak of t0A after fit
-       ttree->SetBranchAddress("spreadT0AErr",&spreadT0AErr); //spread of main peak of t0A after fit
+  ttree->SetBranchAddress("avT0A",&avT0A); //main peak t0A
+  ttree->SetBranchAddress("peakT0A",&peakT0A); // main peak of t0A after fit
+  ttree->SetBranchAddress("spreadT0A",&spreadT0A); //spread of main peak of t0A after fit
+  ttree->SetBranchAddress("peakT0AErr",&peakT0AErr); // main peak of t0A after fit
+  ttree->SetBranchAddress("spreadT0AErr",&spreadT0AErr); //spread of main peak of t0A after fit
    
-       ttree->SetBranchAddress("avT0C",&avT0C); //main peak t0C
-       ttree->SetBranchAddress("peakT0C",&peakT0C); // main peak of t0C after fit
-       ttree->SetBranchAddress("spreadT0C",&spreadT0C); //spread of main peak of t0C after fit
-       ttree->SetBranchAddress("peakT0CErr",&peakT0CErr); // main peak of t0C after fit
-       ttree->SetBranchAddress("spreadT0CErr",&spreadT0CErr); //spread of main peak of t0C after fit
+  ttree->SetBranchAddress("avT0C",&avT0C); //main peak t0C
+  ttree->SetBranchAddress("peakT0C",&peakT0C); // main peak of t0C after fit
+  ttree->SetBranchAddress("spreadT0C",&spreadT0C); //spread of main peak of t0C after fit
+  ttree->SetBranchAddress("peakT0CErr",&peakT0CErr); // main peak of t0C after fit
+  ttree->SetBranchAddress("spreadT0CErr",&spreadT0CErr); //spread of main peak of t0C after fit
    
-       ttree->SetBranchAddress("avT0AC",&avT0AC); //main peak t0AC
-       ttree->SetBranchAddress("peakT0AC",&peakT0AC); // main peak of t0AC after fit
-       ttree->SetBranchAddress("spreadT0AC",&spreadT0AC); //spread of main peak of t0AC after fit
-       ttree->SetBranchAddress("peakT0ACErr",&peakT0ACErr); // main peak of t0AC after fit
-       ttree->SetBranchAddress("spreadT0ACErr",&spreadT0ACErr); //spread of main peak of t0AC after fit
+  ttree->SetBranchAddress("avT0AC",&avT0AC); //main peak t0AC
+  ttree->SetBranchAddress("peakT0AC",&peakT0AC); // main peak of t0AC after fit
+  ttree->SetBranchAddress("spreadT0AC",&spreadT0AC); //spread of main peak of t0AC after fit
+  ttree->SetBranchAddress("peakT0ACErr",&peakT0ACErr); // main peak of t0AC after fit
+  ttree->SetBranchAddress("spreadT0ACErr",&spreadT0ACErr); //spread of main peak of t0AC after fit
    
-       ttree->SetBranchAddress("avT0res",&avT0res); //main peak t0AC
-       ttree->SetBranchAddress("peakT0res",&peakT0res); // main peak of t0AC after fit
-       ttree->SetBranchAddress("spreadT0res",&spreadT0res); //spread of main peak of t0AC after fit
-       ttree->SetBranchAddress("peakT0resErr",&peakT0resErr); // main peak of t0AC after fit
-       ttree->SetBranchAddress("spreadT0resErr",&spreadT0resErr); //spread of main peak of t0AC after fit
-       ttree->SetBranchAddress("avT0fillRes",&avT0fillRes); //t0 fill res
-
-       Int_t nRuns=ttree->GetEntries();
-       TList lista;
+  ttree->SetBranchAddress("avT0res",&avT0res); //main peak t0AC
+  ttree->SetBranchAddress("peakT0res",&peakT0res); // main peak of t0AC after fit
+  ttree->SetBranchAddress("spreadT0res",&spreadT0res); //spread of main peak of t0AC after fit
+  ttree->SetBranchAddress("peakT0resErr",&peakT0resErr); // main peak of t0AC after fit
+  ttree->SetBranchAddress("spreadT0resErr",&spreadT0resErr); //spread of main peak of t0AC after fit
+  ttree->SetBranchAddress("avT0fillRes",&avT0fillRes); //t0 fill res
+
+  Int_t nRuns=ttree->GetEntries();
+  TList lista;
    
-       TH1F * hAvMulti=new TH1F("hAvMulti","Average multiplicity of matched tracks <N_{TOF}>;; <N_{TOF}>", nRuns,0., nRuns);//, 600, 0. , 600.);
-       hAvMulti->SetDrawOption("E1");
-       hAvMulti->SetMarkerStyle(20);
-       hAvMulti->SetMarkerColor(kBlue);
+  TH1F * hAvMulti=new TH1F("hAvMulti","Average multiplicity of matched tracks <N_{TOF}>;; <N_{TOF}>", nRuns,0., nRuns);//, 600, 0. , 600.);
+  hAvMulti->SetDrawOption("E1");
+  hAvMulti->SetMarkerStyle(20);
+  hAvMulti->SetMarkerColor(kBlue);
        
-       TH1F * hAvDiffTimeVsRun=new TH1F("hAvDiffTimeVsRun","Mean t-t_{exp} (no fit);run;<t^{TOF}-t_{exp,#pi}> (ps)",nRuns,0., nRuns);//, 600, 0. , 600.);
-       hAvDiffTimeVsRun->SetDrawOption("E1");
-       hAvDiffTimeVsRun->SetMarkerStyle(20);
-       hAvDiffTimeVsRun->SetMarkerColor(kBlue);
-       //   hAvTimeVsRun->GetYaxis()->SetRangeUser(0.0, 50.0);
-
-       TH1F * hPeakDiffTimeVsRun=new TH1F("hPeakDiffTimeVsRun","t-t_{exp} (gaussian fit) ;; <t^{TOF}-t_{exp,#pi}> (ps)",nRuns,0., nRuns);//,600, 0. , 600. );
-       hPeakDiffTimeVsRun->SetDrawOption("E1");
-       hPeakDiffTimeVsRun->SetMarkerStyle(20);
-       hPeakDiffTimeVsRun->SetMarkerColor(kBlue);
+  TH1F * hAvDiffTimeVsRun=new TH1F("hAvDiffTimeVsRun","Mean t-t_{exp} (no fit);run;<t^{TOF}-t_{exp,#pi}> (ps)",nRuns,0., nRuns);//, 600, 0. , 600.);
+  hAvDiffTimeVsRun->SetDrawOption("E1");
+  hAvDiffTimeVsRun->SetMarkerStyle(20);
+  hAvDiffTimeVsRun->SetMarkerColor(kBlue);
+  //   hAvTimeVsRun->GetYaxis()->SetRangeUser(0.0, 50.0);
+
+  TH1F * hPeakDiffTimeVsRun=new TH1F("hPeakDiffTimeVsRun","t-t_{exp} (gaussian fit) ;; <t^{TOF}-t_{exp,#pi}> (ps)",nRuns,0., nRuns);//,600, 0. , 600. );
+  hPeakDiffTimeVsRun->SetDrawOption("E1");
+  hPeakDiffTimeVsRun->SetMarkerStyle(20);
+  hPeakDiffTimeVsRun->SetMarkerColor(kBlue);
    
-       TH1F * hSpreadDiffTimeVsRun=new TH1F("hSpreadDiffTimeVsRun","#sigma(t-t_{exp}) (gaussian fit);; #sigma(t^{TOF}-t_{exp,#pi}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
-       hSpreadDiffTimeVsRun->SetDrawOption("E1");
-       hSpreadDiffTimeVsRun->SetMarkerStyle(20);
-       hSpreadDiffTimeVsRun->SetMarkerColor(kBlue);
-
-       TH1F * hAvTimeVsRun=new TH1F("hAvTimeVsRun","<t^{TOF}>;;<t^{TOF}> (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
-       hAvTimeVsRun->SetDrawOption("E1");
-       hAvTimeVsRun->SetMarkerStyle(20);
-       hAvTimeVsRun->SetMarkerColor(kBlue);
-       //   hAvTimeVsRun->GetYaxis()->SetRangeUser(0.0, 50.0);
-
-       TH1F * hPeakTimeVsRun=new TH1F("hPeakTimeVsRun","Peak value of t^{TOF} (landau fit);;t_{peak}^{TOF} (ns)",nRuns,0., nRuns);//,600, 0. , 600. );
-       hPeakTimeVsRun->SetDrawOption("E1");
-       hPeakTimeVsRun->SetMarkerStyle(20);
-       hPeakTimeVsRun->SetMarkerColor(kBlue);
+  TH1F * hSpreadDiffTimeVsRun=new TH1F("hSpreadDiffTimeVsRun","#sigma(t-t_{exp}) (gaussian fit);; #sigma(t^{TOF}-t_{exp,#pi}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
+  hSpreadDiffTimeVsRun->SetDrawOption("E1");
+  hSpreadDiffTimeVsRun->SetMarkerStyle(20);
+  hSpreadDiffTimeVsRun->SetMarkerColor(kBlue);
+
+  TH1F * hAvTimeVsRun=new TH1F("hAvTimeVsRun","<t^{TOF}>;;<t^{TOF}> (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
+  hAvTimeVsRun->SetDrawOption("E1");
+  hAvTimeVsRun->SetMarkerStyle(20);
+  hAvTimeVsRun->SetMarkerColor(kBlue);
+  //   hAvTimeVsRun->GetYaxis()->SetRangeUser(0.0, 50.0);
+
+  TH1F * hPeakTimeVsRun=new TH1F("hPeakTimeVsRun","Peak value of t^{TOF} (landau fit);;t_{peak}^{TOF} (ns)",nRuns,0., nRuns);//,600, 0. , 600. );
+  hPeakTimeVsRun->SetDrawOption("E1");
+  hPeakTimeVsRun->SetMarkerStyle(20);
+  hPeakTimeVsRun->SetMarkerColor(kBlue);
    
-       TH1F * hSpreadTimeVsRun=new TH1F("hSpreadTimeVsRun","Spread of t^{TOF} (landau fit);; #sigma(t^{TOF}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
-       hSpreadTimeVsRun->SetDrawOption("E1");
-       hSpreadTimeVsRun->SetMarkerStyle(20);
-       hSpreadTimeVsRun->SetMarkerColor(kBlue);
+  TH1F * hSpreadTimeVsRun=new TH1F("hSpreadTimeVsRun","Spread of t^{TOF} (landau fit);; #sigma(t^{TOF}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
+  hSpreadTimeVsRun->SetDrawOption("E1");
+  hSpreadTimeVsRun->SetMarkerStyle(20);
+  hSpreadTimeVsRun->SetMarkerColor(kBlue);
   
-       TH1F * hAvRawTimeVsRun=new TH1F("hAvRawTimeVsRun","Peak value of raw t^{TOF};;<t_{raw}^{TOF}> (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
-       hAvRawTimeVsRun->SetDrawOption("E1");
-       hAvRawTimeVsRun->SetMarkerStyle(21);
-       hAvRawTimeVsRun->SetMarkerColor(kGreen);
-
-       TH1F * hPeakRawTimeVsRun=new TH1F("hPeakRawTimeVsRun","Peak value of raw t^{TOF} (landau fit);;t_{peak,raw}^{TOF} (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
-       hPeakRawTimeVsRun->SetDrawOption("E1");
-       hPeakRawTimeVsRun->SetMarkerStyle(21);
-       hPeakRawTimeVsRun->SetMarkerColor(kGreen);
-
-       TH1F * hSpreadRawTimeVsRun=new TH1F("hSpreadRawTimeVsRun","Spread of raw t^{TOF} (landau fit);;#sigma(t_{raw}^{TOF}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
-       hSpreadRawTimeVsRun->SetDrawOption("E1");
-       hSpreadRawTimeVsRun->SetMarkerStyle(21);
-       hSpreadRawTimeVsRun->SetMarkerColor(kGreen);
+  TH1F * hAvRawTimeVsRun=new TH1F("hAvRawTimeVsRun","Peak value of raw t^{TOF};;<t_{raw}^{TOF}> (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
+  hAvRawTimeVsRun->SetDrawOption("E1");
+  hAvRawTimeVsRun->SetMarkerStyle(21);
+  hAvRawTimeVsRun->SetMarkerColor(kGreen);
+
+  TH1F * hPeakRawTimeVsRun=new TH1F("hPeakRawTimeVsRun","Peak value of raw t^{TOF} (landau fit);;t_{peak,raw}^{TOF} (ns)",nRuns,0., nRuns);//, 600, 0. , 600.);
+  hPeakRawTimeVsRun->SetDrawOption("E1");
+  hPeakRawTimeVsRun->SetMarkerStyle(21);
+  hPeakRawTimeVsRun->SetMarkerColor(kGreen);
+
+  TH1F * hSpreadRawTimeVsRun=new TH1F("hSpreadRawTimeVsRun","Spread of raw t^{TOF} (landau fit);;#sigma(t_{raw}^{TOF}) (ns)",nRuns,0., nRuns);//, 100, 0. , 100.);
+  hSpreadRawTimeVsRun->SetDrawOption("E1");
+  hSpreadRawTimeVsRun->SetMarkerStyle(21);
+  hSpreadRawTimeVsRun->SetMarkerColor(kGreen);
    
-       TH1F * hAvTotVsRun=new TH1F("hAvTotVsRun","<ToT> (no fit);run;<ToT> (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
-       hAvTotVsRun->SetDrawOption("E1");
-       hAvTotVsRun->SetMarkerStyle(22);
+  TH1F * hAvTotVsRun=new TH1F("hAvTotVsRun","<ToT> (no fit);run;<ToT> (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
+  hAvTotVsRun->SetDrawOption("E1");
+  hAvTotVsRun->SetMarkerStyle(22);
    
-       TH1F * hPeakTotVsRun=new TH1F("hPeakTotVsRun","<ToT> (gaussian fit);;ToT_{peak} (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
-       hPeakTotVsRun->SetDrawOption("E1");
-       hPeakTotVsRun->SetMarkerStyle(22);
+  TH1F * hPeakTotVsRun=new TH1F("hPeakTotVsRun","<ToT> (gaussian fit);;ToT_{peak} (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
+  hPeakTotVsRun->SetDrawOption("E1");
+  hPeakTotVsRun->SetMarkerStyle(22);
    
-       TH1F * hSpreadTotVsRun=new TH1F("hSpreadTotVsRun","#sigma(ToT) (gaussian fit);#sigma(ToT) (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
-       hSpreadTotVsRun->SetDrawOption("E1");
-       hSpreadTotVsRun->SetMarkerStyle(22);
+  TH1F * hSpreadTotVsRun=new TH1F("hSpreadTotVsRun","#sigma(ToT) (gaussian fit);#sigma(ToT) (ns)",nRuns,0., nRuns);//, 50, 0. , 50.);
+  hSpreadTotVsRun->SetDrawOption("E1");
+  hSpreadTotVsRun->SetMarkerStyle(22);
    
-       TH1F * hNegTimeRatioVsRun=new TH1F("hNegTimeRatioVsRun","Ratio of tracks with t^{TOF}<12.5 ns; ; ratio of tracks with t^{TOF}<12.5 ns (%)",nRuns, 0., nRuns);//, 100, 0. , 100.);
-       hNegTimeRatioVsRun->SetDrawOption("E");
-
-       TH1F * hOrphansRatioVsRun=new TH1F("hOrphansRatioVsRun","Ratio of orphans (hits with ToT=0); ; ratio of orphans (%)",nRuns, 0., nRuns);//, 1000, 0. , 100.);
-       hOrphansRatioVsRun->SetDrawOption("E");
-
-       TH1F * hMeanLVsRun=new TH1F("hMeanLVsRun","Average track length;; <L> (cm)",nRuns, 0., nRuns);//, 350, 350. , 700.);
-       hMeanLVsRun->SetDrawOption("E");
-       TH1F * hNegLRatioVsRun=new TH1F("hNegLRatioVsRun","Ratio of tracks with L<350 cm;; ratio of tracks with L<350 cm (%)",nRuns, 0., nRuns);//, 1000, 0. , 100.);
-       hNegLRatioVsRun->SetDrawOption("E");
-       TH1F * hMatchEffVsRun=new TH1F("hMatchEffVsRun","Matching efficiency (linear fit for p_{T}>1.0 GeV/c);;matching efficiency (pT>1.0 GeV/c)",nRuns, 0., nRuns);//, 100, 0. , 1.);
-       hMatchEffVsRun->SetDrawOption("E");
-       TH1F * hMatchEffVsRunNormToGoodCh=new TH1F("hMatchEffVsRunNormToGoodCh","Matching efficiency normalized to percentage of TOF good channels;;matching efficiency (pT>1.0 GeV/c)",nRuns, 0., nRuns);//, 100, 0. , 1.);
-       hMatchEffVsRunNormToGoodCh->SetDrawOption("E");
+  TH1F * hNegTimeRatioVsRun=new TH1F("hNegTimeRatioVsRun","Ratio of tracks with t^{TOF}<12.5 ns; ; ratio of tracks with t^{TOF}<12.5 ns (%)",nRuns, 0., nRuns);//, 100, 0. , 100.);
+  hNegTimeRatioVsRun->SetDrawOption("E");
+
+  TH1F * hOrphansRatioVsRun=new TH1F("hOrphansRatioVsRun","Ratio of orphans (hits with ToT=0); ; ratio of orphans (%)",nRuns, 0., nRuns);//, 1000, 0. , 100.);
+  hOrphansRatioVsRun->SetDrawOption("E");
+
+  TH1F * hMeanLVsRun=new TH1F("hMeanLVsRun","Average track length;; <L> (cm)",nRuns, 0., nRuns);//, 350, 350. , 700.);
+  hMeanLVsRun->SetDrawOption("E");
+  TH1F * hNegLRatioVsRun=new TH1F("hNegLRatioVsRun","Ratio of tracks with L<350 cm;; ratio of tracks with L<350 cm (%)",nRuns, 0., nRuns);//, 1000, 0. , 100.);
+  hNegLRatioVsRun->SetDrawOption("E");
+  TH1F * hMatchEffVsRun=new TH1F("hMatchEffVsRun","Matching efficiency (linear fit for p_{T}>1.0 GeV/c);;matching efficiency (pT>1.0 GeV/c)",nRuns, 0., nRuns);//, 100, 0. , 1.);
+  hMatchEffVsRun->SetDrawOption("E");
+  TH1F * hMatchEffVsRunNormToGoodCh=new TH1F("hMatchEffVsRunNormToGoodCh","Matching efficiency normalized to percentage of TOF good channels;;matching efficiency (pT>1.0 GeV/c)",nRuns, 0., nRuns);//, 100, 0. , 1.);
+  hMatchEffVsRunNormToGoodCh->SetDrawOption("E");
        
-       TH1F * hMatchEffVsRun1=new TH1F("hMatchEffVsRun1","Matching efficiency (value for p_{T}=1.0 GeV/c);;matching efficiency (pT=1.0 GeV/c)",nRuns, 0., nRuns);
-       hMatchEffVsRun1->SetDrawOption("E");
-       TH1F * hPeakT0AVsRun=new TH1F("hPeakT0AVsRun","Peak value of T0A (gaussian fit);;t0A (ps)",nRuns,0., nRuns);
-       TH1F * hPeakT0CVsRun=new TH1F("hPeakT0CVsRun","Peak value of T0C (gaussian fit);;t0AC (ps)",nRuns,0., nRuns);
-       TH1F * hPeakT0ACVsRun=new TH1F("hPeakT0ACVsRun","Peak value of T0AC (gaussian fit);;t0AC (ps)",nRuns,0., nRuns);
-       TH1F * hT0fillResVsRun=new TH1F("hT0fillResVsRun","t0_fill spread;;t0_spread (ps)",nRuns,0., nRuns);
+  TH1F * hMatchEffVsRun1=new TH1F("hMatchEffVsRun1","Matching efficiency (value for p_{T}=1.0 GeV/c);;matching efficiency (pT=1.0 GeV/c)",nRuns, 0., nRuns);
+  hMatchEffVsRun1->SetDrawOption("E");
+  TH1F * hPeakT0AVsRun=new TH1F("hPeakT0AVsRun","Peak value of T0A (gaussian fit);;t0A (ps)",nRuns,0., nRuns);
+  TH1F * hPeakT0CVsRun=new TH1F("hPeakT0CVsRun","Peak value of T0C (gaussian fit);;t0AC (ps)",nRuns,0., nRuns);
+  TH1F * hPeakT0ACVsRun=new TH1F("hPeakT0ACVsRun","Peak value of T0AC (gaussian fit);;t0AC (ps)",nRuns,0., nRuns);
+  TH1F * hT0fillResVsRun=new TH1F("hT0fillResVsRun","t0_fill spread;;t0_spread (ps)",nRuns,0., nRuns);
        
        
-       lista.Add(hAvMulti);
-       lista.Add(hAvDiffTimeVsRun);
-       lista.Add(hPeakDiffTimeVsRun);
-       lista.Add(hSpreadDiffTimeVsRun);
-       lista.Add(hAvTimeVsRun);
-       lista.Add(hPeakTimeVsRun);
-       lista.Add(hSpreadTimeVsRun);
-       lista.Add(hAvRawTimeVsRun);
-       lista.Add(hPeakRawTimeVsRun);
-       lista.Add(hSpreadRawTimeVsRun); 
-       lista.Add(hAvTotVsRun);
-       lista.Add(hPeakTotVsRun);
-       lista.Add(hSpreadTotVsRun);
-       lista.Add(hNegTimeRatioVsRun);
-       lista.Add(hOrphansRatioVsRun);
-       lista.Add(hMeanLVsRun);
-       lista.Add(hNegLRatioVsRun);
-       lista.Add(hMatchEffVsRun);
-       lista.Add(hMatchEffVsRunNormToGoodCh);
-       lista.Add(hPeakT0AVsRun);
-       lista.Add(hPeakT0CVsRun);
-       lista.Add(hPeakT0ACVsRun);
-       lista.Add(hT0fillResVsRun);
-       char runlabel[6];
+  lista.Add(hAvMulti);
+  lista.Add(hAvDiffTimeVsRun);
+  lista.Add(hPeakDiffTimeVsRun);
+  lista.Add(hSpreadDiffTimeVsRun);
+  lista.Add(hAvTimeVsRun);
+  lista.Add(hPeakTimeVsRun);
+  lista.Add(hSpreadTimeVsRun);
+  lista.Add(hAvRawTimeVsRun);
+  lista.Add(hPeakRawTimeVsRun);
+  lista.Add(hSpreadRawTimeVsRun); 
+  lista.Add(hAvTotVsRun);
+  lista.Add(hPeakTotVsRun);
+  lista.Add(hSpreadTotVsRun);
+  lista.Add(hNegTimeRatioVsRun);
+  lista.Add(hOrphansRatioVsRun);
+  lista.Add(hMeanLVsRun);
+  lista.Add(hNegLRatioVsRun);
+  lista.Add(hMatchEffVsRun);
+  lista.Add(hMatchEffVsRunNormToGoodCh);
+  lista.Add(hPeakT0AVsRun);
+  lista.Add(hPeakT0CVsRun);
+  lista.Add(hPeakT0ACVsRun);
+  lista.Add(hT0fillResVsRun);
+  char runlabel[6];
    
-       for (Int_t irun=0;irun<nRuns;irun++){
-               ttree->GetEntry(irun);
+  for (Int_t irun=0;irun<nRuns;irun++){
+    ttree->GetEntry(irun);
     
-               sprintf(runlabel,"%i",runNumber);
+    sprintf(runlabel,"%i",runNumber);
     
-               hAvMulti->SetBinContent(irun+1, avMulti);
-               hAvMulti->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hAvMulti->SetBinContent(irun+1, avMulti);
+    hAvMulti->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hAvDiffTimeVsRun->SetBinContent(irun+1, avDiffTime);
-               hAvDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hAvDiffTimeVsRun->SetBinContent(irun+1, avDiffTime);
+    hAvDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hPeakDiffTimeVsRun->SetBinContent(irun+1,peakDiffTime);
-               hPeakDiffTimeVsRun->SetBinError(irun+1,peakDiffTimeErr);
-               hPeakDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakDiffTimeVsRun->SetBinContent(irun+1,peakDiffTime);
+    hPeakDiffTimeVsRun->SetBinError(irun+1,peakDiffTimeErr);
+    hPeakDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hSpreadDiffTimeVsRun->SetBinContent(irun+1,spreadDiffTime);
-               hSpreadDiffTimeVsRun->SetBinError(irun+1,spreadDiffTimeErr);
-               hSpreadDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hSpreadDiffTimeVsRun->SetBinContent(irun+1,spreadDiffTime);
+    hSpreadDiffTimeVsRun->SetBinError(irun+1,spreadDiffTimeErr);
+    hSpreadDiffTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hAvTimeVsRun->SetBinContent(irun+1, avTime);
-               hAvTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hAvTimeVsRun->SetBinContent(irun+1, avTime);
+    hAvTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hPeakTimeVsRun->SetBinContent(irun+1,peakTime);
-               hPeakTimeVsRun->SetBinError(irun+1,peakTimeErr);
-               hPeakTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakTimeVsRun->SetBinContent(irun+1,peakTime);
+    hPeakTimeVsRun->SetBinError(irun+1,peakTimeErr);
+    hPeakTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hSpreadTimeVsRun->SetBinContent(irun+1,spreadTime);
-               hSpreadTimeVsRun->SetBinError(irun+1,spreadTimeErr);
-               hSpreadTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hSpreadTimeVsRun->SetBinContent(irun+1,spreadTime);
+    hSpreadTimeVsRun->SetBinError(irun+1,spreadTimeErr);
+    hSpreadTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hAvRawTimeVsRun->SetBinContent(irun+1, avRawTime);
-               hAvRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hAvRawTimeVsRun->SetBinContent(irun+1, avRawTime);
+    hAvRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hPeakRawTimeVsRun->SetBinContent(irun+1,peakRawTime);
-               hPeakRawTimeVsRun->SetBinError(irun+1,peakRawTimeErr);
-               hPeakRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakRawTimeVsRun->SetBinContent(irun+1,peakRawTime);
+    hPeakRawTimeVsRun->SetBinError(irun+1,peakRawTimeErr);
+    hPeakRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hSpreadRawTimeVsRun->SetBinContent(irun+1,spreadRawTime);
-               hSpreadRawTimeVsRun->SetBinError(irun+1,spreadRawTimeErr);
-               hSpreadRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hSpreadRawTimeVsRun->SetBinContent(irun+1,spreadRawTime);
+    hSpreadRawTimeVsRun->SetBinError(irun+1,spreadRawTimeErr);
+    hSpreadRawTimeVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hAvTotVsRun->SetBinContent(irun+1,avTot);
-               hAvTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hAvTotVsRun->SetBinContent(irun+1,avTot);
+    hAvTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hPeakTotVsRun->SetBinContent(irun+1,peakTot);
-               hPeakTotVsRun->SetBinError(irun+1,peakTotErr);
-               hPeakTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakTotVsRun->SetBinContent(irun+1,peakTot);
+    hPeakTotVsRun->SetBinError(irun+1,peakTotErr);
+    hPeakTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hSpreadTotVsRun->SetBinContent(irun+1,spreadTot);
-               hSpreadTotVsRun->SetBinError(irun+1,spreadTotErr);
-               hSpreadTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hSpreadTotVsRun->SetBinContent(irun+1,spreadTot);
+    hSpreadTotVsRun->SetBinError(irun+1,spreadTotErr);
+    hSpreadTotVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hNegTimeRatioVsRun->SetBinContent(irun+1,negTimeRatio);
-               hNegTimeRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hNegTimeRatioVsRun->SetBinContent(irun+1,negTimeRatio);
+    hNegTimeRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hOrphansRatioVsRun->SetBinContent(irun+1,orphansRatio);
-               hOrphansRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hOrphansRatioVsRun->SetBinContent(irun+1,orphansRatio);
+    hOrphansRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hMeanLVsRun->SetBinContent(irun+1,avL);
-               hMeanLVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hMeanLVsRun->SetBinContent(irun+1,avL);
+    hMeanLVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hNegLRatioVsRun->SetBinContent(irun+1,negLratio);
-               hNegLRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
-
-               hMatchEffVsRun->SetBinContent(irun+1,matchEffLinFit1Gev);
-               hMatchEffVsRun->SetBinError(irun+1,matchEffLinFit1GevErr);
-               hMatchEffVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
-               hMatchEffVsRun->SetLineColor(kRed);
-               hMatchEffVsRun->SetLineWidth(2);
-
-               if (goodChannelRatio>0)
-                 hMatchEffVsRunNormToGoodCh->SetBinContent(irun+1,matchEffLinFit1Gev/goodChannelRatio);
-               else 
-                 hMatchEffVsRunNormToGoodCh->SetBinContent(irun+1, 0.0);
-               hMatchEffVsRunNormToGoodCh->SetBinError(irun+1,matchEffLinFit1GevErr);
-               hMatchEffVsRunNormToGoodCh->GetXaxis()->SetBinLabel(irun+1,runlabel);
-               hMatchEffVsRunNormToGoodCh->SetLineColor(kBlue);
-               hMatchEffVsRunNormToGoodCh->SetLineWidth(2);
+    hNegLRatioVsRun->SetBinContent(irun+1,negLratio);
+    hNegLRatioVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+
+    hMatchEffVsRun->SetBinContent(irun+1,matchEffLinFit1Gev);
+    hMatchEffVsRun->SetBinError(irun+1,matchEffLinFit1GevErr);
+    hMatchEffVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hMatchEffVsRun->SetLineColor(kRed);
+    hMatchEffVsRun->SetLineWidth(2);
+
+    if (goodChannelRatio>0)
+      hMatchEffVsRunNormToGoodCh->SetBinContent(irun+1,matchEffLinFit1Gev/goodChannelRatio);
+    else 
+      hMatchEffVsRunNormToGoodCh->SetBinContent(irun+1, 0.0);
+    hMatchEffVsRunNormToGoodCh->SetBinError(irun+1,matchEffLinFit1GevErr);
+    hMatchEffVsRunNormToGoodCh->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hMatchEffVsRunNormToGoodCh->SetLineColor(kBlue);
+    hMatchEffVsRunNormToGoodCh->SetLineWidth(2);
      
-               hPeakT0AVsRun->SetBinContent(irun+1,peakT0A);
-               hPeakT0AVsRun->SetBinError(irun+1,spreadT0A);
-               hPeakT0AVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakT0AVsRun->SetBinContent(irun+1,peakT0A);
+    hPeakT0AVsRun->SetBinError(irun+1,spreadT0A);
+    hPeakT0AVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hPeakT0CVsRun->SetBinContent(irun+1,peakT0C);
-               hPeakT0CVsRun->SetBinError(irun+1,spreadT0C);
-               hPeakT0CVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakT0CVsRun->SetBinContent(irun+1,peakT0C);
+    hPeakT0CVsRun->SetBinError(irun+1,spreadT0C);
+    hPeakT0CVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
     
-               hPeakT0ACVsRun->SetBinContent(irun+1,peakT0AC);
-               hPeakT0ACVsRun->SetBinError(irun+1,spreadT0AC);
-               hPeakT0ACVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+    hPeakT0ACVsRun->SetBinContent(irun+1,peakT0AC);
+    hPeakT0ACVsRun->SetBinError(irun+1,spreadT0AC);
+    hPeakT0ACVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
 
-               hT0fillResVsRun->SetBinContent(irun+1,avT0fillRes);
-               hT0fillResVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
-       }
+    hT0fillResVsRun->SetBinContent(irun+1,avT0fillRes);
+    hT0fillResVsRun->GetXaxis()->SetBinLabel(irun+1,runlabel);
+  }
   
-       char  outfilename[200];
-       sprintf(outfilename, "trend_%s",trendFileName);
-       TFile * fout=new TFile(outfilename,"recreate");
-       fout->cd();
-       lista.Write();
-       fout->Close();
+  char  outfilename[200];
+  sprintf(outfilename, "trend_%s",trendFileName);
+  TFile * fout=new TFile(outfilename,"recreate");
+  fout->cd();
+  lista.Write();
+  fout->Close();
        
-       TString plotDir(Form("PlotsTrending"));
-       gSystem->Exec(Form("mkdir %s",plotDir.Data()));
+  TString plotDir(Form("PlotsTrending"));
+  gSystem->Exec(Form("mkdir %s",plotDir.Data()));
        
-       TCanvas* cPeakDiffTimeVsRun = new TCanvas("cPeakDiffTimeVsRun","cPeakDiffTimeVsRun", 50,50,750,550);
-       hPeakDiffTimeVsRun->GetYaxis()->SetRangeUser(-50.,50.);
-       hPeakDiffTimeVsRun->Draw();
-       cPeakDiffTimeVsRun->Print(Form("%s/cPeakDiffTimeVsRun.png",plotDir.Data()));
+  TCanvas* cPeakDiffTimeVsRun = new TCanvas("cPeakDiffTimeVsRun","cPeakDiffTimeVsRun", 50,50,750,550);
+  hPeakDiffTimeVsRun->GetYaxis()->SetRangeUser(-50.,50.);
+  hPeakDiffTimeVsRun->Draw();
+  cPeakDiffTimeVsRun->Print(Form("%s/cPeakDiffTimeVsRun.png",plotDir.Data()));
        
-       TCanvas* cSpreadDiffTimeVsRun = new TCanvas("cSpreadDiffTimeVsRun","cSpreadDiffTimeVsRun", 50,50,750,550);
-       hSpreadDiffTimeVsRun->GetYaxis()->SetRangeUser(200.,400.);
-       hSpreadDiffTimeVsRun->Draw();
-       cSpreadDiffTimeVsRun->Print(Form("%s/cSpreadDiffTimeVsRun.png",plotDir.Data()));
-
-       TCanvas* cMatchEffVsRun = new TCanvas("cMatchEffVsRun","cMatchEffVsRun",50, 50, 750,550);
-       hMatchEffVsRun->GetYaxis()->SetRangeUser(0.,1.);
-       hMatchEffVsRun->Draw();
-       cMatchEffVsRun->Print(Form("%s/cMatchEffVsRun.png",plotDir.Data()));
-
-       TCanvas* cMatchEffNormToGoodCh = new TCanvas("cMatchEffNormToGoodCh","cMatchEffNormToGoodCh",50, 50,750,550);
-       hMatchEffVsRunNormToGoodCh->GetYaxis()->SetRangeUser(0.,1.);
-       hMatchEffVsRunNormToGoodCh->Draw();
-       cMatchEffNormToGoodCh->Print(Form("%s/cMatchEffNormToGoodCh.png",plotDir.Data()));
+  TCanvas* cSpreadDiffTimeVsRun = new TCanvas("cSpreadDiffTimeVsRun","cSpreadDiffTimeVsRun", 50,50,750,550);
+  hSpreadDiffTimeVsRun->GetYaxis()->SetRangeUser(200.,400.);
+  hSpreadDiffTimeVsRun->Draw();
+  cSpreadDiffTimeVsRun->Print(Form("%s/cSpreadDiffTimeVsRun.png",plotDir.Data()));
+
+  TCanvas* cMatchEffVsRun = new TCanvas("cMatchEffVsRun","cMatchEffVsRun",50, 50, 750,550);
+  hMatchEffVsRun->GetYaxis()->SetRangeUser(0.,1.);
+  hMatchEffVsRun->Draw();
+  cMatchEffVsRun->Print(Form("%s/cMatchEffVsRun.png",plotDir.Data()));
+
+  TCanvas* cMatchEffNormToGoodCh = new TCanvas("cMatchEffNormToGoodCh","cMatchEffNormToGoodCh",50, 50,750,550);
+  hMatchEffVsRunNormToGoodCh->GetYaxis()->SetRangeUser(0.,1.);
+  hMatchEffVsRunNormToGoodCh->Draw();
+  cMatchEffNormToGoodCh->Print(Form("%s/cMatchEffNormToGoodCh.png",plotDir.Data()));
        
-       TCanvas* cPeakT0AVsRun = new TCanvas("cPeakT0AVsRun","cPeakT0AVsRun", 50,50,750,550);
-       hPeakT0AVsRun->Draw();
-       cPeakT0AVsRun->Print(Form("%s/cPeakT0AVsRun.png",plotDir.Data()));
-
-       TCanvas* cPeakT0CVsRun = new TCanvas("cPeakT0CVsRun","cPeakT0CVsRun", 50,50,750,550);
-       hPeakT0CVsRun->Draw();
-       cPeakT0CVsRun->Print(Form("%s/cPeakT0CVsRun.png",plotDir.Data()));
-
-       TCanvas* cPeakT0ACVsRun = new TCanvas("cPeakT0ACVsRun","cPeakT0ACVsRun", 50,50,750,550);
-       hPeakT0ACVsRun->Draw();
-       cPeakT0ACVsRun->Print(Form("%s/cPeakT0ACVsRun.png",plotDir.Data()));
-
-       TCanvas* cT0fillResVsRun = new TCanvas("cT0fillResVsRun","cT0fillResVsRun", 50,50,750,550);
-       hT0fillResVsRun->Draw();
-       cT0fillResVsRun->Print(Form("%s/cT0fillResVsRun.png",plotDir.Data()));
-
-       if (displayAll) {
-         TCanvas* cAvDiffTimeVsRun = new TCanvas("cAvDiffTimeVsRun","cAvDiffTimeVsRun",50,50,750,550);
-         gPad->SetGridx();
-         gPad->SetGridy();
-         hAvDiffTimeVsRun->Draw();
-         cAvDiffTimeVsRun->Print(Form("%s/cAvDiffTimeVsRun.png",plotDir.Data()));
+  TCanvas* cPeakT0AVsRun = new TCanvas("cPeakT0AVsRun","cPeakT0AVsRun", 50,50,750,550);
+  hPeakT0AVsRun->Draw();
+  cPeakT0AVsRun->Print(Form("%s/cPeakT0AVsRun.png",plotDir.Data()));
+
+  TCanvas* cPeakT0CVsRun = new TCanvas("cPeakT0CVsRun","cPeakT0CVsRun", 50,50,750,550);
+  hPeakT0CVsRun->Draw();
+  cPeakT0CVsRun->Print(Form("%s/cPeakT0CVsRun.png",plotDir.Data()));
+
+  TCanvas* cPeakT0ACVsRun = new TCanvas("cPeakT0ACVsRun","cPeakT0ACVsRun", 50,50,750,550);
+  hPeakT0ACVsRun->Draw();
+  cPeakT0ACVsRun->Print(Form("%s/cPeakT0ACVsRun.png",plotDir.Data()));
+
+  TCanvas* cT0fillResVsRun = new TCanvas("cT0fillResVsRun","cT0fillResVsRun", 50,50,750,550);
+  hT0fillResVsRun->Draw();
+  cT0fillResVsRun->Print(Form("%s/cT0fillResVsRun.png",plotDir.Data()));
+
+  if (displayAll) {
+    TCanvas* cAvDiffTimeVsRun = new TCanvas("cAvDiffTimeVsRun","cAvDiffTimeVsRun",50,50,750,550);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hAvDiffTimeVsRun->Draw();
+    cAvDiffTimeVsRun->Print(Form("%s/cAvDiffTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cAvTimeVsRun = new TCanvas("cAvTimeVsRun","cAvTimeVsRun", 50,50,750,550);
-         hAvTimeVsRun->Draw();
-         cAvTimeVsRun->Print(Form("%s/cAvTimeVsRun.png",plotDir.Data()));
+    TCanvas* cAvTimeVsRun = new TCanvas("cAvTimeVsRun","cAvTimeVsRun", 50,50,750,550);
+    hAvTimeVsRun->Draw();
+    cAvTimeVsRun->Print(Form("%s/cAvTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cPeakTimeVsRun = new TCanvas("cPeakTimeVsRun","cPeakTimeVsRun", 50,50,750,550);
-         hPeakTimeVsRun->Draw();
-         cPeakTimeVsRun->Print(Form("%s/cPeakTimeVsRun.png",plotDir.Data()));
+    TCanvas* cPeakTimeVsRun = new TCanvas("cPeakTimeVsRun","cPeakTimeVsRun", 50,50,750,550);
+    hPeakTimeVsRun->Draw();
+    cPeakTimeVsRun->Print(Form("%s/cPeakTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cSpreadTimeVsRun = new TCanvas("cSpreadTimeVsRun","cSpreadTimeVsRun", 50,50,750,550);
-         hSpreadTimeVsRun->Draw();
-         cSpreadTimeVsRun->Print(Form("%s/cSpreadTimeVsRun.png",plotDir.Data()));
+    TCanvas* cSpreadTimeVsRun = new TCanvas("cSpreadTimeVsRun","cSpreadTimeVsRun", 50,50,750,550);
+    hSpreadTimeVsRun->Draw();
+    cSpreadTimeVsRun->Print(Form("%s/cSpreadTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cAvRawTimeVsRun = new TCanvas("cAvRawTimeVsRun","cAvRawTimeVsRun", 50,50,750,550);
-         hAvRawTimeVsRun->Draw();
-         cAvRawTimeVsRun->Print(Form("%s/cAvRawTimeVsRun.png",plotDir.Data()));
+    TCanvas* cAvRawTimeVsRun = new TCanvas("cAvRawTimeVsRun","cAvRawTimeVsRun", 50,50,750,550);
+    hAvRawTimeVsRun->Draw();
+    cAvRawTimeVsRun->Print(Form("%s/cAvRawTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cPeakRawTimeVsRun = new TCanvas("cPeakRawTimeVsRun","cPeakRawTimeVsRun", 50,50,750,550);
-         hPeakRawTimeVsRun->Draw();
-         cPeakRawTimeVsRun->Print(Form("%s/cPeakRawTimeVsRun.png",plotDir.Data()));
+    TCanvas* cPeakRawTimeVsRun = new TCanvas("cPeakRawTimeVsRun","cPeakRawTimeVsRun", 50,50,750,550);
+    hPeakRawTimeVsRun->Draw();
+    cPeakRawTimeVsRun->Print(Form("%s/cPeakRawTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cSpreadRawTimeVsRun = new TCanvas("cSpreadRawTimeVsRun","cSpreadRawTimeVsRun", 50,50,750,550);
-         hSpreadRawTimeVsRun->Draw();
-         cSpreadRawTimeVsRun->Print(Form("%s/cSpreadRawTimeVsRun.png",plotDir.Data()));
+    TCanvas* cSpreadRawTimeVsRun = new TCanvas("cSpreadRawTimeVsRun","cSpreadRawTimeVsRun", 50,50,750,550);
+    hSpreadRawTimeVsRun->Draw();
+    cSpreadRawTimeVsRun->Print(Form("%s/cSpreadRawTimeVsRun.png",plotDir.Data()));
          
-         TCanvas* cAvTotVsRun = new TCanvas("cAvTotVsRun","cAvTotVsRun", 50,50,750,550);
-         hAvTotVsRun->Draw();
-         cAvTotVsRun->Print(Form("%s/cAvTotVsRun.png",plotDir.Data()));
+    TCanvas* cAvTotVsRun = new TCanvas("cAvTotVsRun","cAvTotVsRun", 50,50,750,550);
+    hAvTotVsRun->Draw();
+    cAvTotVsRun->Print(Form("%s/cAvTotVsRun.png",plotDir.Data()));
          
-         TCanvas* cPeakTotVsRun = new TCanvas("cPeakTotVsRun","cPeakTotVsRun", 50,50,750,550);
-         hPeakTotVsRun->Draw();
-         cPeakTotVsRun->Print(Form("%s/cPeakTotVsRun.png",plotDir.Data()));
+    TCanvas* cPeakTotVsRun = new TCanvas("cPeakTotVsRun","cPeakTotVsRun", 50,50,750,550);
+    hPeakTotVsRun->Draw();
+    cPeakTotVsRun->Print(Form("%s/cPeakTotVsRun.png",plotDir.Data()));
          
-         TCanvas* cSpreadTotVsRun = new TCanvas("cSpreadTotVsRun","cSpreadTotVsRun", 50,50,750,550);
-         hSpreadTotVsRun->Draw();
-         cSpreadTotVsRun->Print(Form("%s/cSpreadTotVsRun.png",plotDir.Data()));
+    TCanvas* cSpreadTotVsRun = new TCanvas("cSpreadTotVsRun","cSpreadTotVsRun", 50,50,750,550);
+    hSpreadTotVsRun->Draw();
+    cSpreadTotVsRun->Print(Form("%s/cSpreadTotVsRun.png",plotDir.Data()));
          
-         TCanvas* cNegTimeRatioVsRun = new TCanvas("cNegTimeRatioVsRun","cNegTimeRatioVsRun", 50,50,750,550);
-         hNegTimeRatioVsRun->Draw();
-         cNegTimeRatioVsRun->Print(Form("%s/cNegTimeRatioVsRun.png",plotDir.Data()));
+    TCanvas* cNegTimeRatioVsRun = new TCanvas("cNegTimeRatioVsRun","cNegTimeRatioVsRun", 50,50,750,550);
+    hNegTimeRatioVsRun->Draw();
+    cNegTimeRatioVsRun->Print(Form("%s/cNegTimeRatioVsRun.png",plotDir.Data()));
          
-         TCanvas* cOrphansRatioVsRun = new TCanvas("cOrphansRatioVsRun","cOrphansRatioVsRun", 50,50,750,550);
-         hOrphansRatioVsRun->Draw();
-         cOrphansRatioVsRun->Print(Form("%s/cOrphansRatioVsRun.png",plotDir.Data()));
+    TCanvas* cOrphansRatioVsRun = new TCanvas("cOrphansRatioVsRun","cOrphansRatioVsRun", 50,50,750,550);
+    hOrphansRatioVsRun->Draw();
+    cOrphansRatioVsRun->Print(Form("%s/cOrphansRatioVsRun.png",plotDir.Data()));
          
-         TCanvas* cMeanLVsRun = new TCanvas("cMeanLVsRun","cMeanLVsRun", 50,50,750,550);
-         hMeanLVsRun->Draw();
-         cMeanLVsRun->Print(Form("%s/cMeanLVsRun.png",plotDir.Data()));
+    TCanvas* cMeanLVsRun = new TCanvas("cMeanLVsRun","cMeanLVsRun", 50,50,750,550);
+    hMeanLVsRun->Draw();
+    cMeanLVsRun->Print(Form("%s/cMeanLVsRun.png",plotDir.Data()));
          
-         TCanvas* cNegLRatioVsRun = new TCanvas("cNegLRatioVsRun","cNegLRatioVsRun", 50,50,750,550);
-         hNegLRatioVsRun->Draw();
-         cNegLRatioVsRun->Print(Form("%s/cNegLRatioVsRun.png",plotDir.Data()));
-       }
+    TCanvas* cNegLRatioVsRun = new TCanvas("cNegLRatioVsRun","cNegLRatioVsRun", 50,50,750,550);
+    hNegLRatioVsRun->Draw();
+    cNegLRatioVsRun->Print(Form("%s/cNegLRatioVsRun.png",plotDir.Data()));
+  }
        
-       return 0;
+  return 0;
 }
 
 //-------------------------------------------------------------------------
 Int_t MakePostQAtree(Int_t runNumber, Bool_t isMC=kFALSE, char * postFileName="postQA.0.root",char * treePostFileName="treePostQA.0.root", Bool_t includeStartTime=kTRUE){  
   
-       TFile *postfile=TFile::Open(postFileName);
-       if (!postfile) {
-         printf("Post-analysis output not found - cannot perform trending analysis. Exiting.");
-         return -1;
-       }
-       Printf("==============  Getting post-analysis info for run %i ===============\n",runNumber);
-       TFile * trendFile=new TFile(treePostFileName,"recreate");
-
-       Double_t avTime=-9999., peakTime=-9999., spreadTime=-9999., peakTimeErr=-9999., spreadTimeErr=-9999., negTimeRatio=-9999.,
-               avRawTime=-9999., peakRawTime=-9999., spreadRawTime=-9999., peakRawTimeErr=-9999., spreadRawTimeErr=-9999., 
-               avTot=-9999., peakTot=-9999.,spreadTot=-9999.,  peakTotErr=-9999.,spreadTotErr=-9999.,
-               orphansRatio=-9999., avL=-9999., negLratio=-9999.,
-               effPt1=-9999., effPt2=-9999., matchEffLinFit1Gev=-9999.,matchEffLinFit1GevErr=-9999.;
+  TFile *postfile=TFile::Open(postFileName);
+  if (!postfile) {
+    printf("Post-analysis output not found - cannot perform trending analysis. Exiting.");
+    return -1;
+  }
+  Printf("==============  Getting post-analysis info for run %i ===============\n",runNumber);
+  TFile * trendFile=new TFile(treePostFileName,"recreate");
+
+  Double_t avTime=-9999., peakTime=-9999., spreadTime=-9999., peakTimeErr=-9999., spreadTimeErr=-9999., negTimeRatio=-9999.,
+    avRawTime=-9999., peakRawTime=-9999., spreadRawTime=-9999., peakRawTimeErr=-9999., spreadRawTimeErr=-9999., 
+    avTot=-9999., peakTot=-9999.,spreadTot=-9999.,  peakTotErr=-9999.,spreadTotErr=-9999.,
+    orphansRatio=-9999., avL=-9999., negLratio=-9999.,
+    effPt1=-9999., effPt2=-9999., matchEffLinFit1Gev=-9999.,matchEffLinFit1GevErr=-9999.;
   
-       Double_t avPiDiffTime=-9999.,peakPiDiffTime=-9999., spreadPiDiffTime=-9999.,peakPiDiffTimeErr=-9999., spreadPiDiffTimeErr=-9999.;
+  Double_t avPiDiffTime=-9999.,peakPiDiffTime=-9999., spreadPiDiffTime=-9999.,peakPiDiffTimeErr=-9999., spreadPiDiffTimeErr=-9999.;
   
-       Double_t avT0A=-9999.,peakT0A=-9999., spreadT0A=-9999.,peakT0AErr=-9999., spreadT0AErr=-9999.;
-       Double_t avT0C=-9999.,peakT0C=-9999., spreadT0C=-9999.,peakT0CErr=-9999., spreadT0CErr=-9999.;
-       Double_t avT0AC=-9999.,peakT0AC=-9999., spreadT0AC=-9999.,peakT0ACErr=-9999., spreadT0ACErr=-9999.;
-       Double_t avT0res=-9999.,peakT0res=-9999., spreadT0res=-9999.,peakT0resErr=-9999., spreadT0resErr=-9999.;
-       Double_t avT0fillRes=-9999.;
-
-       Float_t avMulti=0;
-       Float_t fractionEventsWHits=-9999.;
-       /*number of good (HW ok && efficient && !noisy) TOF channels from OCDB*/
-       Double_t goodChannelRatio=0.0;
-
-       TTree * ttree=new TTree("trendTree","tree of trending variables");
-       ttree->Branch("run",&runNumber,"run/I");
-       ttree->Branch("avMulti",&avMulti,"avMulti/F");
-       ttree->Branch("fractionEventsWHits",&fractionEventsWHits,"fractionEventsWHits/F");
-       ttree->Branch("goodChannelsRatio",&goodChannelRatio,"goodChannelRatio/D");
-       ttree->Branch("avTime",&avTime,"avTime/D"); //mean time
-       ttree->Branch("peakTime",&peakTime,"peakTime/D"); //main peak time after fit
-       ttree->Branch("spreadTime",&spreadTime,"spreadTime/D"); //spread of main peak of time after fit
-       ttree->Branch("peakTimeErr",&peakTimeErr,"peakTimeErr/D"); //main peak time after fit error
-       ttree->Branch("spreadTimeErr",&spreadTimeErr,"spreadTimeErr/D"); //spread of main peak of time after fit error
-       ttree->Branch("negTimeRatio",&negTimeRatio,"negTimeRatio/D"); //negative time ratio
+  Double_t avT0A=-9999.,peakT0A=-9999., spreadT0A=-9999.,peakT0AErr=-9999., spreadT0AErr=-9999.;
+  Double_t avT0C=-9999.,peakT0C=-9999., spreadT0C=-9999.,peakT0CErr=-9999., spreadT0CErr=-9999.;
+  Double_t avT0AC=-9999.,peakT0AC=-9999., spreadT0AC=-9999.,peakT0ACErr=-9999., spreadT0ACErr=-9999.;
+  Double_t avT0res=-9999.,peakT0res=-9999., spreadT0res=-9999.,peakT0resErr=-9999., spreadT0resErr=-9999.;
+  Double_t avT0fillRes=-9999.;
+
+  Float_t avMulti=0;
+  Float_t fractionEventsWHits=-9999.;
+  /*number of good (HW ok && efficient && !noisy) TOF channels from OCDB*/
+  Double_t goodChannelRatio=0.0;
+
+  TTree * ttree=new TTree("trendTree","tree of trending variables");
+  ttree->Branch("run",&runNumber,"run/I");
+  ttree->Branch("avMulti",&avMulti,"avMulti/F");
+  ttree->Branch("fractionEventsWHits",&fractionEventsWHits,"fractionEventsWHits/F");
+  ttree->Branch("goodChannelsRatio",&goodChannelRatio,"goodChannelRatio/D");
+  ttree->Branch("avTime",&avTime,"avTime/D"); //mean time
+  ttree->Branch("peakTime",&peakTime,"peakTime/D"); //main peak time after fit
+  ttree->Branch("spreadTime",&spreadTime,"spreadTime/D"); //spread of main peak of time after fit
+  ttree->Branch("peakTimeErr",&peakTimeErr,"peakTimeErr/D"); //main peak time after fit error
+  ttree->Branch("spreadTimeErr",&spreadTimeErr,"spreadTimeErr/D"); //spread of main peak of time after fit error
+  ttree->Branch("negTimeRatio",&negTimeRatio,"negTimeRatio/D"); //negative time ratio
   
-       ttree->Branch("avRawTime",&avRawTime,"avRawTime/D"); //mean raw time
-       ttree->Branch("peakRawTime",&peakRawTime,"peakRawTime/D"); //mean peak of RAW TIME after fit
-       ttree->Branch("spreadRawTime",&spreadRawTime,"spreadRawTime/D"); //spread of main peak of raw time after fit
-       ttree->Branch("peakRawTimeErr",&peakRawTimeErr,"peakRawTimeErr/D"); //main peak raw  time after fit error
-       ttree->Branch("spreadRawTimeErr",&spreadRawTimeErr,"spreadRawTimeErr/D"); //spread of  raw main peak of time after fit error
+  ttree->Branch("avRawTime",&avRawTime,"avRawTime/D"); //mean raw time
+  ttree->Branch("peakRawTime",&peakRawTime,"peakRawTime/D"); //mean peak of RAW TIME after fit
+  ttree->Branch("spreadRawTime",&spreadRawTime,"spreadRawTime/D"); //spread of main peak of raw time after fit
+  ttree->Branch("peakRawTimeErr",&peakRawTimeErr,"peakRawTimeErr/D"); //main peak raw  time after fit error
+  ttree->Branch("spreadRawTimeErr",&spreadRawTimeErr,"spreadRawTimeErr/D"); //spread of  raw main peak of time after fit error
   
-       ttree->Branch("avTot",&avTot,"avTot/D"); //main peak tot
-       ttree->Branch("peakTot",&peakTot,"peakTot/D"); // main peak of tot after fit
-       ttree->Branch("spreadTot",&spreadTot,"spreadTot/D"); //spread of main peak of tot after fit
-       ttree->Branch("peakTotErr",&peakTotErr,"peakTotErr/D"); // main peak of tot after fit
-       ttree->Branch("spreadTotErr",&spreadTotErr,"spreadTotErr/D"); //spread of main peak of tot after fit
+  ttree->Branch("avTot",&avTot,"avTot/D"); //main peak tot
+  ttree->Branch("peakTot",&peakTot,"peakTot/D"); // main peak of tot after fit
+  ttree->Branch("spreadTot",&spreadTot,"spreadTot/D"); //spread of main peak of tot after fit
+  ttree->Branch("peakTotErr",&peakTotErr,"peakTotErr/D"); // main peak of tot after fit
+  ttree->Branch("spreadTotErr",&spreadTotErr,"spreadTotErr/D"); //spread of main peak of tot after fit
   
-       ttree->Branch("orphansRatio",&orphansRatio,"orphansRatio/D"); //orphans ratio
-
-       ttree->Branch("avL",&avL,"avL/D"); //mean track length
-       ttree->Branch("negLratio",&negLratio,"negLratio/D");//ratio of tracks with track length <350 cm
-       ttree->Branch("effPt1",&effPt1,"effPt1/D");//matching eff at 1 GeV/c
-       ttree->Branch("effPt2",&effPt2,"effPt2/D"); //matching eff at 2 GeV/c
-       ttree->Branch("matchEffLinFit1Gev",&matchEffLinFit1Gev,"matchEffLinFit1Gev/D");//matching eff fit param 
-       ttree->Branch("matchEffLinFit1GevErr",&matchEffLinFit1GevErr,"matchEffLinFit1GevErr/D");////matching eff fit param error
+  ttree->Branch("orphansRatio",&orphansRatio,"orphansRatio/D"); //orphans ratio
+
+  ttree->Branch("avL",&avL,"avL/D"); //mean track length
+  ttree->Branch("negLratio",&negLratio,"negLratio/D");//ratio of tracks with track length <350 cm
+  ttree->Branch("effPt1",&effPt1,"effPt1/D");//matching eff at 1 GeV/c
+  ttree->Branch("effPt2",&effPt2,"effPt2/D"); //matching eff at 2 GeV/c
+  ttree->Branch("matchEffLinFit1Gev",&matchEffLinFit1Gev,"matchEffLinFit1Gev/D");//matching eff fit param 
+  ttree->Branch("matchEffLinFit1GevErr",&matchEffLinFit1GevErr,"matchEffLinFit1GevErr/D");////matching eff fit param error
   
-       ttree->Branch("avPiDiffTime",&avPiDiffTime,"avPiDiffTime/D"); //mean t-texp
-       ttree->Branch("peakPiDiffTime",&peakPiDiffTime,"peakPiDiffTime/D"); //main peak t-texp after fit
-       ttree->Branch("spreadPiDiffTime",&spreadPiDiffTime,"spreadPiDiffTime/D"); //spread of main peak t-texp after fit
-       ttree->Branch("peakPiDiffTimeErr",&peakPiDiffTimeErr,"peakPiDiffTimeErr/D"); //main peak t-texp after fit error
-       ttree->Branch("spreadPiDiffTimeErr",&spreadPiDiffTimeErr,"spreadPiDiffTimeErr/D"); //spread of main peak of t-texp after fit error
-
-       ttree->Branch("avT0A",&avT0A,"avT0A/D"); //main peak t0A
-       ttree->Branch("peakT0A",&peakT0A,"peakT0A/D"); // main peak of t0A after fit
-       ttree->Branch("spreadT0A",&spreadT0A,"spreadTot/D"); //spread of main peak of t0A after fit
-       ttree->Branch("peakT0AErr",&peakT0AErr,"peakT0AErr/D"); // main peak of t0A after fit
-       ttree->Branch("spreadT0AErr",&spreadT0AErr,"spreadT0AErr/D"); //spread of main peak of t0A after fit
-
-       ttree->Branch("avT0C",&avT0C,"avT0C/D"); //main peak t0C
-       ttree->Branch("peakT0C",&peakT0C,"peakT0C/D"); // main peak of t0C after fit
-       ttree->Branch("spreadT0C",&spreadT0C,"spreadT0C/D"); //spread of main peak of t0C after fit
-       ttree->Branch("peakT0CErr",&peakT0CErr,"peakT0CErr/D"); // main peak of t0C after fit
-       ttree->Branch("spreadT0CErr",&spreadT0CErr,"spreadT0CErr/D"); //spread of main peak of t0C after fit
+  ttree->Branch("avPiDiffTime",&avPiDiffTime,"avPiDiffTime/D"); //mean t-texp
+  ttree->Branch("peakPiDiffTime",&peakPiDiffTime,"peakPiDiffTime/D"); //main peak t-texp after fit
+  ttree->Branch("spreadPiDiffTime",&spreadPiDiffTime,"spreadPiDiffTime/D"); //spread of main peak t-texp after fit
+  ttree->Branch("peakPiDiffTimeErr",&peakPiDiffTimeErr,"peakPiDiffTimeErr/D"); //main peak t-texp after fit error
+  ttree->Branch("spreadPiDiffTimeErr",&spreadPiDiffTimeErr,"spreadPiDiffTimeErr/D"); //spread of main peak of t-texp after fit error
+
+  ttree->Branch("avT0A",&avT0A,"avT0A/D"); //main peak t0A
+  ttree->Branch("peakT0A",&peakT0A,"peakT0A/D"); // main peak of t0A after fit
+  ttree->Branch("spreadT0A",&spreadT0A,"spreadTot/D"); //spread of main peak of t0A after fit
+  ttree->Branch("peakT0AErr",&peakT0AErr,"peakT0AErr/D"); // main peak of t0A after fit
+  ttree->Branch("spreadT0AErr",&spreadT0AErr,"spreadT0AErr/D"); //spread of main peak of t0A after fit
+
+  ttree->Branch("avT0C",&avT0C,"avT0C/D"); //main peak t0C
+  ttree->Branch("peakT0C",&peakT0C,"peakT0C/D"); // main peak of t0C after fit
+  ttree->Branch("spreadT0C",&spreadT0C,"spreadT0C/D"); //spread of main peak of t0C after fit
+  ttree->Branch("peakT0CErr",&peakT0CErr,"peakT0CErr/D"); // main peak of t0C after fit
+  ttree->Branch("spreadT0CErr",&spreadT0CErr,"spreadT0CErr/D"); //spread of main peak of t0C after fit
  
-       ttree->Branch("avT0AC",&avT0AC,"avT0AC/D"); //main peak t0AC
-       ttree->Branch("peakT0AC",&peakT0AC,"peakT0AC/D"); // main peak of t0AC after fit
-       ttree->Branch("spreadT0AC",&spreadT0AC,"spreadT0AC/D"); //spread of main peak of t0AC after fit
-       ttree->Branch("peakT0ACErr",&peakT0ACErr,"peakT0ACErr/D"); // main peak of t0AC after fit
-       ttree->Branch("spreadT0ACErr",&spreadT0ACErr,"spreadT0ACErr/D"); //spread of main peak of t0AC after fit
+  ttree->Branch("avT0AC",&avT0AC,"avT0AC/D"); //main peak t0AC
+  ttree->Branch("peakT0AC",&peakT0AC,"peakT0AC/D"); // main peak of t0AC after fit
+  ttree->Branch("spreadT0AC",&spreadT0AC,"spreadT0AC/D"); //spread of main peak of t0AC after fit
+  ttree->Branch("peakT0ACErr",&peakT0ACErr,"peakT0ACErr/D"); // main peak of t0AC after fit
+  ttree->Branch("spreadT0ACErr",&spreadT0ACErr,"spreadT0ACErr/D"); //spread of main peak of t0AC after fit
  
-       ttree->Branch("avT0res",&avT0res,"avT0res/D"); //main peak t0AC
-       ttree->Branch("peakT0res",&peakT0res,"peakT0res/D"); // main peak of t0AC after fit
-       ttree->Branch("spreadT0res",&spreadT0res,"spreadT0res/D"); //spread of main peak of t0AC after fit
-       ttree->Branch("peakT0resErr",&peakT0resErr,"peakT0resErr/D"); // main peak of t0AC after fit
-       ttree->Branch("spreadT0resErr",&spreadT0resErr,"spreadT0resErr/D"); //spread of main peak of t0AC after fit
-       ttree->Branch("avT0fillRes",&avT0fillRes,"avT0fillRes/D"); //t0 fill res
-
-       //postfile->ls();
-       //save quantities for trending
-       goodChannelRatio=(Double_t)GetGoodTOFChannelsRatio(runNumber);
+  ttree->Branch("avT0res",&avT0res,"avT0res/D"); //main peak t0AC
+  ttree->Branch("peakT0res",&peakT0res,"peakT0res/D"); // main peak of t0AC after fit
+  ttree->Branch("spreadT0res",&spreadT0res,"spreadT0res/D"); //spread of main peak of t0AC after fit
+  ttree->Branch("peakT0resErr",&peakT0resErr,"peakT0resErr/D"); // main peak of t0AC after fit
+  ttree->Branch("spreadT0resErr",&spreadT0resErr,"spreadT0resErr/D"); //spread of main peak of t0AC after fit
+  ttree->Branch("avT0fillRes",&avT0fillRes,"avT0fillRes/D"); //t0 fill res
+
+  //postfile->ls();
+  //save quantities for trending
+  goodChannelRatio=(Double_t)GetGoodTOFChannelsRatio(runNumber);
        
-       //--------------------------------- Multiplicity ----------------------------------//
-       TH1F*hMulti=(TH1F*)postfile->Get("hTOFmatchedPerEvt");
-       if ((hMulti)&&(hMulti->GetEntries()>0)) {
-         avMulti=hMulti->GetMean();
-       }
+  //--------------------------------- Multiplicity ----------------------------------//
+  TH1F*hMulti=(TH1F*)postfile->Get("hTOFmatchedPerEvt");
+  if ((hMulti)&&(hMulti->GetEntries()>0)) {
+    avMulti=hMulti->GetMean();
+  }
        
-       //--------------------------------- T0F signal ----------------------------------//
+  //--------------------------------- T0F signal ----------------------------------//
        
-       TH1F*hTime=(TH1F*)postfile->Get("hTOFmatchedESDtime");
-       if ((hTime)&&(hTime->GetEntries()>0)) {
-         avTime=hTime->GetMean();
-         hTime->Fit("landau","","",0.,50.);
-         peakTime=(hTime->GetFunction("landau"))->GetParameter(1);
-         spreadTime=(hTime->GetFunction("landau"))->GetParameter(2);
-         peakTimeErr=(hTime->GetFunction("landau"))->GetParError(1);
-         spreadTimeErr=(hTime->GetFunction("landau"))->GetParError(2);
+  TH1F*hTime=(TH1F*)postfile->Get("hTOFmatchedESDtime");
+  if ((hTime)&&(hTime->GetEntries()>0)) {
+    avTime=hTime->GetMean();
+    hTime->Fit("landau","","",0.,50.);
+    peakTime=(hTime->GetFunction("landau"))->GetParameter(1);
+    spreadTime=(hTime->GetFunction("landau"))->GetParameter(2);
+    peakTimeErr=(hTime->GetFunction("landau"))->GetParError(1);
+    spreadTimeErr=(hTime->GetFunction("landau"))->GetParError(2);
          
-         negTimeRatio=((Double_t)hTime->Integral(1,3)*100.)/((Double_t)hTime->Integral());
-         printf("Main peak time (landau): mean = %f +- %f\n",peakTime,peakTimeErr );
-         printf("Main peak time (landau): spread = %f +- %f\n",spreadTime,spreadTimeErr );
-         printf("Ratio of tracks with time<12.5 ns / total = %f\n",negTimeRatio );
+    negTimeRatio=((Double_t)hTime->Integral(1,3)*100.)/((Double_t)hTime->Integral());
+    printf("Main peak time (landau): mean = %f +- %f\n",peakTime,peakTimeErr );
+    printf("Main peak time (landau): spread = %f +- %f\n",spreadTime,spreadTimeErr );
+    printf("Ratio of tracks with time<12.5 ns / total = %f\n",negTimeRatio );
          
-         //add integral of main peak over total
-       }
-       printf("---------------------------------------------------------------- \n");
-       TH1F * hRawTime = (TH1F*)postfile->Get("hTOFmatchedESDrawTime");
-       if ((hRawTime)&&(hRawTime->GetEntries()>0)){
-         avRawTime=hRawTime->GetMean();
-         if (!isMC){
-           hRawTime->Fit("landau","","",200.,250.);
-           peakRawTime=(hRawTime->GetFunction("landau"))->GetParameter(1);
-           spreadRawTime=(hRawTime->GetFunction("landau"))->GetParameter(2);
-           peakRawTimeErr=(hRawTime->GetFunction("landau"))->GetParError(1);
-           spreadRawTimeErr=(hRawTime->GetFunction("landau"))->GetParError(2);
-           printf("Main peak raw time (landau): mean = %f +- %f\n",peakTime,peakTimeErr );
-           printf("Main peak raw time (landau): spread = %f +- %f\n",spreadRawTime,spreadRawTimeErr );
-         } else {
-          printf("Reminder: Raw time not available in MC simulated data.");
-          }
-       }
+    //add integral of main peak over total
+  }
+  printf("---------------------------------------------------------------- \n");
+  TH1F * hRawTime = (TH1F*)postfile->Get("hTOFmatchedESDrawTime");
+  if ((hRawTime)&&(hRawTime->GetEntries()>0)){
+    avRawTime=hRawTime->GetMean();
+    if (!isMC){
+      hRawTime->Fit("landau","","",200.,250.);
+      peakRawTime=(hRawTime->GetFunction("landau"))->GetParameter(1);
+      spreadRawTime=(hRawTime->GetFunction("landau"))->GetParameter(2);
+      peakRawTimeErr=(hRawTime->GetFunction("landau"))->GetParError(1);
+      spreadRawTimeErr=(hRawTime->GetFunction("landau"))->GetParError(2);
+      printf("Main peak raw time (landau): mean = %f +- %f\n",peakTime,peakTimeErr );
+      printf("Main peak raw time (landau): spread = %f +- %f\n",spreadRawTime,spreadRawTimeErr );
+    } else {
+      printf("Reminder: Raw time not available in MC simulated data.");
+    }
+  }
        
-       printf("---------------------------------------------------------------- \n");
+  printf("---------------------------------------------------------------- \n");
       
-       TH1F * hTot = (TH1F*)postfile->Get("hTOFmatchedESDToT");
-       if ((hTot)&&(hTot->GetEntries()>0)){
-         avTot=hTot->GetMean();
-         hTot->Fit("gaus","","",0.,50.);
-         peakTot=(hTot->GetFunction("gaus"))->GetParameter(1);
-         spreadTot=(hTot->GetFunction("gaus"))->GetParameter(2);
-         peakTotErr=(hTot->GetFunction("gaus"))->GetParError(1);
-         spreadTotErr=(hTot->GetFunction("gaus"))->GetParError(2);
-         printf("Main peak ToT (gaus): mean = %f +- %f\n",peakTot,peakTotErr );
-         printf("Main peak ToT (gaus): spread = %f +- %f\n",spreadTot,spreadTotErr );  
-       }      
-       printf("---------------------------------------------------------------- \n");
-       TH1F * hOrphansRatio=(TH1F*)postfile->Get("hOrphansRatio");
-       if (hOrphansRatio)
-         orphansRatio=hOrphansRatio->GetMean();
+  TH1F * hTot = (TH1F*)postfile->Get("hTOFmatchedESDToT");
+  if ((hTot)&&(hTot->GetEntries()>0)){
+    avTot=hTot->GetMean();
+    hTot->Fit("gaus","","",0.,50.);
+    peakTot=(hTot->GetFunction("gaus"))->GetParameter(1);
+    spreadTot=(hTot->GetFunction("gaus"))->GetParameter(2);
+    peakTotErr=(hTot->GetFunction("gaus"))->GetParError(1);
+    spreadTotErr=(hTot->GetFunction("gaus"))->GetParError(2);
+    printf("Main peak ToT (gaus): mean = %f +- %f\n",peakTot,peakTotErr );
+    printf("Main peak ToT (gaus): spread = %f +- %f\n",spreadTot,spreadTotErr );       
+  }      
+  printf("---------------------------------------------------------------- \n");
+  TH1F * hOrphansRatio=(TH1F*)postfile->Get("hOrphansRatio");
+  if (hOrphansRatio)
+    orphansRatio=hOrphansRatio->GetMean();
        
-       TH1F * hL=(TH1F*)postfile->Get("hTOFmatchedESDtrkLength");
-       if (hL)
-         avL=hL->GetMean();
+  TH1F * hL=(TH1F*)postfile->Get("hTOFmatchedESDtrkLength");
+  if (hL)
+    avL=hL->GetMean();
        
-       TH1F *hLnegRatio =(TH1F*)postfile->Get("hLnegRatio");
-       if (hLnegRatio)
-         negLratio=hLnegRatio->GetMean();
+  TH1F *hLnegRatio =(TH1F*)postfile->Get("hLnegRatio");
+  if (hLnegRatio)
+    negLratio=hLnegRatio->GetMean();
        
-       //--------------------------------- matching eff ----------------------------------//
+  //--------------------------------- matching eff ----------------------------------//
        
-       //Double_t linFitEff1Param[3]={0.,0.,0.};
-       TH1F *hMatchingVsPt =(TH1F*)postfile->Get("hTOFmatchedESDPt");
-       if (hMatchingVsPt) {
-         if (hMatchingVsPt->GetEntries()>0){
-           hMatchingVsPt->Fit("pol0","","",1.0,5.);
-           hMatchingVsPt->Draw();
-           if (hMatchingVsPt->GetFunction("pol0")){
-             matchEffLinFit1Gev=(hMatchingVsPt->GetFunction("pol0"))->GetParameter(0);
-             matchEffLinFit1GevErr=(hMatchingVsPt->GetFunction("pol0"))->GetParError(0);       
-             printf("Matching efficiency fit param is %f +- %f\n",matchEffLinFit1Gev,matchEffLinFit1GevErr );
-           }
-         } else {
-           printf("WARNING: matching efficiency plot has 0 entries. Skipped!\n");
-         }
-       } else {
-         printf("WARNING: cannot retrieve matching efficiency plot\n");
-       }
+  //Double_t linFitEff1Param[3]={0.,0.,0.};
+  TH1F *hMatchingVsPt =(TH1F*)postfile->Get("hTOFmatchedESDPt");
+  if (hMatchingVsPt) {
+    if (hMatchingVsPt->GetEntries()>0){
+      hMatchingVsPt->Fit("pol0","","",1.0,5.);
+      hMatchingVsPt->Draw();
+      if (hMatchingVsPt->GetFunction("pol0")){
+       matchEffLinFit1Gev=(hMatchingVsPt->GetFunction("pol0"))->GetParameter(0);
+       matchEffLinFit1GevErr=(hMatchingVsPt->GetFunction("pol0"))->GetParError(0);     
+       printf("Matching efficiency fit param is %f +- %f\n",matchEffLinFit1Gev,matchEffLinFit1GevErr );
+      }
+    } else {
+      printf("WARNING: matching efficiency plot has 0 entries. Skipped!\n");
+    }
+  } else {
+    printf("WARNING: cannot retrieve matching efficiency plot\n");
+  }
        
-       //--------------------------------- t-texp ----------------------------------//
+  //--------------------------------- t-texp ----------------------------------//
        
-       TH1F*hPiDiffTime=(TH1F*)postfile->Get("hTOFmatchedExpTimePi");
-       if ((hPiDiffTime)&&(hPiDiffTime->GetEntries()>0)) {
-         avPiDiffTime=hPiDiffTime->GetMean();
-         hPiDiffTime->Fit("gaus","","",-1000.,500.);
-         if (hPiDiffTime->GetFunction("gaus")){
-           peakPiDiffTime=(hPiDiffTime->GetFunction("gaus"))->GetParameter(1);
-           spreadPiDiffTime=(hPiDiffTime->GetFunction("gaus"))->GetParameter(2);
-           peakPiDiffTimeErr=(hPiDiffTime->GetFunction("gaus"))->GetParError(1);
-           spreadPiDiffTimeErr=(hPiDiffTime->GetFunction("gaus"))->GetParError(2);
-           printf("Main peak t-t_exp (gaus): mean = %f +- %f\n",peakPiDiffTime,peakPiDiffTimeErr );
-           printf("Main peak t-t_exp (gaus): spread = %f +- %f\n",spreadPiDiffTime,spreadPiDiffTimeErr );
-         }
-       }
-       //--------------------------------- T0 detector ----------------------------------//
+  TH1F*hPiDiffTime=(TH1F*)postfile->Get("hTOFmatchedExpTimePi");
+  if ((hPiDiffTime)&&(hPiDiffTime->GetEntries()>0)) {
+    avPiDiffTime=hPiDiffTime->GetMean();
+    hPiDiffTime->Fit("gaus","","",-1000.,500.);
+    if (hPiDiffTime->GetFunction("gaus")){
+      peakPiDiffTime=(hPiDiffTime->GetFunction("gaus"))->GetParameter(1);
+      spreadPiDiffTime=(hPiDiffTime->GetFunction("gaus"))->GetParameter(2);
+      peakPiDiffTimeErr=(hPiDiffTime->GetFunction("gaus"))->GetParError(1);
+      spreadPiDiffTimeErr=(hPiDiffTime->GetFunction("gaus"))->GetParError(2);
+      printf("Main peak t-t_exp (gaus): mean = %f +- %f\n",peakPiDiffTime,peakPiDiffTimeErr );
+      printf("Main peak t-t_exp (gaus): spread = %f +- %f\n",spreadPiDiffTime,spreadPiDiffTimeErr );
+    }
+  }
+  //--------------------------------- T0 detector ----------------------------------//
        
-       TH1F*hT0A=(TH1F*)postfile->Get("hEventT0DetA");
-       if ((hT0A)&&(hT0A->GetEntries()>0)) {
-         avT0A=hT0A->GetMean();
-         hT0A->Fit("gaus");
-         peakT0A=(hT0A->GetFunction("gaus"))->GetParameter(1);
-         spreadT0A=(hT0A->GetFunction("gaus"))->GetParameter(2);
-         peakT0AErr=(hT0A->GetFunction("gaus"))->GetParError(1);
-         spreadT0AErr=(hT0A->GetFunction("gaus"))->GetParError(2);     
-         printf("Main peak T0A(gaus): mean = %f +- %f\n",peakT0A,peakT0AErr );
-         printf("Main peak T0A (gaus): spread = %f +- %f\n",spreadT0A,spreadT0AErr );   
-         //add integral of main peak over total
-       }
+  TH1F*hT0A=(TH1F*)postfile->Get("hEventT0DetA");
+  if ((hT0A)&&(hT0A->GetEntries()>0)) {
+    avT0A=hT0A->GetMean();
+    hT0A->Fit("gaus");
+    peakT0A=(hT0A->GetFunction("gaus"))->GetParameter(1);
+    spreadT0A=(hT0A->GetFunction("gaus"))->GetParameter(2);
+    peakT0AErr=(hT0A->GetFunction("gaus"))->GetParError(1);
+    spreadT0AErr=(hT0A->GetFunction("gaus"))->GetParError(2);  
+    printf("Main peak T0A(gaus): mean = %f +- %f\n",peakT0A,peakT0AErr );
+    printf("Main peak T0A (gaus): spread = %f +- %f\n",spreadT0A,spreadT0AErr );        
+    //add integral of main peak over total
+  }
        
-       TH1F*hT0C=(TH1F*)postfile->Get("hEventT0DetC");
-       if ((hT0C)&&(hT0C->GetEntries()>0)) {
-         avT0C=hT0C->GetMean();
-         hT0C->Fit("gaus");
-         peakT0C=(hT0C->GetFunction("gaus"))->GetParameter(1);
-         spreadT0C=(hT0C->GetFunction("gaus"))->GetParameter(2);
-         peakT0CErr=(hT0C->GetFunction("gaus"))->GetParError(1);
-         spreadT0CErr=(hT0C->GetFunction("gaus"))->GetParError(2);     
-         printf("Main peak T0C(gaus): mean = %f +- %f\n",peakT0C,peakT0CErr );
-         printf("Main peak T0C (gaus): spread = %f +- %f\n",spreadT0C,spreadT0CErr );   
-         //add integral of main peak over total
-       }
+  TH1F*hT0C=(TH1F*)postfile->Get("hEventT0DetC");
+  if ((hT0C)&&(hT0C->GetEntries()>0)) {
+    avT0C=hT0C->GetMean();
+    hT0C->Fit("gaus");
+    peakT0C=(hT0C->GetFunction("gaus"))->GetParameter(1);
+    spreadT0C=(hT0C->GetFunction("gaus"))->GetParameter(2);
+    peakT0CErr=(hT0C->GetFunction("gaus"))->GetParError(1);
+    spreadT0CErr=(hT0C->GetFunction("gaus"))->GetParError(2);  
+    printf("Main peak T0C(gaus): mean = %f +- %f\n",peakT0C,peakT0CErr );
+    printf("Main peak T0C (gaus): spread = %f +- %f\n",spreadT0C,spreadT0CErr );        
+    //add integral of main peak over total
+  }
        
-       TH1F*hT0AC=(TH1F*)postfile->Get("hEventT0DetAND");
-       if ((hT0AC)&&(hT0AC->GetEntries()>0)) {
-         avT0AC=hT0AC->GetMean();
-         hT0AC->Fit("gaus");
-         peakT0AC=(hT0AC->GetFunction("gaus"))->GetParameter(1);
-         spreadT0AC=(hT0AC->GetFunction("gaus"))->GetParameter(2);
-         peakT0ACErr=(hT0AC->GetFunction("gaus"))->GetParError(1);
-         spreadT0ACErr=(hT0AC->GetFunction("gaus"))->GetParError(2);   
-         printf("Main peak T0AC(gaus): mean = %f +- %f\n",peakT0AC,peakT0ACErr );
-         printf("Main peak T0AC (gaus): spread = %f +- %f\n",spreadT0AC,spreadT0ACErr );        
-       }
+  TH1F*hT0AC=(TH1F*)postfile->Get("hEventT0DetAND");
+  if ((hT0AC)&&(hT0AC->GetEntries()>0)) {
+    avT0AC=hT0AC->GetMean();
+    hT0AC->Fit("gaus");
+    peakT0AC=(hT0AC->GetFunction("gaus"))->GetParameter(1);
+    spreadT0AC=(hT0AC->GetFunction("gaus"))->GetParameter(2);
+    peakT0ACErr=(hT0AC->GetFunction("gaus"))->GetParError(1);
+    spreadT0ACErr=(hT0AC->GetFunction("gaus"))->GetParError(2);        
+    printf("Main peak T0AC(gaus): mean = %f +- %f\n",peakT0AC,peakT0ACErr );
+    printf("Main peak T0AC (gaus): spread = %f +- %f\n",spreadT0AC,spreadT0ACErr );     
+  }
       
-       TH1F*hT0res=(TH1F*)postfile->Get("hT0DetRes");
-       if ((hT0res)&&(hT0res->GetEntries()>0)) {
-         avT0res=hT0res->GetMean();
-         hT0res->Fit("gaus");
-         peakT0res=(hT0res->GetFunction("gaus"))->GetParameter(1);
-         spreadT0res=(hT0res->GetFunction("gaus"))->GetParameter(2);
-         peakT0resErr=(hT0res->GetFunction("gaus"))->GetParError(1);
-         spreadT0resErr=(hT0res->GetFunction("gaus"))->GetParError(2); 
-         printf("Main peak T0res(gaus): mean = %f +- %f\n",peakT0res,peakT0resErr );
-         printf("Main peak T0res (gaus): spread = %f +- %f\n",spreadT0res,spreadT0resErr );     
-         //add integral of main peak over total
-       }
+  TH1F*hT0res=(TH1F*)postfile->Get("hT0DetRes");
+  if ((hT0res)&&(hT0res->GetEntries()>0)) {
+    avT0res=hT0res->GetMean();
+    hT0res->Fit("gaus");
+    peakT0res=(hT0res->GetFunction("gaus"))->GetParameter(1);
+    spreadT0res=(hT0res->GetFunction("gaus"))->GetParameter(2);
+    peakT0resErr=(hT0res->GetFunction("gaus"))->GetParError(1);
+    spreadT0resErr=(hT0res->GetFunction("gaus"))->GetParError(2);      
+    printf("Main peak T0res(gaus): mean = %f +- %f\n",peakT0res,peakT0resErr );
+    printf("Main peak T0res (gaus): spread = %f +- %f\n",spreadT0res,spreadT0resErr );  
+    //add integral of main peak over total
+  }
        
-       TH1F*hT0fillRes=(TH1F*)postfile->Get("hT0fillRes");
-       if ((hT0fillRes)&&(hT0fillRes->GetEntries()>0)) {
-         avT0fillRes=hT0fillRes->GetMean();
-       }
+  TH1F*hT0fillRes=(TH1F*)postfile->Get("hT0fillRes");
+  if ((hT0fillRes)&&(hT0fillRes->GetEntries()>0)) {
+    avT0fillRes=hT0fillRes->GetMean();
+  }
        
-       ttree->Fill();
-       printf("==============  Saving trending quantities in tree for run %i ===============\n",runNumber);
-       if (postfile->IsOpen()) {
-         printf("Trying to close\n");
-         postfile->Close();
-       }  
-
-       trendFile->cd();
-       ttree->Write();
-       trendFile->Close();
-       return  0;
+  ttree->Fill();
+  printf("==============  Saving trending quantities in tree for run %i ===============\n",runNumber);
+  if (postfile->IsOpen()) {
+    printf("Trying to close\n");
+    postfile->Close();
+  }  
+
+  trendFile->cd();
+  ttree->Write();
+  trendFile->Close();
+  return  0;
 }
 
 //------------------------------------------------------------------------------------
 
 Int_t RunESDQApostAnalysis(char *qafilename=NULL, Int_t runNumber=-1, Bool_t isMC=kFALSE, Bool_t IsOnGrid=kFALSE, Bool_t displayAll=kFALSE, Bool_t includeStartTime=kTRUE) {
   
-       Bool_t debug=kFALSE;
+  Bool_t debug=kFALSE;
   
-       /*access qa PWGPP output files - saved locally or on grid as specified by the second argument */
+  /*access qa PWGPP output files - saved locally or on grid as specified by the second argument */
   
-       char defaultQAoutput[30]="QAresults.root";
-       if (IsOnGrid) TGrid::Connect("alien://");
-       TFile * fin= TFile::Open(qafilename,"r");
-       printf("Opening file %s\n",qafilename);
-       if (!fin) {
-               printf("ERROR: QA output not found. Exiting with status -1\n");
-               return 1;
-       } else {
-               printf("INFO: QA output file %s open. \n",fin->GetName());
-       }
+  char defaultQAoutput[30]="QAresults.root";
+  if (IsOnGrid) TGrid::Connect("alien://");
+  TFile * fin= TFile::Open(qafilename,"r");
+  printf("Opening file %s\n",qafilename);
+  if (!fin) {
+    printf("ERROR: QA output not found. Exiting with status -1\n");
+    return 1;
+  } else {
+    printf("INFO: QA output file %s open. \n",fin->GetName());
+  }
   
  
-       //access histograms lists
-       char tofQAdirName[15]="TOF_Performance";
-       char PIDqaListName[6]="PIDqa";
-       char genListName[15]="cGeneralTOFqa";
-       char t0ListName[15]="cTimeZeroTOFqa";
-       char pidListName[15]="cPIDTOFqa"; 
-       char posListName[15]="cPositiveTOFqa";
-       char negListName[15]="cNegativeTOFqa";
+  //access histograms lists
+  char tofQAdirName[15]="TOF_Performance";
+  char PIDqaListName[6]="PIDqa";
+  char genListName[15]="cGeneralTOFqa";
+  char t0ListName[15]="cTimeZeroTOFqa";
+  char pidListName[15]="cPIDTOFqa"; 
+  char posListName[15]="cPositiveTOFqa";
+  char negListName[15]="cNegativeTOFqa";
  
-       TDirectoryFile * tofQAdir=(TDirectoryFile*)fin->Get(tofQAdirName);
-       TDirectoryFile * pidQAdir=(TDirectoryFile*)fin->Get(PIDqaListName);
-
-       if(debug){
-         printf("------------------------------------------------------------------\n");
-         tofQAdir->ls();
-         printf("------------------------------------------------------------------\n");
-         if(includeStartTime){
-           pidQAdir->ls();
-           printf("------------------------------------------------------------------\n");
-         }
-       }
+  TDirectoryFile * tofQAdir=(TDirectoryFile*)fin->Get(tofQAdirName);
+  TDirectoryFile * pidQAdir=(TDirectoryFile*)fin->Get(PIDqaListName);
+
+  if(debug){
+    printf("------------------------------------------------------------------\n");
+    tofQAdir->ls();
+    printf("------------------------------------------------------------------\n");
+    if(includeStartTime){
+      pidQAdir->ls();
+      printf("------------------------------------------------------------------\n");
+    }
+  }
        
-       TList * generalList=(TList*)tofQAdir->Get(genListName);
-       TList  *timeZeroList=(TList*)tofQAdir->Get(t0ListName);
-       TList  *pidList=(TList*)tofQAdir->Get(pidListName);
-       TList  *posList=(TList*)tofQAdir->Get(posListName);
-       TList  *negList=(TList*)tofQAdir->Get(negListName);
-
-       if(!pidQAdir)
-         printf("WARNING: PIDqa histograms not available\n");
-       else{
-         TList  *pidListT0=(TList*)pidQAdir->Get(PIDqaListName);        
-         TList  *tofPidListT0=(TList*)pidListT0->FindObject("TOF");      
-       }
-       if (!generalList) printf("WARNING: general QA histograms absent or not accessible\n");
-       if (!timeZeroList) printf("WARNING: timeZero QA histograms absent or not accessible\n");
-       if (!pidList) printf("WARNING: PID QA histograms absent or not accessible\n");
-       if (!posList) printf("WARNING: general QA histograms for positive tracks absent or not accessible\n");
-       if (!negList) printf("WARNING: general QA histograms for negative tracks absent or not accessible\n");
-
-       if ( (!generalList) && (!timeZeroList) && (!pidList) ){
-               printf("ERROR: no QA available \n");
-               return 1;
-       }
+  TList * generalList=(TList*)tofQAdir->Get(genListName);
+  TList  *timeZeroList=(TList*)tofQAdir->Get(t0ListName);
+  TList  *pidList=(TList*)tofQAdir->Get(pidListName);
+  TList  *posList=(TList*)tofQAdir->Get(posListName);
+  TList  *negList=(TList*)tofQAdir->Get(negListName);
+
+  if(!pidQAdir)
+    printf("WARNING: PIDqa histograms not available\n");
+  else{
+    TList  *pidListT0=(TList*)pidQAdir->Get(PIDqaListName);        
+    TList  *tofPidListT0=(TList*)pidListT0->FindObject("TOF");      
+  }
+  if (!generalList) printf("WARNING: general QA histograms absent or not accessible\n");
+  if (!timeZeroList) printf("WARNING: timeZero QA histograms absent or not accessible\n");
+  if (!pidList) printf("WARNING: PID QA histograms absent or not accessible\n");
+  if (!posList) printf("WARNING: general QA histograms for positive tracks absent or not accessible\n");
+  if (!negList) printf("WARNING: general QA histograms for negative tracks absent or not accessible\n");
+
+  if ( (!generalList) && (!timeZeroList) && (!pidList) ){
+    printf("ERROR: no QA available \n");
+    return 1;
+  }
   
-       if (debug){
-               generalList->ls();
-               printf("------------------------------------------------------------------\n");
-               timeZeroList->ls();
-               printf("------------------------------------------------------------------\n");
-               pidList->ls();
-               printf("------------------------------------------------------------------\n");
-       }
-
-       /*set graphic style*/
-       gStyle->SetCanvasColor(kWhite);
-       gStyle->SetFrameFillColor(kWhite);
-       gStyle->SetFrameBorderMode(0);
-       gStyle->SetCanvasBorderMode(0);
-       gStyle->SetTitleFillColor(kWhite);
-       gStyle->SetTitleBorderSize(0)  ;
-       gStyle->SetTitleFont(42);
-       gStyle->SetTextFont(42);
-       //gStyle->SetPalette(1);
-       gStyle->SetStatColor(kWhite); 
-       gStyle->SetStatBorderSize(1);
-       gStyle->SetOptStat(0);
+  if (debug){
+    generalList->ls();
+    printf("------------------------------------------------------------------\n");
+    timeZeroList->ls();
+    printf("------------------------------------------------------------------\n");
+    pidList->ls();
+    printf("------------------------------------------------------------------\n");
+  }
+
+  /*set graphic style*/
+  gStyle->SetCanvasColor(kWhite);
+  gStyle->SetFrameFillColor(kWhite);
+  gStyle->SetFrameBorderMode(0);
+  gStyle->SetCanvasBorderMode(0);
+  gStyle->SetTitleFillColor(kWhite);
+  gStyle->SetTitleBorderSize(0)  ;
+  gStyle->SetTitleFont(42);
+  gStyle->SetTextFont(42);
+  //gStyle->SetPalette(1);
+  gStyle->SetStatColor(kWhite); 
+  gStyle->SetStatBorderSize(1);
+  gStyle->SetOptStat(0);
   
-       //DEFINE OUTPUT FILE 
-       char outfilename[60];
-       sprintf(outfilename,"postQA_%i.root",runNumber);
-       TFile * fout=new TFile(outfilename,"recreate");
-
-       TH1I* hRunNumber=new TH1I("hRunNumber","hRunNumber;run",1,runNumber,runNumber+1);
-       hRunNumber->Fill(runNumber);
-
-       //-------------------------------------------------------------
-       /*GENERAL MONITOR - MULTIPLICITY*/
-       TH1F*hMulti= (TH1F*) generalList->At(0);
-
-       TH1F* hFractionEventsWhits=new TH1F("hFractionEventsWhits","hFractionEventsWhits;fraction of events with hits (%)",200,0.,100.);
-       if (hMulti->GetEntries()<1) return 2;
-       Float_t fraction=0.0;
-       if (hMulti->GetEntries()>0.0) fraction=((Float_t) hMulti->GetBinContent(1))/((Float_t) hMulti->GetEntries());
-       else fraction=0.0;
-       hFractionEventsWhits->Fill(fraction*100.);
-       //-------------------------------------------------------------
-       /*GENERAL MONITOR - TIMING AND GEOMETRY*/
-       TH1F * hTime = (TH1F*) generalList->At(1);
-       if (hTime->GetEntries()<1) return 2;
-       hTime->SetMarkerStyle(8);
-       hTime->SetMarkerSize(0.7);
-       hTime->SetMarkerColor(kBlue);
-       hTime->SetLineColor(kBlue);
-       hTime->SetFillColor(kBlue);
-       hTime->SetFillStyle(3001);
-       hTime->Rebin(2);
-       hTime->GetYaxis()->SetTitle("matched tracks"); 
-       hTime->GetYaxis()->SetTitleOffset(1.35);
+  //DEFINE OUTPUT FILE 
+  char outfilename[60];
+  sprintf(outfilename,"postQA_%i.root",runNumber);
+  TFile * fout=new TFile(outfilename,"recreate");
+
+  TH1I* hRunNumber=new TH1I("hRunNumber","hRunNumber;run",1,runNumber,runNumber+1);
+  hRunNumber->Fill(runNumber);
+
+  //-------------------------------------------------------------
+  /*GENERAL MONITOR - MULTIPLICITY*/
+  TH1F*hMulti= (TH1F*) generalList->FindObject("hTOFmatchedPerEvt");
+
+  TH1F* hFractionEventsWhits=new TH1F("hFractionEventsWhits","hFractionEventsWhits;fraction of events with hits (%)",200,0.,100.);
+  if (hMulti->GetEntries()<1) return 2;
+  Float_t fraction=0.0;
+  if (hMulti->GetEntries()>0.0) fraction=((Float_t) hMulti->GetBinContent(1))/((Float_t) hMulti->GetEntries());
+  else fraction=0.0;
+  hFractionEventsWhits->Fill(fraction*100.);
+  //-------------------------------------------------------------
+  /*GENERAL MONITOR - TIMING AND GEOMETRY*/
+  TH1F * hTime = (TH1F*) generalList->FindObject("hTOFmatchedESDtime");
+  if (hTime->GetEntries()<1) return 2;
+  hTime->SetMarkerStyle(8);
+  hTime->SetMarkerSize(0.7);
+  hTime->SetMarkerColor(kBlue);
+  hTime->SetLineColor(kBlue);
+  hTime->SetFillColor(kBlue);
+  hTime->SetFillStyle(3001);
+  hTime->Rebin(2);
+  hTime->GetYaxis()->SetTitle("matched tracks"); 
+  hTime->GetYaxis()->SetTitleOffset(1.35);
  
-       TH1F * hRawTime = (TH1F*) generalList->At(2);
-       hRawTime->SetMarkerStyle(21);
-       hRawTime->SetMarkerSize(0.7);
-       hRawTime->SetMarkerColor(kGreen);
-       hRawTime->SetLineColor(kGreen);
-       hRawTime->SetFillColor(kGreen);
-       hRawTime->SetFillStyle(3001); 
-       hRawTime->Rebin(2);
-       hRawTime->GetYaxis()->SetTitle("matched tracks");
-       hRawTime->GetYaxis()->SetTitleOffset(1.35);
+  TH1F * hRawTime = (TH1F*) generalList->FindObject("hTOFmatchedESDrawTime");
+  hRawTime->SetMarkerStyle(21);
+  hRawTime->SetMarkerSize(0.7);
+  hRawTime->SetMarkerColor(kGreen);
+  hRawTime->SetLineColor(kGreen);
+  hRawTime->SetFillColor(kGreen);
+  hRawTime->SetFillStyle(3001); 
+  hRawTime->Rebin(2);
+  hRawTime->GetYaxis()->SetTitle("matched tracks");
+  hRawTime->GetYaxis()->SetTitleOffset(1.35);
   
-       TLegend *lTime = new TLegend(0.7125881,0.6052519,0.979435,0.7408306,NULL,"brNDC");
-       lTime->SetTextSize(0.04281433);
-       lTime->AddEntry(hRawTime, "raw","L");
-       lTime->AddEntry(hTime, "ESD","L"); 
-       lTime->SetFillColor(kWhite);
-       lTime->SetShadowColor(0);
-
-       TH1F * hTot = (TH1F*) generalList->At(3);
-       hTot->SetMarkerStyle(8);
-       hTot->SetMarkerSize(0.7);
-       hTot->SetMarkerColor(kViolet-3);
-       hTot->SetLineColor(kViolet-3);
-       hTot->SetFillColor(kViolet-3);
-       hTot->SetFillStyle(3001);
-       //hTime->SetDrawOption();
-       hTot->GetYaxis()->SetTitle("matched tracks");
-       hTot->GetYaxis()->SetTitleOffset(1.35);
+  TLegend *lTime = new TLegend(0.7125881,0.6052519,0.979435,0.7408306,NULL,"brNDC");
+  lTime->SetTextSize(0.04281433);
+  lTime->AddEntry(hRawTime, "raw","L");
+  lTime->AddEntry(hTime, "ESD","L"); 
+  lTime->SetFillColor(kWhite);
+  lTime->SetShadowColor(0);
+
+  TH1F * hTot = (TH1F*) generalList->FindObject("hTOFmatchedESDToT");
+  hTot->SetMarkerStyle(8);
+  hTot->SetMarkerSize(0.7);
+  hTot->SetMarkerColor(kViolet-3);
+  hTot->SetLineColor(kViolet-3);
+  hTot->SetFillColor(kViolet-3);
+  hTot->SetFillStyle(3001);
+  //hTime->SetDrawOption();
+  hTot->GetYaxis()->SetTitle("matched tracks");
+  hTot->GetYaxis()->SetTitleOffset(1.35);
   
   
-       char orphansTxt[200];
-       Float_t orphansRatio=0.0;
-       if (hTot->GetEntries()>1){
-               orphansRatio=((Float_t) hTot->GetBinContent(1))/((Float_t) hTot->GetEntries()) ;
-       }
-       sprintf(orphansTxt,"orphans/matched tracks = %.4f ",orphansRatio);
-       TH1F * hOrphansRatio=new TH1F("hOrphansRatio","Percentage of signals with only leading edge; percentage (%)",1000,0.,100.);
-       hOrphansRatio->Fill(orphansRatio*100.);  
-
-
-       TPaveText *tOrphans = new TPaveText(0.38,0.63,0.88,0.7, "NDC");
-       //NDC sets coords relative to pad
-       tOrphans->SetBorderSize(0);
-       tOrphans->SetTextSize(0.045);
-       tOrphans->SetFillColor(0); //white background
-       tOrphans->SetTextAlign(12);
-       tOrphans->SetTextColor(kViolet-3);
-       tOrphans->AddText(orphansTxt);
+  char orphansTxt[200];
+  Float_t orphansRatio=0.0;
+  if (hTot->GetEntries()>1){
+    orphansRatio=((Float_t) hTot->GetBinContent(1))/((Float_t) hTot->GetEntries()) ;
+  }
+  sprintf(orphansTxt,"orphans/matched tracks = %.4f ",orphansRatio);
+  TH1F * hOrphansRatio=new TH1F("hOrphansRatio","Percentage of signals with only leading edge; percentage (%)",1000,0.,100.);
+  hOrphansRatio->Fill(orphansRatio*100.);  
+
+
+  TPaveText *tOrphans = new TPaveText(0.38,0.63,0.88,0.7, "NDC");
+  //NDC sets coords relative to pad
+  tOrphans->SetBorderSize(0);
+  tOrphans->SetTextSize(0.045);
+  tOrphans->SetFillColor(0); //white background
+  tOrphans->SetTextAlign(12);
+  tOrphans->SetTextColor(kViolet-3);
+  tOrphans->AddText(orphansTxt);
       
-       TH1F * hL = (TH1F*) generalList->At(4);
-       hL->SetMarkerStyle(8);
-       hL->SetMarkerSize(0.7);
-       hL->SetMarkerColor(kOrange-3);
-       hL->SetLineColor(kOrange-3);
-       hL->SetFillColor(kOrange-3);
-       hL->SetFillStyle(3001);
-       //hTime->SetDrawOption();
-       hL->GetYaxis()->SetTitle("matched tracks");
-       hL->GetYaxis()->SetTitleOffset(1.35);
-
-       char negLengthTxt[200];
-       Float_t negLengthRatio=0.0;
-       if (hL->GetEntries()>1){
-               negLengthRatio=(hL->Integral(1,750))/((Float_t) hL->GetEntries()) ;
-       }
-       sprintf(negLengthTxt,"tracks with L<350cm /matched tracks = %.5f ",negLengthRatio);
-       TH1F * hLnegRatio=new TH1F("hLnegRatio","Ratio of TOF-matched tracks with L<350cm; ratio (%)",10000,0.,100.);
-       hLnegRatio->Fill(negLengthRatio*100);
+  TH1F * hL = (TH1F*) generalList->FindObject("hTOFmatchedESDtrkLength");
+  hL->SetMarkerStyle(8);
+  hL->SetMarkerSize(0.7);
+  hL->SetMarkerColor(kOrange-3);
+  hL->SetLineColor(kOrange-3);
+  hL->SetFillColor(kOrange-3);
+  hL->SetFillStyle(3001);
+  //hTime->SetDrawOption();
+  hL->GetYaxis()->SetTitle("matched tracks");
+  hL->GetYaxis()->SetTitleOffset(1.35);
+
+  char negLengthTxt[200];
+  Float_t negLengthRatio=0.0;
+  if (hL->GetEntries()>1){
+    negLengthRatio=(hL->Integral(1,750))/((Float_t) hL->GetEntries()) ;
+  }
+  sprintf(negLengthTxt,"tracks with L<350cm /matched tracks = %.5f ",negLengthRatio);
+  TH1F * hLnegRatio=new TH1F("hLnegRatio","Ratio of TOF-matched tracks with L<350cm; ratio (%)",10000,0.,100.);
+  hLnegRatio->Fill(negLengthRatio*100);
   
 
 
-       TPaveText *tLength = new TPaveText(0.15,0.83,0.65,0.87, "NDC");
-       //NDC sets coords relative to pad
-       tLength->SetBorderSize(0);
-       tLength->SetTextSize(0.04);
-       tLength->SetFillColor(0); //white background
-       tLength->SetTextAlign(11);
-       tLength->SetTextColor(kOrange-3);
-       tLength->AddText(negLengthTxt);
+  TPaveText *tLength = new TPaveText(0.15,0.83,0.65,0.87, "NDC");
+  //NDC sets coords relative to pad
+  tLength->SetBorderSize(0);
+  tLength->SetTextSize(0.04);
+  tLength->SetFillColor(0); //white background
+  tLength->SetTextAlign(11);
+  tLength->SetTextColor(kOrange-3);
+  tLength->AddText(negLengthTxt);
  
-       if (displayAll){
-               TCanvas *cTrackProperties= new TCanvas("cTrackProperties","summary of matched tracks properties",900,900);
-               cTrackProperties->Divide(2,2);
-               cTrackProperties->cd(1);
-               gPad->SetLogy();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hTime->Draw("BAR");
-               hRawTime ->Draw("BARsame");
-               lTime->Draw();  
-               cTrackProperties->cd(2);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               gPad->SetLogy();
-               hTot->Draw("BAR");
-               tOrphans->Draw(); 
-               cTrackProperties->cd(3);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               gPad->SetLogy();
-               hL->Draw("BAR");
-               tLength->Draw(); 
-       }
-       fout->cd();
-       hRunNumber->Write();
-       hMulti->Write();
-       hFractionEventsWhits->Write();
-       hTime->Write();
-       hRawTime->Write();
-       hTot->Write();
-       hOrphansRatio->Write();
-       hL->Write();
-       hLnegRatio->Write();
+  if (displayAll){
+    TCanvas *cTrackProperties= new TCanvas("cTrackProperties","summary of matched tracks properties",900,900);
+    cTrackProperties->Divide(2,2);
+    cTrackProperties->cd(1);
+    gPad->SetLogy();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hTime->Draw("BAR");
+    hRawTime ->Draw("BARsame");
+    lTime->Draw();  
+    cTrackProperties->cd(2);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    gPad->SetLogy();
+    hTot->Draw("BAR");
+    tOrphans->Draw(); 
+    cTrackProperties->cd(3);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    gPad->SetLogy();
+    hL->Draw("BAR");
+    tLength->Draw(); 
+  }
+  fout->cd();
+  hRunNumber->Write();
+  hMulti->Write();
+  hFractionEventsWhits->Write();
+  hTime->Write();
+  hRawTime->Write();
+  hTot->Write();
+  hOrphansRatio->Write();
+  hL->Write();
+  hLnegRatio->Write();
   
-       TH2F* hDxPos4profile = (TH2F*) generalList->At(14);
-       TH2F* hDxNeg4profile = (TH2F*) generalList->At(13);
+  TH2F* hDxPos4profile = (TH2F*) generalList->FindObject("hTOFmatchedDxVsPtPos");
+  TH2F* hDxNeg4profile = (TH2F*) generalList->FindObject("hTOFmatchedDxVsPtNeg");
     
-       char profilename[30];
-       const Int_t ybinMin = 0;
-       const Int_t ybinMax =hDxPos4profile->GetYaxis()->GetNbins() ;
-       sprintf(profilename,"profDxPos");
-       TProfile * profDxPos = (TProfile*)hDxPos4profile->ProfileX(profilename, ybinMin,ybinMax); 
-       sprintf(profilename,"profDxNeg");
-       profDxPos->SetLineWidth(2);
-       TProfile * profDxNeg = (TProfile*)hDxNeg4profile->ProfileX(profilename, ybinMin, ybinMax); 
-       profDxNeg->SetLineWidth(2);  
+  char profilename[30];
+  const Int_t ybinMin = 0;
+  const Int_t ybinMax =hDxPos4profile->GetYaxis()->GetNbins() ;
+  sprintf(profilename,"profDxPos");
+  TProfile * profDxPos = (TProfile*)hDxPos4profile->ProfileX(profilename, ybinMin,ybinMax); 
+  sprintf(profilename,"profDxNeg");
+  profDxPos->SetLineWidth(2);
+  TProfile * profDxNeg = (TProfile*)hDxNeg4profile->ProfileX(profilename, ybinMin, ybinMax); 
+  profDxNeg->SetLineWidth(2);  
  
-       TH1 *profRatioPosOverNegDx = (TH1*) profDxPos->Clone();
-       profRatioPosOverNegDx->SetName("profRatioPosOverNegDx");
-       profRatioPosOverNegDx->Divide((TH1*) profDxNeg);
-       profRatioPosOverNegDx->GetYaxis()->SetRangeUser(-5.,5.);
-       profRatioPosOverNegDx->GetXaxis()->SetRangeUser(0.,2.);
-       if (displayAll){
-               TCanvas *residuals= new TCanvas("residuals","residuals",900,450);
-               residuals->Divide(2,1);
-               residuals->cd(1);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hDxPos4profile->GetYaxis()->SetRangeUser(-5.,5.);
-               hDxPos4profile->Draw("colz");
-               profDxPos->SetLineColor(kRed);
-               profDxPos ->Draw("same");
-               residuals->cd(2);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hDxNeg4profile->GetYaxis()->SetRangeUser(-5.,5.); 
-               hDxNeg4profile->Draw("colz");
-               profDxNeg->SetLineColor(kBlue);
-               profDxNeg->Draw("same"); 
-       }
-
-       fout->cd();
-       hDxPos4profile->Write();
-       hDxNeg4profile->Write();
-       profDxPos->Write();
-       profDxNeg->Write();
-       profRatioPosOverNegDx->Write();
-       //-------------------------------------------------------------
-       /* T0 DETECTOR MONITOR*/
-
-       TH1F * hT0AC = (TH1F*) timeZeroList->At(0);
-       hT0AC->SetMarkerStyle(8);
-       hT0AC->SetMarkerSize(0.7);
-       hT0AC->SetMarkerColor(kRed);
-       hT0AC->SetLineColor(kRed);
-       hT0AC->SetFillColor(kRed);
-       hT0AC->SetFillStyle(1001);
-       hT0AC->Rebin(2);
-       hT0AC->GetYaxis()->SetTitle("events"); 
-       hT0AC->GetYaxis()->SetTitleOffset(1.35);
-       hT0AC->GetXaxis()->SetLabelSize(0.03);
+  TH1 *profRatioPosOverNegDx = (TH1*) profDxPos->Clone();
+  profRatioPosOverNegDx->SetName("profRatioPosOverNegDx");
+  profRatioPosOverNegDx->Divide((TH1*) profDxNeg);
+  profRatioPosOverNegDx->GetYaxis()->SetRangeUser(-5.,5.);
+  profRatioPosOverNegDx->GetXaxis()->SetRangeUser(0.,2.);
+  if (displayAll){
+    TCanvas *residuals= new TCanvas("residuals","residuals",900,450);
+    residuals->Divide(2,1);
+    residuals->cd(1);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hDxPos4profile->GetYaxis()->SetRangeUser(-5.,5.);
+    hDxPos4profile->Draw("colz");
+    profDxPos->SetLineColor(kRed);
+    profDxPos ->Draw("same");
+    residuals->cd(2);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hDxNeg4profile->GetYaxis()->SetRangeUser(-5.,5.); 
+    hDxNeg4profile->Draw("colz");
+    profDxNeg->SetLineColor(kBlue);
+    profDxNeg->Draw("same"); 
+  }
+
+  fout->cd();
+  hDxPos4profile->Write();
+  hDxNeg4profile->Write();
+  profDxPos->Write();
+  profDxNeg->Write();
+  profRatioPosOverNegDx->Write();
+  //-------------------------------------------------------------
+  /* T0 DETECTOR MONITOR*/
+
+  TH1F * hT0AC = (TH1F*) timeZeroList->FindObject("hEventT0DetAND");
+  hT0AC->SetMarkerStyle(8);
+  hT0AC->SetMarkerSize(0.7);
+  hT0AC->SetMarkerColor(kRed);
+  hT0AC->SetLineColor(kRed);
+  hT0AC->SetFillColor(kRed);
+  hT0AC->SetFillStyle(1001);
+  hT0AC->Rebin(2);
+  hT0AC->GetYaxis()->SetTitle("events"); 
+  hT0AC->GetYaxis()->SetTitleOffset(1.35);
+  hT0AC->GetXaxis()->SetLabelSize(0.03);
  
-       TH1F * hT0A = (TH1F*) timeZeroList->At(1);
-       hT0A->SetMarkerStyle(8);
-       hT0A->SetMarkerSize(0.7);
-       hT0A->SetMarkerColor(kBlue);
-       hT0A->SetLineColor(kBlue);
-       hT0A->SetFillColor(kBlue);
-       hT0A->SetFillStyle(1001);
-       hT0A->Rebin(2);
-       hT0A->GetYaxis()->SetTitle("events"); 
-       hT0A->GetYaxis()->SetTitleOffset(1.35);
-       hT0A->GetXaxis()->SetLabelSize(0.03);
-
-       TH1F * hT0C = (TH1F*) timeZeroList->At(2);
-       hT0C->SetMarkerStyle(8);
-       hT0C->SetMarkerSize(0.7);
-       hT0C->SetMarkerColor(kGreen);
-       hT0C->SetLineColor(kGreen);
-       hT0C->SetFillColor(kGreen);
-       hT0C->SetFillStyle(1001);
-       hT0C->Rebin(2);
-       hT0C->GetYaxis()->SetTitle("events"); 
-       hT0C->GetYaxis()->SetTitleOffset(1.35);
-       hT0C->GetXaxis()->SetLabelSize(0.03);
+  TH1F * hT0A = (TH1F*) timeZeroList->FindObject("hEventT0DetA");
+  hT0A->SetMarkerStyle(8);
+  hT0A->SetMarkerSize(0.7);
+  hT0A->SetMarkerColor(kBlue);
+  hT0A->SetLineColor(kBlue);
+  hT0A->SetFillColor(kBlue);
+  hT0A->SetFillStyle(1001);
+  hT0A->Rebin(2);
+  hT0A->GetYaxis()->SetTitle("events"); 
+  hT0A->GetYaxis()->SetTitleOffset(1.35);
+  hT0A->GetXaxis()->SetLabelSize(0.03);
+
+  TH1F * hT0C = (TH1F*) timeZeroList->FindObject("hEventT0DetC");
+  hT0C->SetMarkerStyle(8);
+  hT0C->SetMarkerSize(0.7);
+  hT0C->SetMarkerColor(kGreen);
+  hT0C->SetLineColor(kGreen);
+  hT0C->SetFillColor(kGreen);
+  hT0C->SetFillStyle(1001);
+  hT0C->Rebin(2);
+  hT0C->GetYaxis()->SetTitle("events"); 
+  hT0C->GetYaxis()->SetTitleOffset(1.35);
+  hT0C->GetXaxis()->SetLabelSize(0.03);
  
-       TLegend *lT0 = new TLegend(0.7125881,0.6052519,0.979435,0.7408306,NULL,"brNDC");
-       lT0->SetTextSize(0.041);
-       lT0->AddEntry(hT0AC, "T0 A&C","L");
-       lT0->AddEntry(hT0A, "T0 A","L"); 
-       lT0->AddEntry(hT0C, "T0 C","L");
-       lT0->SetFillColor(kWhite);
-       lT0->SetShadowColor(0);
-  
-       TH1F * hT0res = (TH1F*) timeZeroList->At(3);
-       hT0res->GetXaxis()->SetLabelSize(0.03);
-       if (displayAll){
-               TCanvas *cT0detector= new TCanvas("cT0detector","T0 detector",900,450);
-               cT0detector->Divide(2,1);
-               cT0detector->cd(1);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hT0AC->Draw("BAR");
-               hT0AC->SetTitle("timeZero measured by T0 detector");
-               hT0A ->Draw("BARsame");
-               hT0C ->Draw("BARsame");
-               lT0->Draw();  
-               cT0detector->cd(2);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               // gPad->SetLogy();
-               hT0res->Draw();
-               // myText1->Draw(); 
-               // cTrackProperties->cd(3);
-               // gPad->SetLogy();
-               // hL->Draw("BAR");
-               // myText2->Draw(); 
-       }
-
-       TH1F * hT0fillRes = (TH1F*) timeZeroList->At(8);
-       hT0fillRes->GetXaxis()->SetLabelSize(0.03);
-
-       fout->cd();
-       hT0AC->Write();
-       hT0A->Write();
-       hT0C->Write();
-       hT0res->Write();
-       hT0fillRes->Write();
-       lT0->Write();
+  TLegend *lT0 = new TLegend(0.7125881,0.6052519,0.979435,0.7408306,NULL,"brNDC");
+  lT0->SetTextSize(0.041);
+  lT0->AddEntry(hT0AC, "T0 A&C","L");
+  lT0->AddEntry(hT0A, "T0 A","L"); 
+  lT0->AddEntry(hT0C, "T0 C","L");
+  lT0->SetFillColor(kWhite);
+  lT0->SetShadowColor(0);
   
+  TH1F * hT0res = (TH1F*) timeZeroList->FindObject("hT0DetRes");
+  hT0res->GetXaxis()->SetLabelSize(0.03);
+  if (displayAll){
+    TCanvas *cT0detector= new TCanvas("cT0detector","T0 detector",900,450);
+    cT0detector->Divide(2,1);
+    cT0detector->cd(1);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hT0AC->Draw("BAR");
+    hT0AC->SetTitle("timeZero measured by T0 detector");
+    hT0A ->Draw("BARsame");
+    hT0C ->Draw("BARsame");
+    lT0->Draw();  
+    cT0detector->cd(2);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    // gPad->SetLogy();
+    hT0res->Draw();
+    // myText1->Draw(); 
+    // cTrackProperties->cd(3);
+    // gPad->SetLogy();
+    // hL->Draw("BAR");
+    // myText2->Draw(); 
+  }
 
-       //-------------------------------------------------------------
-       /*MATCHING EFFICIENCY  MONITOR*/
+  TH1F * hT0fillRes = (TH1F*) timeZeroList->FindObject("hT0fillRes");
+  hT0fillRes->GetXaxis()->SetLabelSize(0.03);
 
-       //TH1F * hMatchingVsP =new TH1F("hMatchingVsP","Matching probability vs. P; P(GeV/c); matching probability", 50, 0., 5. );
-  
-       TH1F * hMatchingVsPt =new TH1F("hMatchingVsPt","Matching probability vs. Pt; Pt(GeV/c); matching probability", 50, 0., 5. );
+  fout->cd();
+  hT0AC->Write();
+  hT0A->Write();
+  hT0C->Write();
+  hT0res->Write();
+  hT0fillRes->Write();
+  lT0->Write();
   
-       TH1F * hMatchingVsEta =new TH1F("hMatchingVsEta","Matching probability vs. #\Eta; #\Eta; matching probability", 20, -1., 1.);
-  
-       TH1F * hMatchingVsPhi =new TH1F("hMatchingVsPhi","Matching probability vs. Phi; Phi(rad); matching probability", 628, 0., 6.28);
+
+  //-------------------------------------------------------------
+  /*MATCHING EFFICIENCY  MONITOR*/
+
+  //TH1F * hMatchingVsP =new TH1F("hMatchingVsP","Matching probability vs. P; P(GeV/c); matching probability", 50, 0., 5. );
   
-       /*/matching as function of p
-         TH1F * hDenom=(TH1F*)generalList->At(9); 
-         if (hDenom) {  
-         hMatchingVsP=(TH1F*) generalList->At(5); 
-         hMatchingVsP->Rebin(5);
-         hDenom->Rebin(5);
-         hMatchingVsP->Divide(hDenom);
-         hMatchingVsP->GetYaxis()->SetTitle("matching efficiency");
-         hMatchingVsP->SetTitle("TOF matching efficiency as function of momentum");
-         }*/
+  TH1F * hMatchingVsPt =new TH1F("hMatchingVsPt","Matching probability vs. Pt; Pt(GeV/c); matching probability", 50, 0., 5. );
   
-       //matching as function of pT
+  TH1F * hMatchingVsEta =new TH1F("hMatchingVsEta","Matching probability vs. #\Eta; #\Eta; matching probability", 20, -1., 1.);
   
-       // hDenom->Clear();
-       TH1F * hDenom=(TH1F*)generalList->At(10); 
-       if (hDenom) {  
-               hMatchingVsPt=(TH1F*) generalList->At(6); 
-               hMatchingVsPt->Rebin(5);
-               hDenom->Rebin(5);
-               hMatchingVsPt->Divide(hDenom);
-               hMatchingVsPt->GetYaxis()->SetTitle("matching efficiency");
-               hMatchingVsPt->SetTitle("TOF matching efficiency as function of transverse momentum");
-               hMatchingVsPt->GetYaxis()->SetRangeUser(0,1.2); 
-       }
+  TH1F * hMatchingVsPhi =new TH1F("hMatchingVsPhi","Matching probability vs. Phi; Phi(rad); matching probability", 628, 0., 6.28);
+
+  //matching as function of pT  
+  TH1F * hDenom=(TH1F*)generalList->FindObject("hESDprimaryTrackPt"); 
+  if (hDenom) {  
+    hMatchingVsPt=(TH1F*) generalList->FindObject("hTOFmatchedESDPt"); 
+    hMatchingVsPt->Rebin(5);
+    hDenom->Rebin(5);
+    hMatchingVsPt->Divide(hDenom);
+    hMatchingVsPt->GetYaxis()->SetTitle("matching efficiency");
+    hMatchingVsPt->SetTitle("TOF matching efficiency as function of transverse momentum");
+    hMatchingVsPt->GetYaxis()->SetRangeUser(0,1.2); 
+  }
   
-       //matching as function of eta
-       hDenom->Clear();
-       hDenom=(TH1F*)generalList->At(11); 
-       if (hDenom) {  
-               hMatchingVsEta=(TH1F*) generalList->At(7); 
-               hMatchingVsEta->Rebin(5);
-               hDenom->Rebin(5);
-               hMatchingVsEta->Divide(hDenom);
-               hMatchingVsEta->GetXaxis()->SetRangeUser(-1,1);
-               hMatchingVsEta->GetYaxis()->SetTitle("matching efficiency");
-               hMatchingVsEta->GetYaxis()->SetRangeUser(0,1.2);
-               hMatchingVsEta->SetTitle("TOF matching efficiency as function of pseudorapidity");
-       }
-       //matching as function of phi
-       hDenom->Clear();
-       hDenom=(TH1F*)generalList->At(12); 
-       if (hDenom) {  
-               hMatchingVsPhi=(TH1F*) generalList->At(8); 
-               //hMatchingVsPhi->Rebin(5);
-               //hDenom->Rebin(5);
-               hMatchingVsPhi->Divide(hDenom);
-               hMatchingVsPhi->GetYaxis()->SetTitle("matching efficiency");
-               hMatchingVsPhi->SetTitle("TOF matching efficiency as function of phi");
-               hMatchingVsPhi->GetYaxis()->SetRangeUser(0,1.2);
-       }
-       if (  displayAll){
-               TCanvas *cMatchingPerformance= new TCanvas("cMatchingPerformance","summary of matching performance",700,400);
-               cMatchingPerformance->Divide(2,2);
-               cMatchingPerformance->cd(1);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hMatchingVsPt->Draw();
-               cMatchingPerformance->cd(2);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hMatchingVsEta->Draw();
-               cMatchingPerformance->cd(3);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               hMatchingVsPhi->Draw();
-       }
-       fout->cd();
-       hMatchingVsPt->Write();
-       hMatchingVsEta->Write();
-       hMatchingVsPhi->Write();
+  //matching as function of eta
+  hDenom->Clear();
+  hDenom=(TH1F*)generalList->FindObject("hTOFprimaryESDeta"); 
+  if (hDenom) {  
+    hMatchingVsEta=(TH1F*) generalList->FindObject("hTOFmatchedESDeta"); 
+    hMatchingVsEta->Rebin(5);
+    hDenom->Rebin(5);
+    hMatchingVsEta->Divide(hDenom);
+    hMatchingVsEta->GetXaxis()->SetRangeUser(-1,1);
+    hMatchingVsEta->GetYaxis()->SetTitle("matching efficiency");
+    hMatchingVsEta->GetYaxis()->SetRangeUser(0,1.2);
+    hMatchingVsEta->SetTitle("TOF matching efficiency as function of pseudorapidity");
+  }
+  //matching as function of phi
+  hDenom->Clear();
+  hDenom=(TH1F*)generalList->FindObject("hTOFprimaryESDphi"); 
+  if (hDenom) {  
+    hMatchingVsPhi=(TH1F*) generalList->FindObject("hTOFmatchedESDphi"); 
+    //hMatchingVsPhi->Rebin(5);
+    //hDenom->Rebin(5);
+    hMatchingVsPhi->Divide(hDenom);
+    hMatchingVsPhi->GetYaxis()->SetTitle("matching efficiency");
+    hMatchingVsPhi->SetTitle("TOF matching efficiency as function of phi");
+    hMatchingVsPhi->GetYaxis()->SetRangeUser(0,1.2);
+  }
+  if (displayAll){
+    TCanvas *cMatchingPerformance= new TCanvas("cMatchingPerformance","summary of matching performance",700,400);
+    cMatchingPerformance->Divide(2,2);
+    cMatchingPerformance->cd(1);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hMatchingVsPt->Draw();
+    cMatchingPerformance->cd(2);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hMatchingVsEta->Draw();
+    cMatchingPerformance->cd(3);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hMatchingVsPhi->Draw();
+  }
+  TH2F* hTOFmatchedDzVsStrip = (TH2F*) generalList->FindObject("hTOFmatchedDzVsStrip");        
   
-       //----------------------------------------------------
-       /* PID PERFORMANCE MONITOR */
-
-       TH2F * hBetaP=(TH2F*)pidList->At(0);
-       if (hBetaP) hBetaP->GetYaxis()->SetRangeUser(0.,1.2);
-       else Printf("Plot hBetaP not available (old aliroot?)");
-       TH1F * hMass=(TH1F*)pidList->At(1);
-       if (hMass){
-         //hMass->SetMarkerColor(kBlue);
-         //hMass->SetLineColor(kBlue);
-         hMass->SetFillColor(kAzure+10);
-         hMass->SetFillStyle(1001);
-         hMass->Rebin(2);
-         hMass->GetYaxis()->SetTitle("tracks"); 
-         hMass->GetYaxis()->SetTitleOffset(1.35);
-         hMass->GetXaxis()->SetLabelSize(0.03);
-       } else 
-         Printf("Plot hMass not available (old aliroot?)");
+  fout->cd();
+  if (hMatchingVsPt) hMatchingVsPt->Write();
+  if (hMatchingVsEta) hMatchingVsEta->Write();
+  if (hMatchingVsPhi) hMatchingVsPhi->Write();
+  if (hTOFmatchedDzVsStrip)hTOFmatchedDzVsStrip->Write();
+
+  //----------------------------------------------------
+  /* PID PERFORMANCE MONITOR */
+
+  TH2F * hBetaP=(TH2F*)pidList->FindObject("hTOFmatchedESDpVsBeta");
+  if (hBetaP) hBetaP->GetYaxis()->SetRangeUser(0.,1.2);
+  else Printf("Plot hBetaP not available (old aliroot?)");
+  TH1F * hMass=(TH1F*)pidList->FindObject("hTOFmatchedMass");
+  if (hMass){
+    //hMass->SetMarkerColor(kBlue);
+    //hMass->SetLineColor(kBlue);
+    hMass->SetFillColor(kAzure+10);
+    hMass->SetFillStyle(1001);
+    hMass->Rebin(2);
+    hMass->GetYaxis()->SetTitle("tracks"); 
+    hMass->GetYaxis()->SetTitleOffset(1.35);
+    hMass->GetXaxis()->SetLabelSize(0.03);
+  } else 
+    Printf("Plot hMass not available (old aliroot?)");
        
-       TH1F * hPionDiff=(TH1F*)pidList->At(3); 
-
-       TH2F * hDiffTimePi=(TH2F*)pidList->At(4); 
-       if (!hDiffTimePi) {
-         Printf("Plot hDiffTimePi not available (old aliroot?)");
-       } else {
-         hDiffTimePi->SetTitle("PIONS t-t_{exp,#pi} (from tracking) vs. P");
-         hDiffTimePi->GetYaxis()->SetRangeUser(-2000.,2000.);
-         //hDiffTimePi->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
+  TH1F * hPionDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimePiVsEta"); 
+
+  TH2F * hDiffTimePi=(TH2F*)pidList->FindObject("hTOFmatchedExpTimePiVsP"); 
+  if (!hDiffTimePi) {
+    Printf("Plot hDiffTimePi not available (old aliroot?)");
+  } else {
+    hDiffTimePi->SetTitle("PIONS t-t_{exp,#pi} (from tracking) vs. P");
+    hDiffTimePi->GetYaxis()->SetRangeUser(-2000.,2000.);
+    //hDiffTimePi->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
        
-       TH2F * hDiffTimePiTh=(TH2F*)pidList->At(6); 
-       if (!hDiffTimePiTh) {
-         Printf("Plot hDiffTimePiTh not available (old aliroot?)");
-       } else {
-         hDiffTimePiTh->SetTitle("PIONS t-t_{exp,#pi} (theoretical) vs. P");
-         hDiffTimePiTh->GetYaxis()->SetRangeUser(-2000.,2000.); 
-         //hDiffTimePiTh->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
-
-       TH2F * hDiffTimeKa=(TH2F*)pidList->At(9); 
-       if (!hDiffTimeKa) {
-         Printf("Plot hDiffTimeKa not available (old aliroot?)");
-       } else {
-         hDiffTimeKa->SetTitle("KAONS t-t_{exp,K} (from tracking) vs. P");
-         hDiffTimeKa->GetYaxis()->SetRangeUser(-2000.,2000.);
-         //hDiffTimeKa->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
-
-       TH2F * hDiffTimeKaTh=(TH2F*)pidList->At(11); 
-       if (!hDiffTimeKaTh) {
-         Printf("Plot hDiffTimeKaTh not available (old aliroot?)");
-       } else {
-         hDiffTimeKaTh->SetTitle("KAONS t-t_{exp,K} (theoretical) vs. P");
-         hDiffTimeKaTh->GetYaxis()->SetRangeUser(-2000.,2000.);
-         //hDiffTimeKaTh->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
-
-       TH2F * hDiffTimePro=(TH2F*)pidList->At(14); 
-       if (!hDiffTimePro) {
-         Printf("Plot hDiffTimePro not available (old aliroot?)");
-       } else {
-         hDiffTimePro->SetTitle("PROTONS t-t_{exp,p} (from tracking) vs. P");
-         hDiffTimePro->GetYaxis()->SetRangeUser(-2000.,2000.);
-         //hDiffTime->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
+  TH2F * hDiffTimePiTh=(TH2F*)pidList->FindObject("hTOFtheoreticalExpTimePiVsP"); 
+  if (!hDiffTimePiTh) {
+    Printf("Plot hDiffTimePiTh not available (old aliroot?)");
+  } else {
+    hDiffTimePiTh->SetTitle("PIONS t-t_{exp,#pi} (theoretical) vs. P");
+    hDiffTimePiTh->GetYaxis()->SetRangeUser(-2000.,2000.); 
+    //hDiffTimePiTh->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
+
+  TH2F * hDiffTimeKa=(TH2F*)pidList->FindObject("hTOFmatchedExpTimeKaVsP"); 
+  if (!hDiffTimeKa) {
+    Printf("Plot hDiffTimeKa not available (old aliroot?)");
+  } else {
+    hDiffTimeKa->SetTitle("KAONS t-t_{exp,K} (from tracking) vs. P");
+    hDiffTimeKa->GetYaxis()->SetRangeUser(-2000.,2000.);
+    //hDiffTimeKa->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
+
+  TH2F * hDiffTimeKaTh=(TH2F*)pidList->FindObject("hTOFtheoreticalExpTimeKaVsP"); 
+  if (!hDiffTimeKaTh) {
+    Printf("Plot hDiffTimeKaTh not available (old aliroot?)");
+  } else {
+    hDiffTimeKaTh->SetTitle("KAONS t-t_{exp,K} (theoretical) vs. P");
+    hDiffTimeKaTh->GetYaxis()->SetRangeUser(-2000.,2000.);
+    //hDiffTimeKaTh->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
+
+  TH2F * hDiffTimePro=(TH2F*)pidList->FindObject("hTOFmatchedExpTimeProVsP"); 
+  if (!hDiffTimePro) {
+    Printf("Plot hDiffTimePro not available (old aliroot?)");
+  } else {
+    hDiffTimePro->SetTitle("PROTONS t-t_{exp,p} (from tracking) vs. P");
+    hDiffTimePro->GetYaxis()->SetRangeUser(-2000.,2000.);
+    //hDiffTime->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
        
-       TH2F * hDiffTimeProTh=(TH2F*)pidList->At(16); 
-       if (!hDiffTimeProTh) {
-         Printf("Plot hDiffTimeProTh not available (old aliroot?)");
-       } else {
-         hDiffTimePro->SetTitle("PROTONS t-t_{exp,p} (theoretical) vs. P");
-         hDiffTimeProTh->GetYaxis()->SetRangeUser(-2000.,2000.);
-         //hDiffTime->GetYaxis()->Rebin(2);//1 bin=10 ps
-       }
-
-       if (displayAll){
-               TCanvas *cPidPerformance= new TCanvas("cPidPerformance","summary of pid performance",800,800);
-               cPidPerformance->Divide(2,1);
-               cPidPerformance->cd(1);
-               gPad->SetGridy();
-               gPad->SetGridx();
-               gPad->SetLogz();
-               if (hBetaP) hBetaP->Draw("colz"); 
+  TH2F * hDiffTimeProTh=(TH2F*)pidList->FindObject("hTOFtheoreticalExpTimeProVsP"); 
+  if (!hDiffTimeProTh) {
+    Printf("Plot hDiffTimeProTh not available (old aliroot?)");
+  } else {
+    hDiffTimePro->SetTitle("PROTONS t-t_{exp,p} (theoretical) vs. P");
+    hDiffTimeProTh->GetYaxis()->SetRangeUser(-2000.,2000.);
+    //hDiffTime->GetYaxis()->Rebin(2);//1 bin=10 ps
+  }
+
+  if (displayAll){
+    TCanvas *cPidPerformance= new TCanvas("cPidPerformance","summary of pid performance",800,800);
+    cPidPerformance->Divide(2,1);
+    cPidPerformance->cd(1);
+    gPad->SetGridy();
+    gPad->SetGridx();
+    gPad->SetLogz();
+    if (hBetaP) hBetaP->Draw("colz"); 
   
-               cPidPerformance->cd(2);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               gPad->SetLogy();
-               if (hMass) hMass->Draw("HIST BAR");
+    cPidPerformance->cd(2);
+    gPad->SetGridx();
+    gPad->SetGridy();
+    gPad->SetLogy();
+    if (hMass) hMass->Draw("HIST BAR");
   
-               gStyle->SetOptStat(10);
-               TCanvas *cPidPerformance2= new TCanvas("cPidPerformance2","summary of pid performance - tracking",700,700);
-               cPidPerformance2->Divide(2,2);
-               cPidPerformance2->cd(1);
-               gPad->SetLogz();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hDiffTimePi) hDiffTimePi->Draw("colz");
-               cPidPerformance2->cd(2);
-               gPad->SetLogz();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hDiffTimeKa) hDiffTimeKa->Draw("colz");
-               cPidPerformance2->cd(3);
-               gPad->SetLogz();
-               if (hDiffTimePro) hDiffTimePro->Draw("colz");
-
-               TCanvas *cPidPerformanceTh= new TCanvas("cPidPerformanceTh","summary of pid performance - theoretical times",700,700);
-               cPidPerformanceTh->Divide(2,2);
-               cPidPerformanceTh->cd(1);
-               gPad->SetLogz();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hDiffTimePiTh) hDiffTimePiTh->Draw("colz");
-               cPidPerformanceTh->cd(2);
-               gPad->SetLogz();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hDiffTimeKaTh) hDiffTimeKaTh->Draw("colz");
-               cPidPerformanceTh->cd(3);
-               gPad->SetLogz();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hDiffTimeProTh) hDiffTimeProTh->Draw("colz");
-       }
+    gStyle->SetOptStat(10);
+    TCanvas *cPidPerformance2= new TCanvas("cPidPerformance2","summary of pid performance - tracking",700,700);
+    cPidPerformance2->Divide(2,2);
+    cPidPerformance2->cd(1);
+    gPad->SetLogz();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    if (hDiffTimePi) hDiffTimePi->Draw("colz");
+    cPidPerformance2->cd(2);
+    gPad->SetLogz();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    if (hDiffTimeKa) hDiffTimeKa->Draw("colz");
+    cPidPerformance2->cd(3);
+    gPad->SetLogz();
+    if (hDiffTimePro) hDiffTimePro->Draw("colz");
+
+    TCanvas *cPidPerformanceTh= new TCanvas("cPidPerformanceTh","summary of pid performance - theoretical times",700,700);
+    cPidPerformanceTh->Divide(2,2);
+    cPidPerformanceTh->cd(1);
+    gPad->SetLogz();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    if (hDiffTimePiTh) hDiffTimePiTh->Draw("colz");
+    cPidPerformanceTh->cd(2);
+    gPad->SetLogz();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    if (hDiffTimeKaTh) hDiffTimeKaTh->Draw("colz");
+    cPidPerformanceTh->cd(3);
+    gPad->SetLogz();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    if (hDiffTimeProTh) hDiffTimeProTh->Draw("colz");
+  }
   
-       TH1F * hPionDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimePi"); 
-       TH1F * hKaonDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimeKa"); 
-       TH1F * hProtonDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimePro");
-       TH2F * hDiffTimeT0TOFPion1GeV=(TH2F*)pidList->FindObject("hTOFmatchedTimePion1GeV"); 
-
-       fout->cd();
-       if (hPionDiff) hPionDiff->Write();
-       if (hKaonDiff) hKaonDiff->Write();
-       if (hProtonDiff) hProtonDiff->Write();
-       if (hBetaP) hBetaP->Write();
-       if (hMass) hMass->Write();
-       if (hDiffTimeT0TOFPion1GeV) hDiffTimeT0TOFPion1GeV->Write();
-       if (hDiffTimePi) hDiffTimePi->Write();
-       if (hDiffTimeKa) hDiffTimeKa->Write();
-       if (hDiffTimePro) hDiffTimePro->Write();
-       if (hDiffTimePiTh) hDiffTimePiTh->Write();
-       if (hDiffTimeKaTh) hDiffTimeKaTh->Write();
-       if (hDiffTimeProTh) hDiffTimeProTh->Write();
-
-       //SIGMAS PID
-       TH2F * hSigmaPi=(TH2F*)pidList->At(7); 
-       TProfile * profSigmaPi = 0x0;
-       if (!hSigmaPi){
-         Printf("Plot hSigmaPi not available (old aliroot?)");
-       } else {
-         sprintf(profilename,"profSigmaPi");
-         hSigmaPi->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaPi->GetXaxis()->SetRangeUser(0.2,10.);  
-         profSigmaPi = (TProfile*)hSigmaPi->ProfileX(profilename); 
-         profSigmaPi->SetLineWidth(2);
-         profSigmaPi->SetLineColor(kRed+2); 
-       }
-
-       TH2F * hSigmaKa=(TH2F*)pidList->At(12); 
-       TProfile * profSigmaKa = 0x0;
-       if (!hSigmaKa){
-         Printf("Plot hSigmaKa not available (old aliroot?)");
-       } else {
-         sprintf(profilename,"profSigmaKa");
-         hSigmaKa->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaKa->GetXaxis()->SetRangeUser(0.2,10.);
-         profSigmaKa = (TProfile*)hSigmaKa->ProfileX(profilename); 
-         profSigmaKa->SetLineWidth(2);
-         profSigmaKa->SetLineColor(kBlue);  
-       }
+  TH1F * hPionDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimePi"); 
+  TH1F * hKaonDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimeKa"); 
+  TH1F * hProtonDiff=(TH1F*)pidList->FindObject("hTOFmatchedExpTimePro");
+  TH2F * hDiffTimeT0TOFPion1GeV=(TH2F*)pidList->FindObject("hTOFmatchedTimePion1GeV"); 
+
+  fout->cd();
+  if (hPionDiff) hPionDiff->Write();
+  if (hKaonDiff) hKaonDiff->Write();
+  if (hProtonDiff) hProtonDiff->Write();
+  if (hBetaP) hBetaP->Write();
+  if (hMass) hMass->Write();
+  if (hDiffTimeT0TOFPion1GeV) hDiffTimeT0TOFPion1GeV->Write();
+  if (hDiffTimePi) hDiffTimePi->Write();
+  if (hDiffTimeKa) hDiffTimeKa->Write();
+  if (hDiffTimePro) hDiffTimePro->Write();
+  if (hDiffTimePiTh) hDiffTimePiTh->Write();
+  if (hDiffTimeKaTh) hDiffTimeKaTh->Write();
+  if (hDiffTimeProTh) hDiffTimeProTh->Write();
+
+  //SIGMAS PID
+  TH2F * hSigmaPi=(TH2F*)pidList->FindObject("hTOFExpSigmaPi"); 
+  TProfile * profSigmaPi = 0x0;
+  if (!hSigmaPi){
+    Printf("Plot hSigmaPi not available (old aliroot?)");
+  } else {
+    sprintf(profilename,"profSigmaPi");
+    hSigmaPi->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaPi->GetXaxis()->SetRangeUser(0.2,10.);       
+    profSigmaPi = (TProfile*)hSigmaPi->ProfileX(profilename); 
+    profSigmaPi->SetLineWidth(2);
+    profSigmaPi->SetLineColor(kRed+2); 
+  }
+
+  TH2F * hSigmaKa=(TH2F*)pidList->FindObject("hTOFExpSigmaKa"); 
+  TProfile * profSigmaKa = 0x0;
+  if (!hSigmaKa){
+    Printf("Plot hSigmaKa not available (old aliroot?)");
+  } else {
+    sprintf(profilename,"profSigmaKa");
+    hSigmaKa->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaKa->GetXaxis()->SetRangeUser(0.2,10.);
+    profSigmaKa = (TProfile*)hSigmaKa->ProfileX(profilename); 
+    profSigmaKa->SetLineWidth(2);
+    profSigmaKa->SetLineColor(kBlue);  
+  }
  
-       TH2F * hSigmaPro=(TH2F*)pidList->At(17); 
-       TProfile * profSigmaPro = 0x0;
-       if (!hSigmaPro){
-         Printf("Plot hSigmaPro not available (old aliroot?)");
-       } else {
-         sprintf(profilename,"profSigmaPro");
-         hSigmaPro->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaPro->GetXaxis()->SetRangeUser(0.2,10.);
-         profSigmaPro = (TProfile*)hSigmaPro->ProfileX(profilename); 
-         profSigmaPro->SetLineWidth(2);
-         profSigmaPro->SetLineColor(kGreen+2);  
-       }
-
-       if(includeStartTime){                                                                  
-         if(pidQAdir){
-         TH2F * hSigmaPiT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_pion"); 
-         hSigmaPiT0->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaPiT0->GetXaxis()->SetRangeUser(0.2,10.);
-         hSigmaPiT0->FitSlicesY();
-         TH1D * hSigmaPiT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_pion_1");
-         TH1D * hSigmaPiT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_pion_2");
-         hSigmaPiT0_1->SetLineColor(1);
-         hSigmaPiT0_1->SetLineWidth(2);
-         hSigmaPiT0_2->SetLineColor(2);
-         hSigmaPiT0_2->SetLineWidth(2);  
-
-         TH2F * hSigmaKaT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_kaon"); 
-         hSigmaKaT0->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaKaT0->GetXaxis()->SetRangeUser(0.2,10.);
-         hSigmaKaT0->FitSlicesY();
-         TH1D * hSigmaKaT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_kaon_1");
-         TH1D * hSigmaKaT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_kaon_2");
-         hSigmaKaT0_1->SetLineColor(1);
-         hSigmaKaT0_1->SetLineWidth(2);
-         hSigmaKaT0_2->SetLineColor(2);
-         hSigmaKaT0_2->SetLineWidth(2); 
+  TH2F * hSigmaPro=(TH2F*)pidList->FindObject("hTOFExpSigmaPro"); 
+  TProfile * profSigmaPro = 0x0;
+  if (!hSigmaPro){
+    Printf("Plot hSigmaPro not available (old aliroot?)");
+  } else {
+    sprintf(profilename,"profSigmaPro");
+    hSigmaPro->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaPro->GetXaxis()->SetRangeUser(0.2,10.);
+    profSigmaPro = (TProfile*)hSigmaPro->ProfileX(profilename); 
+    profSigmaPro->SetLineWidth(2);
+    profSigmaPro->SetLineColor(kGreen+2);  
+  }
+
+  if(includeStartTime && pidQAdir){
+    TH2F * hSigmaPiT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_pion"); 
+    hSigmaPiT0->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaPiT0->GetXaxis()->SetRangeUser(0.2,10.);
+    hSigmaPiT0->FitSlicesY();
+    TH1D * hSigmaPiT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_pion_1");
+    TH1D * hSigmaPiT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_pion_2");
+    hSigmaPiT0_1->SetLineColor(1);
+    hSigmaPiT0_1->SetLineWidth(2);
+    hSigmaPiT0_2->SetLineColor(2);
+    hSigmaPiT0_2->SetLineWidth(2);  
+
+    TH2F * hSigmaKaT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_kaon"); 
+    hSigmaKaT0->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaKaT0->GetXaxis()->SetRangeUser(0.2,10.);
+    hSigmaKaT0->FitSlicesY();
+    TH1D * hSigmaKaT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_kaon_1");
+    TH1D * hSigmaKaT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_kaon_2");
+    hSigmaKaT0_1->SetLineColor(1);
+    hSigmaKaT0_1->SetLineWidth(2);
+    hSigmaKaT0_2->SetLineColor(2);
+    hSigmaKaT0_2->SetLineWidth(2); 
  
-         TH2F * hSigmaProT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_proton"); 
-         hSigmaProT0->GetYaxis()->SetRangeUser(-5.,5.);
-         hSigmaProT0->GetXaxis()->SetRangeUser(0.2,10.);
-         hSigmaProT0->FitSlicesY();
-         TH1D * hSigmaProT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_proton_1");
-         TH1D * hSigmaProT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_proton_2");
-         hSigmaProT0_1->SetLineColor(1);
-         hSigmaProT0_1->SetLineWidth(2);
-         hSigmaProT0_2->SetLineColor(2);
-         hSigmaProT0_2->SetLineWidth(2);
-         } 
-       }
-       if (displayAll){
-         
-               TLegend * lSigmaPid=new TLegend(0.75,0.75,0.95,0.95,"#sigma_{PID}");
-               lSigmaPid->AddEntry(profSigmaPi,"#pi^{#pm}","l");
-               lSigmaPid->AddEntry(profSigmaKa,"K^{#pm}","l");
-               lSigmaPid->AddEntry(profSigmaPro,"p^{#pm}","l");
+    TH2F * hSigmaProT0=(TH2F*)tofPidListT0->FindObject("hNsigmaP_TOF_proton"); 
+    hSigmaProT0->GetYaxis()->SetRangeUser(-5.,5.);
+    hSigmaProT0->GetXaxis()->SetRangeUser(0.2,10.);
+    hSigmaProT0->FitSlicesY();
+    TH1D * hSigmaProT0_1 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_proton_1");
+    TH1D * hSigmaProT0_2 = (TH1D*)gDirectory->Get("hNsigmaP_TOF_proton_2");
+    hSigmaProT0_1->SetLineColor(1);
+    hSigmaProT0_1->SetLineWidth(2);
+    hSigmaProT0_2->SetLineColor(2);
+    hSigmaProT0_2->SetLineWidth(2);
+  } 
+       
          
-               TCanvas *cPidPerformance3= new TCanvas("cPidPerformance3","summary of pid performance - sigmas",1200,400);
-               cPidPerformance3->Divide(3,1);
-               cPidPerformance3->cd(1);
-               gPad->SetLogz();
-               gPad->SetLogx();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hSigmaPi){
-                 hSigmaPi->Draw("colz");
-                 profSigmaPi->Draw("same");
-               }
-               cPidPerformance3->cd(2);
-               gPad->SetLogz();
-               gPad->SetLogx();
-               gPad->SetGridx();
-               gPad->SetGridy();
-               if (hSigmaKa){
-                 hSigmaKa->Draw("colz");
-                 profSigmaKa->Draw("same");
-               }
-               cPidPerformance3->cd(3);
-               gPad->SetGridx();
-               gPad->SetGridy();
-               gPad->SetLogz();
-               gPad->SetLogx();
-               if (hSigmaPro){
-                 hSigmaPro->Draw("colz");
-                 profSigmaPro->Draw("same");
-               }
-
-               if(includeStartTime){  
-                 if(pidQAdir){   
-                   TLine *l1=new TLine(0.,0.,5.,0.);
-                   TLine *l2=new TLine(0.,1.,5.,1.); 
-                   TCanvas *cPidPerformance3T0 = new TCanvas("cPidPerformance3T0","summary of pid performance - sigmas - with StartTime",1200,500);  
-                   cPidPerformance3T0->Divide(3,1);
-                   cPidPerformance3T0->cd(1);        
-                   gPad->SetLogz();
-                   gPad->SetLogx();
-                   gPad->SetGridx();
-                   gPad->SetGridy();
-                   hSigmaPiT0->Draw("colz");    
-                   hSigmaPiT0_1->Draw("same");
-                   hSigmaPiT0_2->Draw("same");
-                   l1->Draw("same");
-                   l2->Draw("same");
-                   cPidPerformance3T0->cd(2);
-                   gPad->SetLogz();
-                   gPad->SetLogx();
-                   gPad->SetGridx();
-                   gPad->SetGridy();
-                   hSigmaKaT0->Draw("colz");
-                   hSigmaKaT0_1->Draw("same");
-                   hSigmaKaT0_2->Draw("same");
-                   l1->Draw("same");
-                   l2->Draw("same");
-                   cPidPerformance3T0->cd(3);  
-                   gPad->SetLogz();
-                   gPad->SetLogx();
-                   gPad->SetGridx();
-                   gPad->SetGridy();
-                   hSigmaProT0->Draw("colz");
-                   hSigmaProT0_1->Draw("same");
-                   hSigmaProT0_2->Draw("same");
-                   l1->Draw("same");
-                   l2->Draw("same");                      
-               }
-       }
-       }
-
-       fout->cd();
-       if (hSigmaPi){
-         hSigmaPi->Write();
-         profSigmaPi->Write();
-       }
-       if (hSigmaKa){ 
-         hSigmaKa->Write();
-         profSigmaKa->Write();
-       }
-       if (hSigmaPro){
-         hSigmaPro->Write();
-         profSigmaPro->Write();
-       }
-       if(includeStartTime)
-         {
-           if(pidQAdir){
-             hSigmaPiT0->Write();
-             hSigmaKaT0->Write();
-             hSigmaProT0->Write();
+  TCanvas *cPidPerformance3= new TCanvas("cPidPerformance3","summary of pid performance - sigmas",1200,400);
+  cPidPerformance3->Divide(3,1);
+  cPidPerformance3->cd(1);
+  gPad->SetLogz();
+  gPad->SetLogx();
+  gPad->SetGridx();
+  gPad->SetGridy();
+  if (hSigmaPi){
+    hSigmaPi->Draw("colz");
+    profSigmaPi->Draw("same");
+  }
+  cPidPerformance3->cd(2);
+  gPad->SetLogz();
+  gPad->SetLogx();
+  gPad->SetGridx();
+  gPad->SetGridy();
+  if (hSigmaKa){
+    hSigmaKa->Draw("colz");
+    profSigmaKa->Draw("same");
+  }
+  cPidPerformance3->cd(3);
+  gPad->SetGridx();
+  gPad->SetGridy();
+  gPad->SetLogz();
+  gPad->SetLogx();
+  if (hSigmaPro){
+    hSigmaPro->Draw("colz");
+    profSigmaPro->Draw("same");
+  }
+
+  if(includeStartTime && pidQAdir){   
+    TLine *l1=new TLine(0.,0.,5.,0.);
+    TLine *l2=new TLine(0.,1.,5.,1.); 
+    TCanvas *cPidPerformance3T0 = new TCanvas("cPidPerformance3T0","summary of pid performance - sigmas - with StartTime",1200,500);  
+    cPidPerformance3T0->Divide(3,1);
+    cPidPerformance3T0->cd(1);        
+    gPad->SetLogz();
+    gPad->SetLogx();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hSigmaPiT0->Draw("colz");    
+    hSigmaPiT0_1->Draw("same");
+    hSigmaPiT0_2->Draw("same");
+    l1->Draw("same");
+    l2->Draw("same");
+    cPidPerformance3T0->cd(2);
+    gPad->SetLogz();
+    gPad->SetLogx();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hSigmaKaT0->Draw("colz");
+    hSigmaKaT0_1->Draw("same");
+    hSigmaKaT0_2->Draw("same");
+    l1->Draw("same");
+    l2->Draw("same");
+    cPidPerformance3T0->cd(3);  
+    gPad->SetLogz();
+    gPad->SetLogx();
+    gPad->SetGridx();
+    gPad->SetGridy();
+    hSigmaProT0->Draw("colz");
+    hSigmaProT0_1->Draw("same");
+    hSigmaProT0_2->Draw("same");
+    l1->Draw("same");
+    l2->Draw("same");                     
+  }
+
+  if (hSigmaPi){
+    hSigmaPi->Write();
+    profSigmaPi->Write();
+  }
+  if (hSigmaKa){ 
+    hSigmaKa->Write();
+    profSigmaKa->Write();
+  }
+  if (hSigmaPro){
+    hSigmaPro->Write();
+    profSigmaPro->Write();
+  }
+  if(includeStartTime && pidQAdir){
+    hSigmaPiT0->Write();
+    hSigmaKaT0->Write();
+    hSigmaProT0->Write();
       
-             hSigmaPiT0_1->Write();
-             hSigmaKaT0_1->Write();
-             hSigmaProT0_1->Write();
-
-             hSigmaPiT0_2->Write();
-             hSigmaKaT0_2->Write();
-             hSigmaProT0_2->Write();
-           }
-         }
-       TH2F* hTOFmatchedDzVsStrip = (TH2F*)generalList->FindObject("hTOFmatchedDzVsStrip");
-       
-       if (displayAll){
-         TCanvas* cProfile = new TCanvas("cProfile","cProfile",50,50,750,550);
-               gStyle->SetOptStat(0);
-               hTOFmatchedDzVsStrip->Draw("colz");
-               Int_t binmin = hTOFmatchedDzVsStrip->GetYaxis()->FindBin(-3);
-               Int_t binmax = hTOFmatchedDzVsStrip->GetYaxis()->FindBin(3);
-               TProfile* hDzProfile = (TProfile*)hTOFmatchedDzVsStrip->ProfileX("hDzProfile",binmin, binmax);
-               hDzProfile->SetLineWidth(3);
-               hDzProfile->Draw("same");
-               cProfile->SetGridx();
-               cProfile->SetGridy();
-               TString plotDir(Form("Plots_run%d",runNumber));
-               gSystem->Exec(Form("mkdir %s",plotDir.Data()));
-               cPidPerformance3->Print(Form("%s/PID_sigmas.png",plotDir.Data()));
-               if(includeStartTime){
-                 if(pidQAdir)
-                   cPidPerformance3T0->Print(Form("%s/%i_PID_sigmaStartTime.png", plotDir.Data()));  
-               }
-               cPidPerformance->Print(Form("%s/PID.png",plotDir.Data()));
-               cPidPerformanceTh->Print(Form("%s/PID_theoreticalTimes.png",plotDir.Data()));
-               cPidPerformance2->Print(Form("%s/PID_ExpTimes.png",plotDir.Data()));
-               cMatchingPerformance->Print(Form("%s/Matching.png",plotDir.Data()));
-               cT0detector->Print(Form("%s/T0Detector.png",plotDir.Data()));
-               cTrackProperties->Print(Form("%s/TrackProperties.png",plotDir.Data()));
-               residuals->Print(Form("%s/Residuals.png",plotDir.Data()));
-               cProfile->Print(Form("%s/ProfileDZvsStripNumber.png",plotDir.Data()));
-       }
-       fout->cd();
-       hTOFmatchedDzVsStrip->Write();
-       fout->Close();
-       fin->Close();
-       return 0;
+    hSigmaPiT0_1->Write();
+    hSigmaKaT0_1->Write();
+    hSigmaProT0_1->Write();
+
+    hSigmaPiT0_2->Write();
+    hSigmaKaT0_2->Write();
+    hSigmaProT0_2->Write();
+  }
+    
+
+  if (displayAll){
+    TCanvas* cProfile = new TCanvas("cProfile","cProfile",50,50,750,550);
+    gStyle->SetOptStat(0);
+    hTOFmatchedDzVsStrip->Draw("colz");
+    Int_t binmin = hTOFmatchedDzVsStrip->GetYaxis()->FindBin(-3);
+    Int_t binmax = hTOFmatchedDzVsStrip->GetYaxis()->FindBin(3);
+    TProfile* hDzProfile = (TProfile*)hTOFmatchedDzVsStrip->ProfileX("hDzProfile",binmin, binmax);
+    hDzProfile->SetLineWidth(3);
+    hDzProfile->Draw("same");
+    cProfile->SetGridx();
+    cProfile->SetGridy();
+    TString plotDir(Form("Plots_run%d",runNumber));
+    gSystem->Exec(Form("mkdir %s",plotDir.Data()));
+    cPidPerformance->Print(Form("%s/PID.png",plotDir.Data()));
+    cPidPerformance2->Print(Form("%s/PID_ExpTimes.png",plotDir.Data()));
+    cPidPerformance3->Print(Form("%s/PID_sigmas.png",plotDir.Data()));
+    if(includeStartTime && pidQAdir)
+      cPidPerformance3T0->Print(Form("%s/%i_PID_sigmaStartTime.png", plotDir.Data()));  
+    cMatchingPerformance->Print(Form("%s/Matching.png",plotDir.Data()));
+    residuals->Print(Form("%s/Residuals.png",plotDir.Data()));
+    cProfile->Print(Form("%s/ProfileDZvsStripNumber.png",plotDir.Data()));
+    if (displayAll) {
+      cPidPerformanceTh->Print(Form("%s/PID_theoreticalTimes.png",plotDir.Data()));
+      cT0detector->Print(Form("%s/T0Detector.png",plotDir.Data()));
+      cTrackProperties->Print(Form("%s/TrackProperties.png",plotDir.Data()));
+    }
+  }
+  fout->cd();
+  fout->Close();
+  fin->Close();
+  return 0;
 }
 
 //----------------------------------------------------------
 char * SetQAtrainOutputName(Int_t run=0,Int_t year=2011,char *period="LHC11a", char* pass="cpass1",Int_t trainId=76){
   
-       char infile[200];
-       sprintf(infile,"alien:///alice/data/%i/%s/000%d/ESDs/%s/QA%i/QAresults.root",year,period,runNumber,pass,trainId);
-       return infile;
+  char infile[200];
+  sprintf(infile,"alien:///alice/data/%i/%s/000%d/ESDs/%s/QA%i/QAresults.root",year,period,runNumber,pass,trainId);
+  return infile;
   
 }