ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

///////////////////////////////////////////////////////////////////////
//                                                                   //
//  Produces the data needed to calculate the TOF quality assurance. //
//  QA objects are 1 & 2 Dimensional histograms.                     //
//  author: S.Arcelli                                                //
//                                                                   //
///////////////////////////////////////////////////////////////////////

#include <TClonesArray.h>
//#include <TFile.h> 
//#include <TH1I.h> 
#include <TH1F.h> 
#include <TH2F.h> 
#include <TTree.h>
#include <TMath.h>

#include "AliLog.h"

#include "AliTOFdigit.h"
#include "AliTOFSDigit.h"
#include "AliTOFhitT0.h"
#include "AliTOFQADataMakerSim.h"
#include "AliQAChecker.h"
#include "AliTOFGeometry.h"


ClassImp(AliTOFQADataMakerSim)
           
//____________________________________________________________________________ 
  AliTOFQADataMakerSim::AliTOFQADataMakerSim() : 
  AliQADataMakerSim(AliQAv1::GetDetName(AliQAv1::kTOF), "TOF Quality Assurance Data Maker")
{
  //
  // ctor
  //
}

//____________________________________________________________________________ 
AliTOFQADataMakerSim::AliTOFQADataMakerSim(const AliTOFQADataMakerSim& qadm) :
  AliQADataMakerSim()
{
  //
  //copy ctor 
  //
  SetName((const char*)qadm.GetName()) ; 
  SetTitle((const char*)qadm.GetTitle()); 
}

//__________________________________________________________________
AliTOFQADataMakerSim& AliTOFQADataMakerSim::operator = (const AliTOFQADataMakerSim& qadm )
{
  //
  // assignment operator.
  //
  this->~AliTOFQADataMakerSim();
  new(this) AliTOFQADataMakerSim(qadm);
  return *this;
}
 
//____________________________________________________________________________ 
void AliTOFQADataMakerSim::InitHits()
{
  //
  // create Hits histograms in Hits subdir
  //

  const Bool_t expert   = kTRUE ; 
  const Bool_t image    = kTRUE ;   
  
  TH1F * h0 = new TH1F("hTOFHits",    "Number of TOF Hits per event;TOF hit number;Counts ",101, -1., 100.) ; 
  h0->Sumw2() ;
  Add2HitsList(h0, 0, !expert, image) ;

  TH1F * h1  = new TH1F("hTOFHitsTime", "Hits Time Spectrum in TOF (ns);Simulated TOF time [ns];Counts", 25000, 0., 610.) ; 
  h1->Sumw2() ;
  Add2HitsList(h1, 1, !expert, image) ;

  TH1F * h2  = new TH1F("hTOFHitsLength", "Length Spectrum in TOF (cm);Track length from primary vertex till hit TOF pad [cm];Counts", 700, 0., 700) ; 
  h2->Sumw2() ;
  Add2HitsList(h2, 2, !expert, image) ;

  TH2F * h3  = new TH2F("hTOFHitsClusMap","Hits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; 
  h3->Sumw2() ;
  h3->GetYaxis()->SetTitleOffset(1.15);
  Add2HitsList(h3, 3, !expert, image) ;
  //
  ClonePerTrigClass(AliQAv1::kHITS); // this should be the last line
}

//____________________________________________________________________________ 
void AliTOFQADataMakerSim::InitDigits()
{
  //
  // create Digits histograms in Digits subdir
  //

  const Bool_t expert   = kTRUE ; 
  const Bool_t image    = kTRUE ; 
  
  TH1F * h0 = new TH1F("hTOFDigits",    "Number of TOF Digit per event;TOF digit number;Counts ",101, -1., 100.) ;
  h0->Sumw2() ;
  Add2DigitsList(h0, 0, !expert, image) ;

  TH1F * h1  = new TH1F("hTOFDigitsTime", "Digits Time Spectrum in TOF (ns);Digitized TOF time [ns];Counts", 25000, 0., 610.) ; 
  h1->Sumw2() ;
  Add2DigitsList(h1, 1, !expert, image) ;

  TH1F * h2  = new TH1F("hTOFDigitsToT", "Digits ToT Spectrum in TOF (ns);Digitized ToT time [ns];Counts", 1000, 0., 48.8) ; 
  h2->Sumw2() ;
  Add2DigitsList(h2, 2, !expert, image) ;

  TH2F * h3  = new TH2F("hTOFDigitsClusMap","Digits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; 
  h3->Sumw2() ;
  h3->GetYaxis()->SetTitleOffset(1.15);
  Add2DigitsList(h3, 3, !expert, image) ;
  //
  ClonePerTrigClass(AliQAv1::kDIGITS); // this should be the last line
}

//____________________________________________________________________________ 
void AliTOFQADataMakerSim::InitSDigits()
{
  //
  // create SDigits histograms in SDigits subdir
  //

  const Bool_t expert   = kTRUE ; 
  const Bool_t image    = kTRUE ; 
  
  TH1F * h0 = new TH1F("hTOFSDigits",    "Number of TOF SDigits per event;TOF sdigit number;Counts ",101, -1., 100.) ;
  h0->Sumw2() ;
  Add2SDigitsList(h0, 0, !expert, image) ;

  TH1F * h1  = new TH1F("hTOFSDigitsTime", "SDigits Time Spectrum in TOF (ns);SDigitized TOF time [ns];Counts", 25000, 0., 610) ; 
  h1->Sumw2() ;
  Add2SDigitsList(h1, 1, !expert, image) ;

  TH2F * h2  = new TH2F("hTOFSDigitsClusMap","SDigits vs TOF eta-phi;2*strip+padz (eta);48*sector+padx (phi)",183, -0.5, 182.5,865,-0.5,864.5) ; 
  h2->Sumw2() ;
  h2->GetYaxis()->SetTitleOffset(1.15);
  Add2SDigitsList(h2, 2, !expert, image) ;
  //
  ClonePerTrigClass(AliQAv1::kSDIGITS); // this should be the last line
}

//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeHits()
{
  //
  //make QA data from Hits
  //

  Int_t in[5];
  Int_t out[5];

  Int_t nentries= fHitsArray->GetEntriesFast();
  if(nentries<=0) {
    FillHitsData(0,-1.) ; 
  } else{
    FillHitsData(0,nentries) ; 
  }
  TIter next(fHitsArray) ; 
  AliTOFhitT0 * hit ; 
  while ( (hit = dynamic_cast<AliTOFhitT0 *>(next())) ) {

    FillHitsData(1, hit->GetTof()*1.E9) ;//in ns
    FillHitsData(2, hit->GetLen()) ;//in cm
  
    in[0] = hit->GetSector();
    in[1] = hit->GetPlate();
    in[2]= hit->GetStrip();
    in[3]= hit->GetPadx();
    in[4]= hit->GetPadz();
    GetMapIndeces(in,out);
    FillHitsData(3, out[0],out[1]) ;//hit map
  }
}


//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeHits(TTree * hitTree)
{
  //
  // make QA data from Hit Tree
  //
  if(!hitTree){
    AliError("can't get the tree with TOF hits !");
    return; 
  }	

  TBranch * branch = hitTree->GetBranch("TOF") ;

  if (!branch ) {
    AliError("TOF branch in Hit Tree not found") ; 
    return;
  }

  if (fHitsArray) 
    fHitsArray->Clear() ; 
  else 
    fHitsArray = new TClonesArray("AliTOFhitT0", 1000) ;
  
  branch->SetAddress(&fHitsArray);
  for (Int_t ientry = 0 ; ientry < branch->GetEntries() ; ientry++) {
    branch->GetEntry(ientry) ; 
    MakeHits() ; 
    fHitsArray->Clear() ; 
  } 	
  //
  IncEvCountCycleHits();
  IncEvCountTotalHits();
  //
}

//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeDigits()
{
  //
  // makes data from Digits
  //
  
  Double_t tdc2ns=AliTOFGeometry::TdcBinWidth()*1E-3;
  Double_t tot2ns=AliTOFGeometry::ToTBinWidth()*1E-3;
  Int_t in[5];
  Int_t out[5];

  Int_t nentries=fDigitsArray->GetEntriesFast();
  if(nentries<=0){
    FillDigitsData(0,-1.) ; 
  }else{
    FillDigitsData(0,nentries) ; 
  } 

  TIter next(fDigitsArray) ; 
  AliTOFdigit * digit ; 
  while ( (digit = dynamic_cast<AliTOFdigit *>(next())) ) {
    
    FillDigitsData(1, digit->GetTdc()*tdc2ns) ;//in ns
    FillDigitsData(2, digit->GetToT()*tot2ns) ;//in ns

    in[0] = digit->GetSector();
    in[1] = digit->GetPlate();
    in[2] = digit->GetStrip();
    in[3] = digit->GetPadx();
    in[4]= digit->GetPadz();
    GetMapIndeces(in,out);
    FillDigitsData(3, out[0],out[1]) ;//digit map
  }

}


//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeDigits(TTree * digitTree)
{
  //
  // makes data from Digit Tree
  //
  if (fDigitsArray) 
    fDigitsArray->Clear() ; 
  else 
    fDigitsArray = new TClonesArray("AliTOFdigit", 1000) ; 
  
  TBranch * branch = digitTree->GetBranch("TOF") ;
  if ( ! branch ) {
    AliError("TOF branch in Digit Tree not found") ; 
    return;
  }
  branch->SetAddress(&fDigitsArray);
  branch->GetEntry(0);
  MakeDigits(); 
  //
  IncEvCountCycleDigits();
  IncEvCountTotalDigits();
  //
}

//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeSDigits()
{
  //
  // makes data from SDigits
  //
  
  Double_t tdc2ns=AliTOFGeometry::TdcBinWidth()*1E-3;
  Int_t in[5];
  Int_t out[5];

  Int_t nentries=fSDigitsArray->GetEntriesFast();
  if(nentries<=0){
    FillSDigitsData(0,-1.) ; 
  }else{
    FillSDigitsData(0,nentries) ; 
  } 

  TIter next(fSDigitsArray) ; 
  AliTOFSDigit * sdigit ; 
  while ( (sdigit = dynamic_cast<AliTOFSDigit *>(next())) ) {
    
    for(Int_t i=0;i<sdigit->GetNDigits();i++){
      FillSDigitsData(1, sdigit->GetTdc(i)*tdc2ns) ;//in ns
    }

    in[0] = sdigit->GetSector();
    in[1] = sdigit->GetPlate();
    in[2] = sdigit->GetStrip();
    in[3] = sdigit->GetPadx();
    in[4]= sdigit->GetPadz();
    GetMapIndeces(in,out);
    FillSDigitsData(2, out[0],out[1]) ;//sdigit map
  }
}

//____________________________________________________________________________
void AliTOFQADataMakerSim::MakeSDigits(TTree * sdigitTree)
{
  //
  // makes data from SDigit Tree
  //
  if (fSDigitsArray) 
    fSDigitsArray->Clear() ; 
  else 
    fSDigitsArray = new TClonesArray("AliTOFSDigit", 1000) ; 
  
  TBranch * branch = sdigitTree->GetBranch("TOF") ;
  if ( ! branch ) {
    AliError("TOF branch in SDigit Tree not found") ; 
    return;
  }
  branch->SetAddress(&fSDigitsArray);
  branch->GetEntry(0); 
  MakeSDigits(); 
  //
  IncEvCountCycleSDigits();
  IncEvCountTotalSDigits();  
  //
}

//____________________________________________________________________________ 
void AliTOFQADataMakerSim::StartOfDetectorCycle()
{
  //
  //Detector specific actions at start of cycle
  //to be implemented  
}

//____________________________________________________________________________ 
void AliTOFQADataMakerSim::EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray ** list)
{
  //Detector specific actions at end of cycle
  // do the QA checking
  ResetEventTrigClasses();
  AliQAChecker::Instance()->Run(AliQAv1::kTOF, task, list) ;  
}
//____________________________________________________________________________
void AliTOFQADataMakerSim::GetMapIndeces(Int_t* in , Int_t* out)
{
  //
  //return appropriate indeces for the theta-phi map
  //

  Int_t npadX = AliTOFGeometry::NpadX();
  Int_t npadZ = AliTOFGeometry::NpadZ();
  Int_t nStripA = AliTOFGeometry::NStripA();
  Int_t nStripB = AliTOFGeometry::NStripB();
  Int_t nStripC = AliTOFGeometry::NStripC();

  Int_t isector = in[0];
  Int_t iplate = in[1];
  Int_t istrip = in[2];
  Int_t ipadX = in[3]; 
  Int_t ipadZ = in[4]; 
  
  Int_t stripOffset = 0;
  switch (iplate) {
  case 0:
    stripOffset = 0;
      break;
  case 1:
    stripOffset = nStripC;
    break;
  case 2:
    stripOffset = nStripC+nStripB;
    break;
  case 3:
    stripOffset = nStripC+nStripB+nStripA;
    break;
  case 4:
    stripOffset = nStripC+nStripB+nStripA+nStripB;
    break;
  default:
    AliError(Form("Wrong plate number in TOF (%d) !",iplate));
    break;
  };
  Int_t zindex=npadZ*(istrip+stripOffset)+(ipadZ+1);
  Int_t phiindex=npadX*isector+ipadX+1;
  out[0]=zindex;  
  out[1]=phiindex;  
  
}
 AliTOFQADataMakerSim.cxx:1
 AliTOFQADataMakerSim.cxx:2
 AliTOFQADataMakerSim.cxx:3
 AliTOFQADataMakerSim.cxx:4
 AliTOFQADataMakerSim.cxx:5
 AliTOFQADataMakerSim.cxx:6
 AliTOFQADataMakerSim.cxx:7
 AliTOFQADataMakerSim.cxx:8
 AliTOFQADataMakerSim.cxx:9
 AliTOFQADataMakerSim.cxx:10
 AliTOFQADataMakerSim.cxx:11
 AliTOFQADataMakerSim.cxx:12
 AliTOFQADataMakerSim.cxx:13
 AliTOFQADataMakerSim.cxx:14
 AliTOFQADataMakerSim.cxx:15
 AliTOFQADataMakerSim.cxx:16
 AliTOFQADataMakerSim.cxx:17
 AliTOFQADataMakerSim.cxx:18
 AliTOFQADataMakerSim.cxx:19
 AliTOFQADataMakerSim.cxx:20
 AliTOFQADataMakerSim.cxx:21
 AliTOFQADataMakerSim.cxx:22
 AliTOFQADataMakerSim.cxx:23
 AliTOFQADataMakerSim.cxx:24
 AliTOFQADataMakerSim.cxx:25
 AliTOFQADataMakerSim.cxx:26
 AliTOFQADataMakerSim.cxx:27
 AliTOFQADataMakerSim.cxx:28
 AliTOFQADataMakerSim.cxx:29
 AliTOFQADataMakerSim.cxx:30
 AliTOFQADataMakerSim.cxx:31
 AliTOFQADataMakerSim.cxx:32
 AliTOFQADataMakerSim.cxx:33
 AliTOFQADataMakerSim.cxx:34
 AliTOFQADataMakerSim.cxx:35
 AliTOFQADataMakerSim.cxx:36
 AliTOFQADataMakerSim.cxx:37
 AliTOFQADataMakerSim.cxx:38
 AliTOFQADataMakerSim.cxx:39
 AliTOFQADataMakerSim.cxx:40
 AliTOFQADataMakerSim.cxx:41
 AliTOFQADataMakerSim.cxx:42
 AliTOFQADataMakerSim.cxx:43
 AliTOFQADataMakerSim.cxx:44
 AliTOFQADataMakerSim.cxx:45
 AliTOFQADataMakerSim.cxx:46
 AliTOFQADataMakerSim.cxx:47
 AliTOFQADataMakerSim.cxx:48
 AliTOFQADataMakerSim.cxx:49
 AliTOFQADataMakerSim.cxx:50
 AliTOFQADataMakerSim.cxx:51
 AliTOFQADataMakerSim.cxx:52
 AliTOFQADataMakerSim.cxx:53
 AliTOFQADataMakerSim.cxx:54
 AliTOFQADataMakerSim.cxx:55
 AliTOFQADataMakerSim.cxx:56
 AliTOFQADataMakerSim.cxx:57
 AliTOFQADataMakerSim.cxx:58
 AliTOFQADataMakerSim.cxx:59
 AliTOFQADataMakerSim.cxx:60
 AliTOFQADataMakerSim.cxx:61
 AliTOFQADataMakerSim.cxx:62
 AliTOFQADataMakerSim.cxx:63
 AliTOFQADataMakerSim.cxx:64
 AliTOFQADataMakerSim.cxx:65
 AliTOFQADataMakerSim.cxx:66
 AliTOFQADataMakerSim.cxx:67
 AliTOFQADataMakerSim.cxx:68
 AliTOFQADataMakerSim.cxx:69
 AliTOFQADataMakerSim.cxx:70
 AliTOFQADataMakerSim.cxx:71
 AliTOFQADataMakerSim.cxx:72
 AliTOFQADataMakerSim.cxx:73
 AliTOFQADataMakerSim.cxx:74
 AliTOFQADataMakerSim.cxx:75
 AliTOFQADataMakerSim.cxx:76
 AliTOFQADataMakerSim.cxx:77
 AliTOFQADataMakerSim.cxx:78
 AliTOFQADataMakerSim.cxx:79
 AliTOFQADataMakerSim.cxx:80
 AliTOFQADataMakerSim.cxx:81
 AliTOFQADataMakerSim.cxx:82
 AliTOFQADataMakerSim.cxx:83
 AliTOFQADataMakerSim.cxx:84
 AliTOFQADataMakerSim.cxx:85
 AliTOFQADataMakerSim.cxx:86
 AliTOFQADataMakerSim.cxx:87
 AliTOFQADataMakerSim.cxx:88
 AliTOFQADataMakerSim.cxx:89
 AliTOFQADataMakerSim.cxx:90
 AliTOFQADataMakerSim.cxx:91
 AliTOFQADataMakerSim.cxx:92
 AliTOFQADataMakerSim.cxx:93
 AliTOFQADataMakerSim.cxx:94
 AliTOFQADataMakerSim.cxx:95
 AliTOFQADataMakerSim.cxx:96
 AliTOFQADataMakerSim.cxx:97
 AliTOFQADataMakerSim.cxx:98
 AliTOFQADataMakerSim.cxx:99
 AliTOFQADataMakerSim.cxx:100
 AliTOFQADataMakerSim.cxx:101
 AliTOFQADataMakerSim.cxx:102
 AliTOFQADataMakerSim.cxx:103
 AliTOFQADataMakerSim.cxx:104
 AliTOFQADataMakerSim.cxx:105
 AliTOFQADataMakerSim.cxx:106
 AliTOFQADataMakerSim.cxx:107
 AliTOFQADataMakerSim.cxx:108
 AliTOFQADataMakerSim.cxx:109
 AliTOFQADataMakerSim.cxx:110
 AliTOFQADataMakerSim.cxx:111
 AliTOFQADataMakerSim.cxx:112
 AliTOFQADataMakerSim.cxx:113
 AliTOFQADataMakerSim.cxx:114
 AliTOFQADataMakerSim.cxx:115
 AliTOFQADataMakerSim.cxx:116
 AliTOFQADataMakerSim.cxx:117
 AliTOFQADataMakerSim.cxx:118
 AliTOFQADataMakerSim.cxx:119
 AliTOFQADataMakerSim.cxx:120
 AliTOFQADataMakerSim.cxx:121
 AliTOFQADataMakerSim.cxx:122
 AliTOFQADataMakerSim.cxx:123
 AliTOFQADataMakerSim.cxx:124
 AliTOFQADataMakerSim.cxx:125
 AliTOFQADataMakerSim.cxx:126
 AliTOFQADataMakerSim.cxx:127
 AliTOFQADataMakerSim.cxx:128
 AliTOFQADataMakerSim.cxx:129
 AliTOFQADataMakerSim.cxx:130
 AliTOFQADataMakerSim.cxx:131
 AliTOFQADataMakerSim.cxx:132
 AliTOFQADataMakerSim.cxx:133
 AliTOFQADataMakerSim.cxx:134
 AliTOFQADataMakerSim.cxx:135
 AliTOFQADataMakerSim.cxx:136
 AliTOFQADataMakerSim.cxx:137
 AliTOFQADataMakerSim.cxx:138
 AliTOFQADataMakerSim.cxx:139
 AliTOFQADataMakerSim.cxx:140
 AliTOFQADataMakerSim.cxx:141
 AliTOFQADataMakerSim.cxx:142
 AliTOFQADataMakerSim.cxx:143
 AliTOFQADataMakerSim.cxx:144
 AliTOFQADataMakerSim.cxx:145
 AliTOFQADataMakerSim.cxx:146
 AliTOFQADataMakerSim.cxx:147
 AliTOFQADataMakerSim.cxx:148
 AliTOFQADataMakerSim.cxx:149
 AliTOFQADataMakerSim.cxx:150
 AliTOFQADataMakerSim.cxx:151
 AliTOFQADataMakerSim.cxx:152
 AliTOFQADataMakerSim.cxx:153
 AliTOFQADataMakerSim.cxx:154
 AliTOFQADataMakerSim.cxx:155
 AliTOFQADataMakerSim.cxx:156
 AliTOFQADataMakerSim.cxx:157
 AliTOFQADataMakerSim.cxx:158
 AliTOFQADataMakerSim.cxx:159
 AliTOFQADataMakerSim.cxx:160
 AliTOFQADataMakerSim.cxx:161
 AliTOFQADataMakerSim.cxx:162
 AliTOFQADataMakerSim.cxx:163
 AliTOFQADataMakerSim.cxx:164
 AliTOFQADataMakerSim.cxx:165
 AliTOFQADataMakerSim.cxx:166
 AliTOFQADataMakerSim.cxx:167
 AliTOFQADataMakerSim.cxx:168
 AliTOFQADataMakerSim.cxx:169
 AliTOFQADataMakerSim.cxx:170
 AliTOFQADataMakerSim.cxx:171
 AliTOFQADataMakerSim.cxx:172
 AliTOFQADataMakerSim.cxx:173
 AliTOFQADataMakerSim.cxx:174
 AliTOFQADataMakerSim.cxx:175
 AliTOFQADataMakerSim.cxx:176
 AliTOFQADataMakerSim.cxx:177
 AliTOFQADataMakerSim.cxx:178
 AliTOFQADataMakerSim.cxx:179
 AliTOFQADataMakerSim.cxx:180
 AliTOFQADataMakerSim.cxx:181
 AliTOFQADataMakerSim.cxx:182
 AliTOFQADataMakerSim.cxx:183
 AliTOFQADataMakerSim.cxx:184
 AliTOFQADataMakerSim.cxx:185
 AliTOFQADataMakerSim.cxx:186
 AliTOFQADataMakerSim.cxx:187
 AliTOFQADataMakerSim.cxx:188
 AliTOFQADataMakerSim.cxx:189
 AliTOFQADataMakerSim.cxx:190
 AliTOFQADataMakerSim.cxx:191
 AliTOFQADataMakerSim.cxx:192
 AliTOFQADataMakerSim.cxx:193
 AliTOFQADataMakerSim.cxx:194
 AliTOFQADataMakerSim.cxx:195
 AliTOFQADataMakerSim.cxx:196
 AliTOFQADataMakerSim.cxx:197
 AliTOFQADataMakerSim.cxx:198
 AliTOFQADataMakerSim.cxx:199
 AliTOFQADataMakerSim.cxx:200
 AliTOFQADataMakerSim.cxx:201
 AliTOFQADataMakerSim.cxx:202
 AliTOFQADataMakerSim.cxx:203
 AliTOFQADataMakerSim.cxx:204
 AliTOFQADataMakerSim.cxx:205
 AliTOFQADataMakerSim.cxx:206
 AliTOFQADataMakerSim.cxx:207
 AliTOFQADataMakerSim.cxx:208
 AliTOFQADataMakerSim.cxx:209
 AliTOFQADataMakerSim.cxx:210
 AliTOFQADataMakerSim.cxx:211
 AliTOFQADataMakerSim.cxx:212
 AliTOFQADataMakerSim.cxx:213
 AliTOFQADataMakerSim.cxx:214
 AliTOFQADataMakerSim.cxx:215
 AliTOFQADataMakerSim.cxx:216
 AliTOFQADataMakerSim.cxx:217
 AliTOFQADataMakerSim.cxx:218
 AliTOFQADataMakerSim.cxx:219
 AliTOFQADataMakerSim.cxx:220
 AliTOFQADataMakerSim.cxx:221
 AliTOFQADataMakerSim.cxx:222
 AliTOFQADataMakerSim.cxx:223
 AliTOFQADataMakerSim.cxx:224
 AliTOFQADataMakerSim.cxx:225
 AliTOFQADataMakerSim.cxx:226
 AliTOFQADataMakerSim.cxx:227
 AliTOFQADataMakerSim.cxx:228
 AliTOFQADataMakerSim.cxx:229
 AliTOFQADataMakerSim.cxx:230
 AliTOFQADataMakerSim.cxx:231
 AliTOFQADataMakerSim.cxx:232
 AliTOFQADataMakerSim.cxx:233
 AliTOFQADataMakerSim.cxx:234
 AliTOFQADataMakerSim.cxx:235
 AliTOFQADataMakerSim.cxx:236
 AliTOFQADataMakerSim.cxx:237
 AliTOFQADataMakerSim.cxx:238
 AliTOFQADataMakerSim.cxx:239
 AliTOFQADataMakerSim.cxx:240
 AliTOFQADataMakerSim.cxx:241
 AliTOFQADataMakerSim.cxx:242
 AliTOFQADataMakerSim.cxx:243
 AliTOFQADataMakerSim.cxx:244
 AliTOFQADataMakerSim.cxx:245
 AliTOFQADataMakerSim.cxx:246
 AliTOFQADataMakerSim.cxx:247
 AliTOFQADataMakerSim.cxx:248
 AliTOFQADataMakerSim.cxx:249
 AliTOFQADataMakerSim.cxx:250
 AliTOFQADataMakerSim.cxx:251
 AliTOFQADataMakerSim.cxx:252
 AliTOFQADataMakerSim.cxx:253
 AliTOFQADataMakerSim.cxx:254
 AliTOFQADataMakerSim.cxx:255
 AliTOFQADataMakerSim.cxx:256
 AliTOFQADataMakerSim.cxx:257
 AliTOFQADataMakerSim.cxx:258
 AliTOFQADataMakerSim.cxx:259
 AliTOFQADataMakerSim.cxx:260
 AliTOFQADataMakerSim.cxx:261
 AliTOFQADataMakerSim.cxx:262
 AliTOFQADataMakerSim.cxx:263
 AliTOFQADataMakerSim.cxx:264
 AliTOFQADataMakerSim.cxx:265
 AliTOFQADataMakerSim.cxx:266
 AliTOFQADataMakerSim.cxx:267
 AliTOFQADataMakerSim.cxx:268
 AliTOFQADataMakerSim.cxx:269
 AliTOFQADataMakerSim.cxx:270
 AliTOFQADataMakerSim.cxx:271
 AliTOFQADataMakerSim.cxx:272
 AliTOFQADataMakerSim.cxx:273
 AliTOFQADataMakerSim.cxx:274
 AliTOFQADataMakerSim.cxx:275
 AliTOFQADataMakerSim.cxx:276
 AliTOFQADataMakerSim.cxx:277
 AliTOFQADataMakerSim.cxx:278
 AliTOFQADataMakerSim.cxx:279
 AliTOFQADataMakerSim.cxx:280
 AliTOFQADataMakerSim.cxx:281
 AliTOFQADataMakerSim.cxx:282
 AliTOFQADataMakerSim.cxx:283
 AliTOFQADataMakerSim.cxx:284
 AliTOFQADataMakerSim.cxx:285
 AliTOFQADataMakerSim.cxx:286
 AliTOFQADataMakerSim.cxx:287
 AliTOFQADataMakerSim.cxx:288
 AliTOFQADataMakerSim.cxx:289
 AliTOFQADataMakerSim.cxx:290
 AliTOFQADataMakerSim.cxx:291
 AliTOFQADataMakerSim.cxx:292
 AliTOFQADataMakerSim.cxx:293
 AliTOFQADataMakerSim.cxx:294
 AliTOFQADataMakerSim.cxx:295
 AliTOFQADataMakerSim.cxx:296
 AliTOFQADataMakerSim.cxx:297
 AliTOFQADataMakerSim.cxx:298
 AliTOFQADataMakerSim.cxx:299
 AliTOFQADataMakerSim.cxx:300
 AliTOFQADataMakerSim.cxx:301
 AliTOFQADataMakerSim.cxx:302
 AliTOFQADataMakerSim.cxx:303
 AliTOFQADataMakerSim.cxx:304
 AliTOFQADataMakerSim.cxx:305
 AliTOFQADataMakerSim.cxx:306
 AliTOFQADataMakerSim.cxx:307
 AliTOFQADataMakerSim.cxx:308
 AliTOFQADataMakerSim.cxx:309
 AliTOFQADataMakerSim.cxx:310
 AliTOFQADataMakerSim.cxx:311
 AliTOFQADataMakerSim.cxx:312
 AliTOFQADataMakerSim.cxx:313
 AliTOFQADataMakerSim.cxx:314
 AliTOFQADataMakerSim.cxx:315
 AliTOFQADataMakerSim.cxx:316
 AliTOFQADataMakerSim.cxx:317
 AliTOFQADataMakerSim.cxx:318
 AliTOFQADataMakerSim.cxx:319
 AliTOFQADataMakerSim.cxx:320
 AliTOFQADataMakerSim.cxx:321
 AliTOFQADataMakerSim.cxx:322
 AliTOFQADataMakerSim.cxx:323
 AliTOFQADataMakerSim.cxx:324
 AliTOFQADataMakerSim.cxx:325
 AliTOFQADataMakerSim.cxx:326
 AliTOFQADataMakerSim.cxx:327
 AliTOFQADataMakerSim.cxx:328
 AliTOFQADataMakerSim.cxx:329
 AliTOFQADataMakerSim.cxx:330
 AliTOFQADataMakerSim.cxx:331
 AliTOFQADataMakerSim.cxx:332
 AliTOFQADataMakerSim.cxx:333
 AliTOFQADataMakerSim.cxx:334
 AliTOFQADataMakerSim.cxx:335
 AliTOFQADataMakerSim.cxx:336
 AliTOFQADataMakerSim.cxx:337
 AliTOFQADataMakerSim.cxx:338
 AliTOFQADataMakerSim.cxx:339
 AliTOFQADataMakerSim.cxx:340
 AliTOFQADataMakerSim.cxx:341
 AliTOFQADataMakerSim.cxx:342
 AliTOFQADataMakerSim.cxx:343
 AliTOFQADataMakerSim.cxx:344
 AliTOFQADataMakerSim.cxx:345
 AliTOFQADataMakerSim.cxx:346
 AliTOFQADataMakerSim.cxx:347
 AliTOFQADataMakerSim.cxx:348
 AliTOFQADataMakerSim.cxx:349
 AliTOFQADataMakerSim.cxx:350
 AliTOFQADataMakerSim.cxx:351
 AliTOFQADataMakerSim.cxx:352
 AliTOFQADataMakerSim.cxx:353
 AliTOFQADataMakerSim.cxx:354
 AliTOFQADataMakerSim.cxx:355
 AliTOFQADataMakerSim.cxx:356
 AliTOFQADataMakerSim.cxx:357
 AliTOFQADataMakerSim.cxx:358
 AliTOFQADataMakerSim.cxx:359
 AliTOFQADataMakerSim.cxx:360
 AliTOFQADataMakerSim.cxx:361
 AliTOFQADataMakerSim.cxx:362
 AliTOFQADataMakerSim.cxx:363
 AliTOFQADataMakerSim.cxx:364
 AliTOFQADataMakerSim.cxx:365
 AliTOFQADataMakerSim.cxx:366
 AliTOFQADataMakerSim.cxx:367
 AliTOFQADataMakerSim.cxx:368
 AliTOFQADataMakerSim.cxx:369
 AliTOFQADataMakerSim.cxx:370
 AliTOFQADataMakerSim.cxx:371
 AliTOFQADataMakerSim.cxx:372
 AliTOFQADataMakerSim.cxx:373
 AliTOFQADataMakerSim.cxx:374
 AliTOFQADataMakerSim.cxx:375
 AliTOFQADataMakerSim.cxx:376
 AliTOFQADataMakerSim.cxx:377
 AliTOFQADataMakerSim.cxx:378
 AliTOFQADataMakerSim.cxx:379
 AliTOFQADataMakerSim.cxx:380
 AliTOFQADataMakerSim.cxx:381
 AliTOFQADataMakerSim.cxx:382
 AliTOFQADataMakerSim.cxx:383
 AliTOFQADataMakerSim.cxx:384
 AliTOFQADataMakerSim.cxx:385
 AliTOFQADataMakerSim.cxx:386
 AliTOFQADataMakerSim.cxx:387
 AliTOFQADataMakerSim.cxx:388
 AliTOFQADataMakerSim.cxx:389
 AliTOFQADataMakerSim.cxx:390
 AliTOFQADataMakerSim.cxx:391
 AliTOFQADataMakerSim.cxx:392
 AliTOFQADataMakerSim.cxx:393
 AliTOFQADataMakerSim.cxx:394
 AliTOFQADataMakerSim.cxx:395
 AliTOFQADataMakerSim.cxx:396
 AliTOFQADataMakerSim.cxx:397
 AliTOFQADataMakerSim.cxx:398
 AliTOFQADataMakerSim.cxx:399
 AliTOFQADataMakerSim.cxx:400
 AliTOFQADataMakerSim.cxx:401
 AliTOFQADataMakerSim.cxx:402
 AliTOFQADataMakerSim.cxx:403
 AliTOFQADataMakerSim.cxx:404
 AliTOFQADataMakerSim.cxx:405
 AliTOFQADataMakerSim.cxx:406
 AliTOFQADataMakerSim.cxx:407
 AliTOFQADataMakerSim.cxx:408
 AliTOFQADataMakerSim.cxx:409
 AliTOFQADataMakerSim.cxx:410
 AliTOFQADataMakerSim.cxx:411
 AliTOFQADataMakerSim.cxx:412
 AliTOFQADataMakerSim.cxx:413
 AliTOFQADataMakerSim.cxx:414
 AliTOFQADataMakerSim.cxx:415