ROOT logo
/**************************************************************************
 * Copyright(c) 2007-2009, 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.                  *
 **************************************************************************/

/* $Id$ */

//  *************************************************************
//  Checks the quality assurance 
//  by comparing with reference data
//  contained in a DB
//  -------------------------------------------------------------
//  W. Ferrarese + P. Cerello Feb 2008
//  INFN Torino
//  Melinda Siciliano Aug 2008


// --- ROOT system ---
#include <TH2.h>
// --- Standard library ---

// --- AliRoot header files ---
#include "AliITSQADataMakerRec.h"
#include "AliITSQASPDDataMakerRec.h"
#include "AliITSQASDDDataMakerRec.h"
#include "AliITSQASSDDataMakerRec.h"
#include "AliQAv1.h"
#include "AliQAChecker.h"
#include "AliITSQAChecker.h"
#include "AliITSRecPoint.h"
#include "AliITSRecPointContainer.h"
#include "AliRawReader.h"
#include "AliESDEvent.h"
#include "AliESDtrack.h"
#include "AliMultiplicity.h"
#include "AliITSgeomTGeo.h"

//class TH2;
//class TH2F;
class AliESDVertex;
class AliLog;
class TTree;

ClassImp(AliITSQADataMakerRec)

//____________________________________________________________________________ 
AliITSQADataMakerRec::AliITSQADataMakerRec(Bool_t kMode, Short_t subDet, Short_t ldc) :
AliQADataMakerRec(AliQAv1::GetDetName(AliQAv1::kITS), "ITS Quality Assurance Data Maker"),
  fkOnline(kMode),
  fSubDetector(subDet),
  fLDC(ldc),
  fRunNumber(0),
  fEventNumber(0),
  fSelectedTaskIndex(AliQAv1::kNULLTASKINDEX),
  fSPDDataMaker(NULL),
  fSDDDataMaker(NULL),
  fSSDDataMaker(NULL)

{
  //ctor used to discriminate OnLine-Offline analysis
  if(fSubDetector < 0 || fSubDetector > 3) {
    AliError("Error: fSubDetector number out of range; return\n");
  }

  // Initialization for RAW data 
  if(fSubDetector == 0 || fSubDetector == 1) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM::Create SPD DataMakerRec\n");
    fSPDDataMaker = new AliITSQASPDDataMakerRec(this,fkOnline);
  }
  if(fSubDetector == 0 || fSubDetector == 2) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM::Create SDD DataMakerRec\n");
    fSDDDataMaker = new AliITSQASDDDataMakerRec(this,fkOnline);
  }
  if(fSubDetector == 0 || fSubDetector == 3) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM::Create SSD DataMakerRec\n");
    fSSDDataMaker = new AliITSQASSDDataMakerRec(this,fkOnline);
  }
}

//____________________________________________________________________________ 
AliITSQADataMakerRec::~AliITSQADataMakerRec(){
  // destructor
  if(fSPDDataMaker)delete fSPDDataMaker;
  if(fSDDDataMaker)delete fSDDDataMaker;
  if(fSSDDataMaker)delete fSSDDataMaker;
}

//____________________________________________________________________________ 
AliITSQADataMakerRec::AliITSQADataMakerRec(const AliITSQADataMakerRec& qadm) :
  AliQADataMakerRec(),
  fkOnline(qadm.fkOnline),
  fSubDetector(qadm.fSubDetector),
  fLDC(qadm.fLDC),
  fRunNumber(qadm.fRunNumber),
  fEventNumber(qadm.fEventNumber),
  fSelectedTaskIndex(qadm.fSelectedTaskIndex),
  fSPDDataMaker(NULL),
  fSDDDataMaker(NULL),
  fSSDDataMaker(NULL)

{
  //copy ctor 
  SetName((const char*)qadm.GetName()) ; 
  SetTitle((const char*)qadm.GetTitle());
}

//__________________________________________________________________
AliITSQADataMakerRec& AliITSQADataMakerRec::operator = (const AliITSQADataMakerRec& qac )
{
  // Equal operator.
  this->~AliITSQADataMakerRec();
  new(this) AliITSQADataMakerRec(qac);
  return *this;
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::StartOfDetectorCycle()
{
  //Detector specific actions at start of cycle
  AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM::Start of ITS Cycle\n");
  ResetEventTrigClasses(); // reset triggers list to select all histos
  ResetEvCountCycle();
  //  
  if(fSubDetector == 0 || fSubDetector == 1) fSPDDataMaker->StartOfDetectorCycle();
  if(fSubDetector == 0 || fSubDetector == 2) fSDDDataMaker->StartOfDetectorCycle();
  if(fSubDetector == 0 || fSubDetector == 3) fSSDDataMaker->StartOfDetectorCycle();
}

//____________________________________________________________________________
void AliITSQADataMakerRec::StartOfCycle(AliQAv1::TASKINDEX_t task, Int_t run, const Bool_t sameCycle) 
{ 
  // Start a cycle of QA data acquistion
  fSelectedTaskIndex=task;
  AliQADataMakerRec::StartOfCycle(task,run,sameCycle);
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::EndOfDetectorCycle(AliQAv1::TASKINDEX_t task, TObjArray** list)
{
  // launch the QA checking
  ResetEventTrigClasses();
  //
  AliInfo(Form("End of Dedetctor Cycle called for %s\n",AliQAv1::GetTaskName(task).Data() ));
  //
  for (Int_t specie = 0 ; specie < AliRecoParam::kNSpecies ; specie++) {
    //
    if(!AliQAv1::Instance()->IsEventSpecieSet(specie)) continue;
    SetEventSpecie(AliRecoParam::ConvertIndex(specie));
    Int_t idnumber=list[specie]->GetUniqueID();
    //printf("specie %s \t id number == %d\n",AliRecoParam::GetEventSpecieName(specie),idnumber);
    if(idnumber==40||idnumber==0){
      //AliInfo(Form("No check for %s\n",AliQAv1::GetTaskName(task).Data() ))
      continue;
    } //skip kDigitsR and not filled TobjArray specie
    else{
      AliDebug(AliQAv1::GetQADebugLevel(),"AliITSDM instantiates checker with Run(AliQAv1::kITS, task, list[specie])\n"); 
      if(fSubDetector == 0 || fSubDetector == 1) fSPDDataMaker->EndOfDetectorCycle(task, list);//[/*GetEventSpecie()*/specie]);
      if(fSubDetector == 0 || fSubDetector == 2) fSDDDataMaker->EndOfDetectorCycle(task, list);//[/*GetEventSpecie()*/specie]);
      if(fSubDetector == 0 || fSubDetector == 3) fSSDDataMaker->EndOfDetectorCycle(task, list);//[/*GetEventSpecie()*/specie]);
      
      
      AliQAChecker *qac = AliQAChecker::Instance();
      AliITSQAChecker *qacb = (AliITSQAChecker *) qac->GetDetQAChecker(0);
      Int_t subdet=GetSubDet();
      qacb->SetSubDet(subdet);
      
      if(subdet== 0 ){
	qacb->SetTaskOffset(fSPDDataMaker->GetOffset(task,specie), fSDDDataMaker->GetOffset(task,specie), fSSDDataMaker->GetOffset(task,specie)); //Setting the offset for the QAChecker list
	qacb->SetHisto(fSPDDataMaker->GetTaskHisto(task), fSDDDataMaker->GetTaskHisto(task), fSSDDataMaker->GetTaskHisto(task));
      }
      else
	if(subdet!=0){
	  Int_t offset=GetDetTaskOffset(subdet, task,specie);
	  qacb->SetDetTaskOffset(subdet,offset);
	  Int_t histo=GetDetTaskHisto(subdet, task);
	  qacb->SetDetHisto(subdet,histo);
	}
      
      qac->Run( AliQAv1::kITS , task, list);
      
    }//end else unique id
    
  }//end for
}

//____________________________________________________________________________ 
//void AliITSQADataMakerRec::EndOfDetectorCycle(const char * /*fgDataName*/)
//{
//eventually used for different  AliQAChecker::Instance()->Run
//}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::InitRaws() {
  // Initialization of RAW data histograms  

  //if(fRawsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries()) return;
	
  if(fSubDetector == 0 || fSubDetector == 1) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SPD InitRaws\n");
    fSPDDataMaker->InitRaws();
  }
  if(fSubDetector == 0 || fSubDetector == 2) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SDD InitRaws\n");
    
    fSDDDataMaker->SetOffset(AliQAv1::kRAWS, fRawsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(),AliRecoParam::AConvert(fEventSpecie));
    fSDDDataMaker->InitRaws();
  }
  if(fSubDetector == 0 || fSubDetector == 3) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SSD InitRaws\n");
    
    fSSDDataMaker->SetOffset(AliQAv1::kRAWS, fRawsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(),AliRecoParam::AConvert(fEventSpecie));
    fSSDDataMaker->InitRaws();
  }
  fRawsQAList[AliRecoParam::AConvert(fEventSpecie)]->SetUniqueID(10);
  //
  ClonePerTrigClass(AliQAv1::kRAWS); // this should be the last line
}

//____________________________________________________________________________
void AliITSQADataMakerRec::MakeRaws(AliRawReader* rawReader)
{ 
  // Fill QA for RAW   
  //return ; 

  SetRunNumber(rawReader->GetRunNumber());

  if(fSubDetector == 0 || fSubDetector == 1)  {
    fSPDDataMaker->MakeRaws(rawReader) ; 
  }
  
  if(fSubDetector == 0 || fSubDetector == 2) {
    fSDDDataMaker->MakeRaws(rawReader) ; 
  }

  if(fSubDetector == 0 || fSubDetector == 3) fSSDDataMaker->MakeRaws(rawReader);
  //
  IncEvCountCycleRaws();
  IncEvCountTotalRaws();
  //
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::InitDigits()
{

  // Initialization for DIGITS
  if(fSubDetector == 0 || fSubDetector == 1) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SPD InitDigits\n");

    fSPDDataMaker->InitDigits();
  }
  if(fSubDetector == 0 || fSubDetector == 2) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SDD InitDigits\n");
    fSDDDataMaker->SetOffset(AliQAv1::kDIGITSR, fDigitsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(),AliRecoParam::AConvert(fEventSpecie));

    fSDDDataMaker->InitDigits();
  }
  if(fSubDetector == 0 || fSubDetector == 3) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SSD InitDigits\n");
    fSSDDataMaker->SetOffset(AliQAv1::kDIGITSR, fDigitsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(),AliRecoParam::AConvert(fEventSpecie));

    fSSDDataMaker->InitDigits();
  }
  fDigitsQAList[AliRecoParam::AConvert(fEventSpecie)]->SetUniqueID(40);
  //
  ClonePerTrigClass(AliQAv1::kDIGITS); // this should be the last line
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::MakeDigits(TTree * digitsTree)
{

  
  // Fill QA for recpoints
  if(fSubDetector == 0 || fSubDetector == 1) {
    fSPDDataMaker->MakeDigits(digitsTree) ; 
  }
  
  if(fSubDetector == 0 || fSubDetector == 2) {
    fSDDDataMaker->MakeDigits(digitsTree) ; 
    
  }
  
  if(fSubDetector == 0 || fSubDetector == 3) fSSDDataMaker->MakeDigits(digitsTree);
  //
  IncEvCountCycleDigits();
  IncEvCountTotalDigits();
  //
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::InitRecPoints()
{

  // Initialization for RECPOINTS


  //if(fRecPointsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries()) return;
  if(fSubDetector == 0 || fSubDetector == 1) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SPD InitRecPoints\n");
    fSPDDataMaker->InitRecPoints();
  }
  if(fSubDetector == 0 || fSubDetector == 2) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SDD InitRecPoints\n");
    fSDDDataMaker->SetOffset(AliQAv1::kRECPOINTS, fRecPointsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(), AliRecoParam::AConvert(fEventSpecie));
    fSDDDataMaker->InitRecPoints();
  }
  if(fSubDetector == 0 || fSubDetector == 3) {
    AliDebug(AliQAv1::GetQADebugLevel(),"AliITSQADM:: SSD InitRecPoints\n");
    fSSDDataMaker->SetOffset(AliQAv1::kRECPOINTS, fRecPointsQAList[AliRecoParam::AConvert(fEventSpecie)]->GetEntries(),AliRecoParam::AConvert(fEventSpecie));
    fSSDDataMaker->InitRecPoints();
  }

  fRecPointsQAList[AliRecoParam::AConvert(fEventSpecie)]->SetUniqueID(20);
  if(fSubDetector == 0){
    Int_t offset = fRecPointsQAList [AliRecoParam::AConvert(fEventSpecie)]->GetEntries();
    const Bool_t expert   = kTRUE ; 
    const Bool_t image    = kTRUE ; 
    TH2F* hPhiEta[6];
    for (Int_t iLay=0;iLay<6;iLay++) {
      hPhiEta[iLay]=new TH2F(Form("Phi_vs_Eta_ITS_Layer%d",iLay+1),Form("Phi_vs_Eta_ITS_Layer%d",iLay+1),30,-1.5,1.5,200,0.,2*TMath::Pi());
      hPhiEta[iLay]->GetXaxis()->SetTitle("Pseudorapidity");
      hPhiEta[iLay]->GetYaxis()->SetTitle("#varphi [rad]");
      Add2RecPointsList(hPhiEta[iLay], iLay + offset, !expert, image);	    
      //delete hPhiEta[iLay];
    }
	  
  }
  //
  ClonePerTrigClass(AliQAv1::kRECPOINTS); // this should be the last line	
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::MakeRecPoints(TTree * clustersTree)
{ 
  // Fill QA for recpoints

  if(fSubDetector == 0 || fSubDetector == 1) {
    fSPDDataMaker->MakeRecPoints(clustersTree) ; 
  }
    
  if(fSubDetector == 0 || fSubDetector == 2) {
    fSDDDataMaker->MakeRecPoints(clustersTree) ; 
  }
  
  if(fSubDetector == 0 || fSubDetector == 3) fSSDDataMaker->MakeRecPoints(clustersTree);


  
  if(fSubDetector == 0){

    // Check id histograms already created for this Event Specie
    AliITSRecPointContainer* rpcont=AliITSRecPointContainer::Instance();
    TClonesArray *recpoints =NULL;
    if(fkOnline){
      rpcont->FetchClusters(0,clustersTree,GetEventNumber());
    } 
    else{
      rpcont->FetchClusters(0,clustersTree);
    }
    if(!rpcont->GetStatusOK()){
      AliError("cannot access to ITS recpoints");
      return;
    }
  
    Int_t offset = fRecPointsQAList [AliRecoParam::AConvert(fEventSpecie)]->GetEntries();
    Float_t cluGlo[3] = {0.,0.,0.};
    Int_t lay, lad, det; 
    // Fill QA for recpoints
    for(Int_t module=0; module<rpcont->GetNumberOfModules();module++){
      //  AliInfo(Form("Module %d\n",module));
      recpoints = rpcont->UncheckedGetClusters(module);
      AliITSgeomTGeo::GetModuleId(module, lay, lad, det);
      for(Int_t j=0;j<recpoints->GetEntries();j++){
	AliITSRecPoint *rcp = (AliITSRecPoint*)recpoints->At(j);    
	//Check id histograms already created for this Event Specie
	rcp->GetGlobalXYZ(cluGlo);
	Double_t rad=TMath::Sqrt(cluGlo[0]*cluGlo[0]+cluGlo[1]*cluGlo[1]+cluGlo[2]*cluGlo[2]);
	Double_t phi= TMath::Pi() + TMath::ATan2(-cluGlo[1],-cluGlo[0]);
	Double_t theta = TMath::ACos(cluGlo[2]/rad);
	Double_t eta = 100.;
	if(AreEqual(rad,0.) == kFALSE) {
	  if(theta<=1.e-14){ eta=30.; }
	  else { eta = -TMath::Log(TMath::Tan(theta/2.));}
	}
	//	printf("=========================>hlt   rcp->GetLayer() = %d \n",rcp->GetLayer());
	FillRecPointsData(rcp->GetLayer() + offset - 6,eta,phi);
      }
    }
  }
  //
  IncEvCountCycleRecPoints();
  IncEvCountTotalRecPoints();
  //
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::FillRecPoint(AliITSRecPoint rcp)
{

  // Fill QA for recpoints
  Float_t cluGlo[3] = {0.,0.,0.};
  Int_t offset = fRecPointsQAList [AliRecoParam::AConvert(fEventSpecie)]->GetEntries();
  // Check id histograms already created for this Event Specie
  rcp.GetGlobalXYZ(cluGlo);
  Double_t rad=TMath::Sqrt(cluGlo[0]*cluGlo[0]+cluGlo[1]*cluGlo[1]+cluGlo[2]*cluGlo[2]);
  Double_t phi= TMath::Pi() + TMath::ATan2(-cluGlo[1],-cluGlo[0]);
  Double_t theta = TMath::ACos(cluGlo[2]/rad);
  Double_t eta = 100.;
  if(AreEqual(rad,0.)==kFALSE) {
    if(theta<=1.e-14){eta=30.;}
    else    {eta = -TMath::Log(TMath::Tan(theta/2.));}
  }
  FillRecPointsData( rcp.GetLayer() + offset - 6, eta,phi);	

}

//____________________________________________________________________________ 
TH2F *AliITSQADataMakerRec::GetITSGlobalHisto(Int_t layer)
{

  Int_t offset = fRecPointsQAList [AliRecoParam::AConvert(fEventSpecie)]->GetEntries();
  return ((TH2F *) GetRecPointsData( layer + offset - 6));//local distribution
}

//____________________________________________________________________________ 
void AliITSQADataMakerRec::InitESDs()
{

  // Create ESDs histograms in ESDs subdir

  Bool_t expertHistogram = kTRUE;

  TH1F *hESDClustersMI = 
    new TH1F("hESDClustersMI", "N ITS clusters per track (MI); N clusters; Counts",
	     7, -0.5, 6.5);
  hESDClustersMI->Sumw2();
  hESDClustersMI->SetMinimum(0);
  Add2ESDsList(hESDClustersMI, 0);

  TH1F *hESDClusterMapMI =
    new TH1F("hESDClusterMapMI", "N tracks with point Layer (MI); Layer; N tracks",
	     6, -0.5, 5.5);
  hESDClusterMapMI->Sumw2();
  hESDClusterMapMI->SetMinimum(0);
  Add2ESDsList(hESDClusterMapMI, 1, expertHistogram);

  TH1F *hESDClustersSA = 
    new TH1F("hESDClustersSA", "N ITS clusters per track (SA); N clusters; Counts",
	     7, -0.5, 6.5);
  hESDClustersSA->Sumw2();
  hESDClustersSA->SetMinimum(0);
  Add2ESDsList(hESDClustersSA, 2);

  TH1F *hESDClusterMapSA =
    new TH1F("hESDClusterMapSA", "N tracks with point Layer (SA); Layer; N tracks",
	     6, -0.5, 5.5);
  hESDClusterMapSA->Sumw2();
  hESDClusterMapSA->SetMinimum(0);
  Add2ESDsList(hESDClusterMapSA, 3, expertHistogram);

  TH1F *hSPDVertexX = 
    new TH1F("hSPDVertexX","SPD Vertex x; x [cm]; N events",
	     10000,-2,2);
  hSPDVertexX->Sumw2();
  Add2ESDsList(hSPDVertexX, 4);

  TH1F *hSPDVertexY = 
    new TH1F("hSPDVertexY","SPD Vertex y; y [cm]; N events",
	     10000,-2,2);
  hSPDVertexY->Sumw2();
  Add2ESDsList(hSPDVertexY, 5);

  TH1F *hSPDVertexZ = 
    new TH1F("hSPDVertexZ","SPD Vertex Z; z [cm]; N events",
	     10000,-20,20);
  hSPDVertexZ->Sumw2();
  Add2ESDsList(hSPDVertexZ, 6);

  TH1F *hSPDVertexContrOverMult =
    new TH1F("hSPDVertexContrOverMult","SPD Vertex: contributors / multiplicity; N contributors / SPD multiplicity; N events",
	     100,-4,20);
  hSPDVertexContrOverMult->Sumw2();
  Add2ESDsList(hSPDVertexContrOverMult, 7, expertHistogram);

  TH1F *hTrkVertexX = 
    new TH1F("hTrkVertexX","ITS+TPC Trk Vertex x; x [cm]; N events",
	     10000,-2,2);
  hTrkVertexX->Sumw2();
  Add2ESDsList(hTrkVertexX, 8, expertHistogram);

  TH1F *hTrkVertexY = 
    new TH1F("hTrkVertexY","ITS+TPC Trk Vertex y; y [cm]; N events",
	     10000,-2,2);
  hTrkVertexY->Sumw2();
  Add2ESDsList(hTrkVertexY, 9, expertHistogram);

  TH1F *hTrkVertexZ = 
    new TH1F("hTrkVertexZ","ITS+TPC Trk Vertex Z; z [cm]; N events",
	     10000,-20,20);
  hTrkVertexZ->Sumw2();
  Add2ESDsList(hTrkVertexZ, 10, expertHistogram);

  TH1F *hTrkVertexContrOverITSrefit5 =
    new TH1F("hTrkVertexContrOverITSrefit5","ITS+TPC Trk Vertex: contributors / tracks; N contributors / N trks kITSrefit with 5 or 6 clusters; N events",
	     100,-4,2);
  hTrkVertexContrOverITSrefit5->Sumw2();
  Add2ESDsList(hTrkVertexContrOverITSrefit5, 11, expertHistogram);

  TH1F *hSPDTrkVertexDeltaX =
    new TH1F("hSPDTrkVertexDeltaX","Comparison of SPD and Trk vertices: x; xSPD-xTrk [cm]; N events",
	     1000,-1,1);
  hSPDTrkVertexDeltaX->Sumw2();
  Add2ESDsList(hSPDTrkVertexDeltaX, 12, expertHistogram);
    
  TH1F *hSPDTrkVertexDeltaY =
    new TH1F("hSPDTrkVertexDeltaY","Comparison of SPD and Trk vertices: y; ySPD-yTrk [cm]; N events",
	     1000,-1,1);
  hSPDTrkVertexDeltaY->Sumw2();
  Add2ESDsList(hSPDTrkVertexDeltaY, 13, expertHistogram);
    
  TH1F *hSPDTrkVertexDeltaZ =
    new TH1F("hSPDTrkVertexDeltaZ","Comparison of SPD and Trk vertices: z; zSPD-zTrk [cm]; N events",
	     1000,-1,1);
  hSPDTrkVertexDeltaZ->Sumw2();
  Add2ESDsList(hSPDTrkVertexDeltaZ, 14);
    
  // SPD Tracklets

  TH1F* hSPDTracklets = 
    new TH1F("hSPDTracklets","N SPD Tracklets; N tracklets; Counts",300,0.,300.);
  hSPDTracklets->Sumw2();
  Add2ESDsList(hSPDTracklets, 15); 

  TH2F* hSPDTrackletsvsFiredChips0 = 
    new TH2F("hSPDTrackletsvsFiredChips0","N SPD Tracklets vs N FiredChips Layer0",
	     300,0.,300.,300,0.,300.);
  hSPDTrackletsvsFiredChips0->GetXaxis()->SetTitle("N FiredChips Layer0"); 
  hSPDTrackletsvsFiredChips0->GetYaxis()->SetTitle("N SPD Tracklets"); 
  hSPDTrackletsvsFiredChips0->Sumw2();
  Add2ESDsList(hSPDTrackletsvsFiredChips0, 16, expertHistogram ); 

  TH2F* hSPDTrackletsvsFiredChips1 = 
    new TH2F("hSPDTrackletsvsFiredChips1","N SPD Tracklets vs N FiredChips Layer1",
	     300,0.,300.,300,0.,300.);
  hSPDTrackletsvsFiredChips1->GetXaxis()->SetTitle("N FiredChips Layer1"); 
  hSPDTrackletsvsFiredChips1->GetYaxis()->SetTitle("N SPD Tracklets"); 
  hSPDTrackletsvsFiredChips1->Sumw2();
  Add2ESDsList(hSPDTrackletsvsFiredChips1, 17, expertHistogram); 

  TH2F* hSPDFiredChips1vsFiredChips0 = 
    new TH2F("hSPDFiredChips1vsFiredChips0","N FiredChips Layer1 vs N FiredChips Layer0",
	     300,0.,300.,300,0.,300.);
  hSPDFiredChips1vsFiredChips0->GetXaxis()->SetTitle("N FiredChips Layer0"); 
  hSPDFiredChips1vsFiredChips0->GetYaxis()->SetTitle("N FiredChips Layer1"); 
  hSPDFiredChips1vsFiredChips0->Sumw2();
  Add2ESDsList(hSPDFiredChips1vsFiredChips0, 18, expertHistogram ); 
    
  TH1F* hSPDTrackletsDePhi = 
    new TH1F("hSPDTrackletsDePhi","DeltaPhi SPD Tracklets; DeltaPhi [rad]; N events",200,-0.2,0.2);
  hSPDTrackletsDePhi->Sumw2();
  Add2ESDsList(hSPDTrackletsDePhi, 19); 
    
  TH1F* hSPDTrackletsPhi = 
    new TH1F("hSPDTrackletsPhi","Phi SPD Tracklets; Phi [rad]; N events",1000,0.,2*TMath::Pi());
  hSPDTrackletsPhi->Sumw2();
  Add2ESDsList(hSPDTrackletsPhi, 20); 
    
  TH1F* hSPDTrackletsDeTheta = 
    new TH1F("hSPDTrackletsDeTheta","DeltaTheta SPD Tracklets; DeltaTheta [rad]; N events",200,-0.2,0.2);
  hSPDTrackletsDeTheta->Sumw2();
  Add2ESDsList(hSPDTrackletsDeTheta, 21); 

  TH1F* hSPDTrackletsTheta = 
    new TH1F("hSPDTrackletsTheta","Theta SPD Tracklets; Theta [rad]; N events",500,0.,TMath::Pi());
  hSPDTrackletsTheta->Sumw2();
  Add2ESDsList(hSPDTrackletsTheta, 22); 

  // map of layers skipped by tracking (set in AliITSRecoParam)
  TH1F *hESDSkippedLayers = 
    new TH1F("hESDSkippedLayers", "Map of layers skipped by tracking; Layer; Skipped",
	     6, -0.5, 5.5);
  hESDSkippedLayers->Sumw2();
  hESDSkippedLayers->SetMinimum(0);
  Add2ESDsList(hESDSkippedLayers, 23, expertHistogram);

  fESDsQAList[AliRecoParam::AConvert(fEventSpecie)]->SetUniqueID(30);
  //
  ClonePerTrigClass(AliQAv1::kESDS); // this should be the last line
}

//____________________________________________________________________________
void AliITSQADataMakerRec::MakeESDs(AliESDEvent *esd)
{
  // Make QA data from ESDs

  // Check id histograms already created for this Event Specie
  //  if ( ! GetESDsData(0) )
  //    InitESDs() ;
 
  const Int_t nESDTracks = esd->GetNumberOfTracks();
  Int_t nITSrefit5 = 0; 

  Int_t idet,status;
  Float_t xloc,zloc;

  // loop on tracks
  AliInfo(Form("Filling histograms for ESD. Number of tracks %d",nESDTracks)); 
  for(Int_t i = 0; i < nESDTracks; i++) {
    
    AliESDtrack *track = esd->GetTrack(i);
    
    Int_t nclsITS = track->GetNcls(0);

    Bool_t itsrefit=kFALSE,tpcin=kFALSE,itsin=kFALSE;
    if ((track->GetStatus() & AliESDtrack::kITSrefit)) itsrefit=kTRUE;
    if ((track->GetStatus() & AliESDtrack::kTPCin)) tpcin=kTRUE;     
    if ((track->GetStatus() & AliESDtrack::kITSin)) itsin=kTRUE;     
    if(nclsITS>=5 && itsrefit) nITSrefit5++;

    if(tpcin) {
      FillESDsData(0,nclsITS);
    }
    if(itsin && !tpcin){
      FillESDsData(2,nclsITS);
    }

    for(Int_t layer=0; layer<6; layer++) {

      if(TESTBIT(track->GetITSClusterMap(),layer)) {
	if(tpcin) {
	  FillESDsData(1,layer);
	} else {
	  FillESDsData(3,layer);
	}
      }
      track->GetITSModuleIndexInfo(layer,idet,status,xloc,zloc);
      if(status==3) SetESDsDataBinContent(23,layer,1);
    }     

  } // end loop on tracks

  // vertices
  const AliESDVertex *vtxSPD = esd->GetPrimaryVertexSPD();
  const AliESDVertex *vtxTrk = esd->GetPrimaryVertexTracks();

  Int_t mult = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetNumberOfTracklets();
  AliInfo(Form("Multiplicity %d ; Number of SPD vert contributors %d",mult,vtxSPD->GetNContributors()));
  if(mult>0)
    FillESDsData(7,(Float_t)(vtxSPD->GetNContributors())/(Float_t)mult);

  if(nITSrefit5>0)
    FillESDsData(11,(Float_t)(vtxTrk->GetNIndices())/(Float_t)nITSrefit5);

  if(vtxSPD->GetNContributors()>0) {
    FillESDsData(4,vtxSPD->GetX());
    FillESDsData(5,vtxSPD->GetY());
    FillESDsData(6,vtxSPD->GetZ());
  }

  if(vtxTrk->GetNContributors()>0) {
    FillESDsData(8,vtxTrk->GetX());
    FillESDsData(9,vtxTrk->GetY());
    FillESDsData(10,vtxTrk->GetZ());
  }

  if(vtxSPD->GetNContributors()>0 && 
     vtxTrk->GetNContributors()>0) {
    FillESDsData(12,vtxSPD->GetX()-vtxTrk->GetX());
    FillESDsData(13,vtxSPD->GetY()-vtxTrk->GetY());
    FillESDsData(14,vtxSPD->GetZ()-vtxTrk->GetZ());
  }

  // SPD Tracklets
  FillESDsData(15,mult);

  Short_t nFiredChips0 = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetNumberOfFiredChips(0);
  Short_t nFiredChips1 = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetNumberOfFiredChips(1);
  FillESDsData(16,nFiredChips0,mult);
  FillESDsData(17,nFiredChips1,mult);
  FillESDsData(18,nFiredChips0,nFiredChips1);

  // Loop over tracklets
  for (Int_t itr=0; itr<mult; ++itr) {
    Float_t dePhiTr   = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetDeltaPhi(itr);
    Float_t deThetaTr = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetDeltaTheta(itr);
    Float_t phiTr   = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetPhi(itr);
    Float_t thetaTr = ((AliMultiplicity*)(esd->GetMultiplicity()))->GetTheta(itr);
    FillESDsData(19,dePhiTr);
    FillESDsData(20,phiTr);
    FillESDsData(21,deThetaTr);
    FillESDsData(22,thetaTr);
  } // end loop on tracklets
  //
  IncEvCountCycleESDs();
  IncEvCountTotalESDs();
  //
}

//_________________________________________________________________
Int_t AliITSQADataMakerRec::GetDetTaskOffset(Int_t subdet,AliQAv1::TASKINDEX_t task, Int_t specie)
{
  //number of booked histos for the QAchecking Raws offset
  Int_t offset=0;
  switch(subdet)
    {
    case 1:
      offset=fSPDDataMaker->GetOffset(task,specie);
      //return offset;
      break;
    case 2:
      offset=fSDDDataMaker->GetOffset(task,specie);
      //return offset;
      break;
    case 3:
      offset=fSSDDataMaker->GetOffset(task,specie);
      //return offset;
      break;
    default:
      AliWarning("No specific subdetector (SPD, SDD, SSD) selected!! Offset set to zero \n");
      offset=0;
      //return offset;
      break;
    }
  return offset;
}

//____________________________________________________________________

Bool_t AliITSQADataMakerRec::AreEqual(Double_t a1,Double_t a2)
{
  const Double_t kEpsilon= 1.e-14;
  return TMath::Abs(a1-a2)<=kEpsilon*TMath::Abs(a1);      
}

//_________________________________________________________________
Int_t AliITSQADataMakerRec::GetDetTaskHisto(Int_t subdet,AliQAv1::TASKINDEX_t task)
{
  //return the number of histo booked for each the Raws Task 

  Int_t histo=0;
  switch(subdet)
    {
    case 1:
      histo=fSPDDataMaker->GetTaskHisto(task);
      //return histo;
      break;
    case 2:
      histo=fSDDDataMaker->GetTaskHisto(task);
      //return histo;
      break;
    case 3:
      histo=fSSDDataMaker->GetTaskHisto(task);
      //return histo;
      break;
    default:
      AliWarning("No specific subdetector (SPD, SDD, SSD) selected!! Offset set to zero \n");
      histo=0;
      //return histo;
      break;
    }
  //return offset;
  return histo;
}


//____________________________________________________________________

void AliITSQADataMakerRec::ResetDetector(AliQAv1::TASKINDEX_t task)
{
  //reset the detector histograms for a given task
  AliQADataMakerRec::ResetDetector(task);

  if(fSubDetector==0||fSubDetector==1)fSPDDataMaker->ResetDetector(task);
  
  if(fSubDetector==0||fSubDetector==2)fSDDDataMaker->ResetDetector(task);

  if(fSubDetector==0||fSubDetector==3)fSSDDataMaker->ResetDetector(task);
  
}


//____________________________________________________________________

AliITSDDLModuleMapSDD *AliITSQADataMakerRec::GetDDLSDDModuleMap()
{
  //return the SDD module map
  if(fSubDetector==2){return fSDDDataMaker->GetDDLSDDModuleMap();}
  else {return NULL;}
}

//____________________________________________________________________
Bool_t AliITSQADataMakerRec::ListExists(AliQAv1::TASKINDEX_t task) const
{
  //Check the existence of a list for a given task
  Bool_t havethelist=kFALSE;
  if( ( task == AliQAv1::kRAWS && fRawsQAList ) ||
      ( task == AliQAv1::kRECPOINTS && fRecPointsQAList ) ||
      ( task == AliQAv1::kDIGITSR && fDigitsQAList ) ||
      ( task == AliQAv1::kESDS && fESDsQAList ) ) havethelist=kTRUE;
  return havethelist;

}
 AliITSQADataMakerRec.cxx:1
 AliITSQADataMakerRec.cxx:2
 AliITSQADataMakerRec.cxx:3
 AliITSQADataMakerRec.cxx:4
 AliITSQADataMakerRec.cxx:5
 AliITSQADataMakerRec.cxx:6
 AliITSQADataMakerRec.cxx:7
 AliITSQADataMakerRec.cxx:8
 AliITSQADataMakerRec.cxx:9
 AliITSQADataMakerRec.cxx:10
 AliITSQADataMakerRec.cxx:11
 AliITSQADataMakerRec.cxx:12
 AliITSQADataMakerRec.cxx:13
 AliITSQADataMakerRec.cxx:14
 AliITSQADataMakerRec.cxx:15
 AliITSQADataMakerRec.cxx:16
 AliITSQADataMakerRec.cxx:17
 AliITSQADataMakerRec.cxx:18
 AliITSQADataMakerRec.cxx:19
 AliITSQADataMakerRec.cxx:20
 AliITSQADataMakerRec.cxx:21
 AliITSQADataMakerRec.cxx:22
 AliITSQADataMakerRec.cxx:23
 AliITSQADataMakerRec.cxx:24
 AliITSQADataMakerRec.cxx:25
 AliITSQADataMakerRec.cxx:26
 AliITSQADataMakerRec.cxx:27
 AliITSQADataMakerRec.cxx:28
 AliITSQADataMakerRec.cxx:29
 AliITSQADataMakerRec.cxx:30
 AliITSQADataMakerRec.cxx:31
 AliITSQADataMakerRec.cxx:32
 AliITSQADataMakerRec.cxx:33
 AliITSQADataMakerRec.cxx:34
 AliITSQADataMakerRec.cxx:35
 AliITSQADataMakerRec.cxx:36
 AliITSQADataMakerRec.cxx:37
 AliITSQADataMakerRec.cxx:38
 AliITSQADataMakerRec.cxx:39
 AliITSQADataMakerRec.cxx:40
 AliITSQADataMakerRec.cxx:41
 AliITSQADataMakerRec.cxx:42
 AliITSQADataMakerRec.cxx:43
 AliITSQADataMakerRec.cxx:44
 AliITSQADataMakerRec.cxx:45
 AliITSQADataMakerRec.cxx:46
 AliITSQADataMakerRec.cxx:47
 AliITSQADataMakerRec.cxx:48
 AliITSQADataMakerRec.cxx:49
 AliITSQADataMakerRec.cxx:50
 AliITSQADataMakerRec.cxx:51
 AliITSQADataMakerRec.cxx:52
 AliITSQADataMakerRec.cxx:53
 AliITSQADataMakerRec.cxx:54
 AliITSQADataMakerRec.cxx:55
 AliITSQADataMakerRec.cxx:56
 AliITSQADataMakerRec.cxx:57
 AliITSQADataMakerRec.cxx:58
 AliITSQADataMakerRec.cxx:59
 AliITSQADataMakerRec.cxx:60
 AliITSQADataMakerRec.cxx:61
 AliITSQADataMakerRec.cxx:62
 AliITSQADataMakerRec.cxx:63
 AliITSQADataMakerRec.cxx:64
 AliITSQADataMakerRec.cxx:65
 AliITSQADataMakerRec.cxx:66
 AliITSQADataMakerRec.cxx:67
 AliITSQADataMakerRec.cxx:68
 AliITSQADataMakerRec.cxx:69
 AliITSQADataMakerRec.cxx:70
 AliITSQADataMakerRec.cxx:71
 AliITSQADataMakerRec.cxx:72
 AliITSQADataMakerRec.cxx:73
 AliITSQADataMakerRec.cxx:74
 AliITSQADataMakerRec.cxx:75
 AliITSQADataMakerRec.cxx:76
 AliITSQADataMakerRec.cxx:77
 AliITSQADataMakerRec.cxx:78
 AliITSQADataMakerRec.cxx:79
 AliITSQADataMakerRec.cxx:80
 AliITSQADataMakerRec.cxx:81
 AliITSQADataMakerRec.cxx:82
 AliITSQADataMakerRec.cxx:83
 AliITSQADataMakerRec.cxx:84
 AliITSQADataMakerRec.cxx:85
 AliITSQADataMakerRec.cxx:86
 AliITSQADataMakerRec.cxx:87
 AliITSQADataMakerRec.cxx:88
 AliITSQADataMakerRec.cxx:89
 AliITSQADataMakerRec.cxx:90
 AliITSQADataMakerRec.cxx:91
 AliITSQADataMakerRec.cxx:92
 AliITSQADataMakerRec.cxx:93
 AliITSQADataMakerRec.cxx:94
 AliITSQADataMakerRec.cxx:95
 AliITSQADataMakerRec.cxx:96
 AliITSQADataMakerRec.cxx:97
 AliITSQADataMakerRec.cxx:98
 AliITSQADataMakerRec.cxx:99
 AliITSQADataMakerRec.cxx:100
 AliITSQADataMakerRec.cxx:101
 AliITSQADataMakerRec.cxx:102
 AliITSQADataMakerRec.cxx:103
 AliITSQADataMakerRec.cxx:104
 AliITSQADataMakerRec.cxx:105
 AliITSQADataMakerRec.cxx:106
 AliITSQADataMakerRec.cxx:107
 AliITSQADataMakerRec.cxx:108
 AliITSQADataMakerRec.cxx:109
 AliITSQADataMakerRec.cxx:110
 AliITSQADataMakerRec.cxx:111
 AliITSQADataMakerRec.cxx:112
 AliITSQADataMakerRec.cxx:113
 AliITSQADataMakerRec.cxx:114
 AliITSQADataMakerRec.cxx:115
 AliITSQADataMakerRec.cxx:116
 AliITSQADataMakerRec.cxx:117
 AliITSQADataMakerRec.cxx:118
 AliITSQADataMakerRec.cxx:119
 AliITSQADataMakerRec.cxx:120
 AliITSQADataMakerRec.cxx:121
 AliITSQADataMakerRec.cxx:122
 AliITSQADataMakerRec.cxx:123
 AliITSQADataMakerRec.cxx:124
 AliITSQADataMakerRec.cxx:125
 AliITSQADataMakerRec.cxx:126
 AliITSQADataMakerRec.cxx:127
 AliITSQADataMakerRec.cxx:128
 AliITSQADataMakerRec.cxx:129
 AliITSQADataMakerRec.cxx:130
 AliITSQADataMakerRec.cxx:131
 AliITSQADataMakerRec.cxx:132
 AliITSQADataMakerRec.cxx:133
 AliITSQADataMakerRec.cxx:134
 AliITSQADataMakerRec.cxx:135
 AliITSQADataMakerRec.cxx:136
 AliITSQADataMakerRec.cxx:137
 AliITSQADataMakerRec.cxx:138
 AliITSQADataMakerRec.cxx:139
 AliITSQADataMakerRec.cxx:140
 AliITSQADataMakerRec.cxx:141
 AliITSQADataMakerRec.cxx:142
 AliITSQADataMakerRec.cxx:143
 AliITSQADataMakerRec.cxx:144
 AliITSQADataMakerRec.cxx:145
 AliITSQADataMakerRec.cxx:146
 AliITSQADataMakerRec.cxx:147
 AliITSQADataMakerRec.cxx:148
 AliITSQADataMakerRec.cxx:149
 AliITSQADataMakerRec.cxx:150
 AliITSQADataMakerRec.cxx:151
 AliITSQADataMakerRec.cxx:152
 AliITSQADataMakerRec.cxx:153
 AliITSQADataMakerRec.cxx:154
 AliITSQADataMakerRec.cxx:155
 AliITSQADataMakerRec.cxx:156
 AliITSQADataMakerRec.cxx:157
 AliITSQADataMakerRec.cxx:158
 AliITSQADataMakerRec.cxx:159
 AliITSQADataMakerRec.cxx:160
 AliITSQADataMakerRec.cxx:161
 AliITSQADataMakerRec.cxx:162
 AliITSQADataMakerRec.cxx:163
 AliITSQADataMakerRec.cxx:164
 AliITSQADataMakerRec.cxx:165
 AliITSQADataMakerRec.cxx:166
 AliITSQADataMakerRec.cxx:167
 AliITSQADataMakerRec.cxx:168
 AliITSQADataMakerRec.cxx:169
 AliITSQADataMakerRec.cxx:170
 AliITSQADataMakerRec.cxx:171
 AliITSQADataMakerRec.cxx:172
 AliITSQADataMakerRec.cxx:173
 AliITSQADataMakerRec.cxx:174
 AliITSQADataMakerRec.cxx:175
 AliITSQADataMakerRec.cxx:176
 AliITSQADataMakerRec.cxx:177
 AliITSQADataMakerRec.cxx:178
 AliITSQADataMakerRec.cxx:179
 AliITSQADataMakerRec.cxx:180
 AliITSQADataMakerRec.cxx:181
 AliITSQADataMakerRec.cxx:182
 AliITSQADataMakerRec.cxx:183
 AliITSQADataMakerRec.cxx:184
 AliITSQADataMakerRec.cxx:185
 AliITSQADataMakerRec.cxx:186
 AliITSQADataMakerRec.cxx:187
 AliITSQADataMakerRec.cxx:188
 AliITSQADataMakerRec.cxx:189
 AliITSQADataMakerRec.cxx:190
 AliITSQADataMakerRec.cxx:191
 AliITSQADataMakerRec.cxx:192
 AliITSQADataMakerRec.cxx:193
 AliITSQADataMakerRec.cxx:194
 AliITSQADataMakerRec.cxx:195
 AliITSQADataMakerRec.cxx:196
 AliITSQADataMakerRec.cxx:197
 AliITSQADataMakerRec.cxx:198
 AliITSQADataMakerRec.cxx:199
 AliITSQADataMakerRec.cxx:200
 AliITSQADataMakerRec.cxx:201
 AliITSQADataMakerRec.cxx:202
 AliITSQADataMakerRec.cxx:203
 AliITSQADataMakerRec.cxx:204
 AliITSQADataMakerRec.cxx:205
 AliITSQADataMakerRec.cxx:206
 AliITSQADataMakerRec.cxx:207
 AliITSQADataMakerRec.cxx:208
 AliITSQADataMakerRec.cxx:209
 AliITSQADataMakerRec.cxx:210
 AliITSQADataMakerRec.cxx:211
 AliITSQADataMakerRec.cxx:212
 AliITSQADataMakerRec.cxx:213
 AliITSQADataMakerRec.cxx:214
 AliITSQADataMakerRec.cxx:215
 AliITSQADataMakerRec.cxx:216
 AliITSQADataMakerRec.cxx:217
 AliITSQADataMakerRec.cxx:218
 AliITSQADataMakerRec.cxx:219
 AliITSQADataMakerRec.cxx:220
 AliITSQADataMakerRec.cxx:221
 AliITSQADataMakerRec.cxx:222
 AliITSQADataMakerRec.cxx:223
 AliITSQADataMakerRec.cxx:224
 AliITSQADataMakerRec.cxx:225
 AliITSQADataMakerRec.cxx:226
 AliITSQADataMakerRec.cxx:227
 AliITSQADataMakerRec.cxx:228
 AliITSQADataMakerRec.cxx:229
 AliITSQADataMakerRec.cxx:230
 AliITSQADataMakerRec.cxx:231
 AliITSQADataMakerRec.cxx:232
 AliITSQADataMakerRec.cxx:233
 AliITSQADataMakerRec.cxx:234
 AliITSQADataMakerRec.cxx:235
 AliITSQADataMakerRec.cxx:236
 AliITSQADataMakerRec.cxx:237
 AliITSQADataMakerRec.cxx:238
 AliITSQADataMakerRec.cxx:239
 AliITSQADataMakerRec.cxx:240
 AliITSQADataMakerRec.cxx:241
 AliITSQADataMakerRec.cxx:242
 AliITSQADataMakerRec.cxx:243
 AliITSQADataMakerRec.cxx:244
 AliITSQADataMakerRec.cxx:245
 AliITSQADataMakerRec.cxx:246
 AliITSQADataMakerRec.cxx:247
 AliITSQADataMakerRec.cxx:248
 AliITSQADataMakerRec.cxx:249
 AliITSQADataMakerRec.cxx:250
 AliITSQADataMakerRec.cxx:251
 AliITSQADataMakerRec.cxx:252
 AliITSQADataMakerRec.cxx:253
 AliITSQADataMakerRec.cxx:254
 AliITSQADataMakerRec.cxx:255
 AliITSQADataMakerRec.cxx:256
 AliITSQADataMakerRec.cxx:257
 AliITSQADataMakerRec.cxx:258
 AliITSQADataMakerRec.cxx:259
 AliITSQADataMakerRec.cxx:260
 AliITSQADataMakerRec.cxx:261
 AliITSQADataMakerRec.cxx:262
 AliITSQADataMakerRec.cxx:263
 AliITSQADataMakerRec.cxx:264
 AliITSQADataMakerRec.cxx:265
 AliITSQADataMakerRec.cxx:266
 AliITSQADataMakerRec.cxx:267
 AliITSQADataMakerRec.cxx:268
 AliITSQADataMakerRec.cxx:269
 AliITSQADataMakerRec.cxx:270
 AliITSQADataMakerRec.cxx:271
 AliITSQADataMakerRec.cxx:272
 AliITSQADataMakerRec.cxx:273
 AliITSQADataMakerRec.cxx:274
 AliITSQADataMakerRec.cxx:275
 AliITSQADataMakerRec.cxx:276
 AliITSQADataMakerRec.cxx:277
 AliITSQADataMakerRec.cxx:278
 AliITSQADataMakerRec.cxx:279
 AliITSQADataMakerRec.cxx:280
 AliITSQADataMakerRec.cxx:281
 AliITSQADataMakerRec.cxx:282
 AliITSQADataMakerRec.cxx:283
 AliITSQADataMakerRec.cxx:284
 AliITSQADataMakerRec.cxx:285
 AliITSQADataMakerRec.cxx:286
 AliITSQADataMakerRec.cxx:287
 AliITSQADataMakerRec.cxx:288
 AliITSQADataMakerRec.cxx:289
 AliITSQADataMakerRec.cxx:290
 AliITSQADataMakerRec.cxx:291
 AliITSQADataMakerRec.cxx:292
 AliITSQADataMakerRec.cxx:293
 AliITSQADataMakerRec.cxx:294
 AliITSQADataMakerRec.cxx:295
 AliITSQADataMakerRec.cxx:296
 AliITSQADataMakerRec.cxx:297
 AliITSQADataMakerRec.cxx:298
 AliITSQADataMakerRec.cxx:299
 AliITSQADataMakerRec.cxx:300
 AliITSQADataMakerRec.cxx:301
 AliITSQADataMakerRec.cxx:302
 AliITSQADataMakerRec.cxx:303
 AliITSQADataMakerRec.cxx:304
 AliITSQADataMakerRec.cxx:305
 AliITSQADataMakerRec.cxx:306
 AliITSQADataMakerRec.cxx:307
 AliITSQADataMakerRec.cxx:308
 AliITSQADataMakerRec.cxx:309
 AliITSQADataMakerRec.cxx:310
 AliITSQADataMakerRec.cxx:311
 AliITSQADataMakerRec.cxx:312
 AliITSQADataMakerRec.cxx:313
 AliITSQADataMakerRec.cxx:314
 AliITSQADataMakerRec.cxx:315
 AliITSQADataMakerRec.cxx:316
 AliITSQADataMakerRec.cxx:317
 AliITSQADataMakerRec.cxx:318
 AliITSQADataMakerRec.cxx:319
 AliITSQADataMakerRec.cxx:320
 AliITSQADataMakerRec.cxx:321
 AliITSQADataMakerRec.cxx:322
 AliITSQADataMakerRec.cxx:323
 AliITSQADataMakerRec.cxx:324
 AliITSQADataMakerRec.cxx:325
 AliITSQADataMakerRec.cxx:326
 AliITSQADataMakerRec.cxx:327
 AliITSQADataMakerRec.cxx:328
 AliITSQADataMakerRec.cxx:329
 AliITSQADataMakerRec.cxx:330
 AliITSQADataMakerRec.cxx:331
 AliITSQADataMakerRec.cxx:332
 AliITSQADataMakerRec.cxx:333
 AliITSQADataMakerRec.cxx:334
 AliITSQADataMakerRec.cxx:335
 AliITSQADataMakerRec.cxx:336
 AliITSQADataMakerRec.cxx:337
 AliITSQADataMakerRec.cxx:338
 AliITSQADataMakerRec.cxx:339
 AliITSQADataMakerRec.cxx:340
 AliITSQADataMakerRec.cxx:341
 AliITSQADataMakerRec.cxx:342
 AliITSQADataMakerRec.cxx:343
 AliITSQADataMakerRec.cxx:344
 AliITSQADataMakerRec.cxx:345
 AliITSQADataMakerRec.cxx:346
 AliITSQADataMakerRec.cxx:347
 AliITSQADataMakerRec.cxx:348
 AliITSQADataMakerRec.cxx:349
 AliITSQADataMakerRec.cxx:350
 AliITSQADataMakerRec.cxx:351
 AliITSQADataMakerRec.cxx:352
 AliITSQADataMakerRec.cxx:353
 AliITSQADataMakerRec.cxx:354
 AliITSQADataMakerRec.cxx:355
 AliITSQADataMakerRec.cxx:356
 AliITSQADataMakerRec.cxx:357
 AliITSQADataMakerRec.cxx:358
 AliITSQADataMakerRec.cxx:359
 AliITSQADataMakerRec.cxx:360
 AliITSQADataMakerRec.cxx:361
 AliITSQADataMakerRec.cxx:362
 AliITSQADataMakerRec.cxx:363
 AliITSQADataMakerRec.cxx:364
 AliITSQADataMakerRec.cxx:365
 AliITSQADataMakerRec.cxx:366
 AliITSQADataMakerRec.cxx:367
 AliITSQADataMakerRec.cxx:368
 AliITSQADataMakerRec.cxx:369
 AliITSQADataMakerRec.cxx:370
 AliITSQADataMakerRec.cxx:371
 AliITSQADataMakerRec.cxx:372
 AliITSQADataMakerRec.cxx:373
 AliITSQADataMakerRec.cxx:374
 AliITSQADataMakerRec.cxx:375
 AliITSQADataMakerRec.cxx:376
 AliITSQADataMakerRec.cxx:377
 AliITSQADataMakerRec.cxx:378
 AliITSQADataMakerRec.cxx:379
 AliITSQADataMakerRec.cxx:380
 AliITSQADataMakerRec.cxx:381
 AliITSQADataMakerRec.cxx:382
 AliITSQADataMakerRec.cxx:383
 AliITSQADataMakerRec.cxx:384
 AliITSQADataMakerRec.cxx:385
 AliITSQADataMakerRec.cxx:386
 AliITSQADataMakerRec.cxx:387
 AliITSQADataMakerRec.cxx:388
 AliITSQADataMakerRec.cxx:389
 AliITSQADataMakerRec.cxx:390
 AliITSQADataMakerRec.cxx:391
 AliITSQADataMakerRec.cxx:392
 AliITSQADataMakerRec.cxx:393
 AliITSQADataMakerRec.cxx:394
 AliITSQADataMakerRec.cxx:395
 AliITSQADataMakerRec.cxx:396
 AliITSQADataMakerRec.cxx:397
 AliITSQADataMakerRec.cxx:398
 AliITSQADataMakerRec.cxx:399
 AliITSQADataMakerRec.cxx:400
 AliITSQADataMakerRec.cxx:401
 AliITSQADataMakerRec.cxx:402
 AliITSQADataMakerRec.cxx:403
 AliITSQADataMakerRec.cxx:404
 AliITSQADataMakerRec.cxx:405
 AliITSQADataMakerRec.cxx:406
 AliITSQADataMakerRec.cxx:407
 AliITSQADataMakerRec.cxx:408
 AliITSQADataMakerRec.cxx:409
 AliITSQADataMakerRec.cxx:410
 AliITSQADataMakerRec.cxx:411
 AliITSQADataMakerRec.cxx:412
 AliITSQADataMakerRec.cxx:413
 AliITSQADataMakerRec.cxx:414
 AliITSQADataMakerRec.cxx:415
 AliITSQADataMakerRec.cxx:416
 AliITSQADataMakerRec.cxx:417
 AliITSQADataMakerRec.cxx:418
 AliITSQADataMakerRec.cxx:419
 AliITSQADataMakerRec.cxx:420
 AliITSQADataMakerRec.cxx:421
 AliITSQADataMakerRec.cxx:422
 AliITSQADataMakerRec.cxx:423
 AliITSQADataMakerRec.cxx:424
 AliITSQADataMakerRec.cxx:425
 AliITSQADataMakerRec.cxx:426
 AliITSQADataMakerRec.cxx:427
 AliITSQADataMakerRec.cxx:428
 AliITSQADataMakerRec.cxx:429
 AliITSQADataMakerRec.cxx:430
 AliITSQADataMakerRec.cxx:431
 AliITSQADataMakerRec.cxx:432
 AliITSQADataMakerRec.cxx:433
 AliITSQADataMakerRec.cxx:434
 AliITSQADataMakerRec.cxx:435
 AliITSQADataMakerRec.cxx:436
 AliITSQADataMakerRec.cxx:437
 AliITSQADataMakerRec.cxx:438
 AliITSQADataMakerRec.cxx:439
 AliITSQADataMakerRec.cxx:440
 AliITSQADataMakerRec.cxx:441
 AliITSQADataMakerRec.cxx:442
 AliITSQADataMakerRec.cxx:443
 AliITSQADataMakerRec.cxx:444
 AliITSQADataMakerRec.cxx:445
 AliITSQADataMakerRec.cxx:446
 AliITSQADataMakerRec.cxx:447
 AliITSQADataMakerRec.cxx:448
 AliITSQADataMakerRec.cxx:449
 AliITSQADataMakerRec.cxx:450
 AliITSQADataMakerRec.cxx:451
 AliITSQADataMakerRec.cxx:452
 AliITSQADataMakerRec.cxx:453
 AliITSQADataMakerRec.cxx:454
 AliITSQADataMakerRec.cxx:455
 AliITSQADataMakerRec.cxx:456
 AliITSQADataMakerRec.cxx:457
 AliITSQADataMakerRec.cxx:458
 AliITSQADataMakerRec.cxx:459
 AliITSQADataMakerRec.cxx:460
 AliITSQADataMakerRec.cxx:461
 AliITSQADataMakerRec.cxx:462
 AliITSQADataMakerRec.cxx:463
 AliITSQADataMakerRec.cxx:464
 AliITSQADataMakerRec.cxx:465
 AliITSQADataMakerRec.cxx:466
 AliITSQADataMakerRec.cxx:467
 AliITSQADataMakerRec.cxx:468
 AliITSQADataMakerRec.cxx:469
 AliITSQADataMakerRec.cxx:470
 AliITSQADataMakerRec.cxx:471
 AliITSQADataMakerRec.cxx:472
 AliITSQADataMakerRec.cxx:473
 AliITSQADataMakerRec.cxx:474
 AliITSQADataMakerRec.cxx:475
 AliITSQADataMakerRec.cxx:476
 AliITSQADataMakerRec.cxx:477
 AliITSQADataMakerRec.cxx:478
 AliITSQADataMakerRec.cxx:479
 AliITSQADataMakerRec.cxx:480
 AliITSQADataMakerRec.cxx:481
 AliITSQADataMakerRec.cxx:482
 AliITSQADataMakerRec.cxx:483
 AliITSQADataMakerRec.cxx:484
 AliITSQADataMakerRec.cxx:485
 AliITSQADataMakerRec.cxx:486
 AliITSQADataMakerRec.cxx:487
 AliITSQADataMakerRec.cxx:488
 AliITSQADataMakerRec.cxx:489
 AliITSQADataMakerRec.cxx:490
 AliITSQADataMakerRec.cxx:491
 AliITSQADataMakerRec.cxx:492
 AliITSQADataMakerRec.cxx:493
 AliITSQADataMakerRec.cxx:494
 AliITSQADataMakerRec.cxx:495
 AliITSQADataMakerRec.cxx:496
 AliITSQADataMakerRec.cxx:497
 AliITSQADataMakerRec.cxx:498
 AliITSQADataMakerRec.cxx:499
 AliITSQADataMakerRec.cxx:500
 AliITSQADataMakerRec.cxx:501
 AliITSQADataMakerRec.cxx:502
 AliITSQADataMakerRec.cxx:503
 AliITSQADataMakerRec.cxx:504
 AliITSQADataMakerRec.cxx:505
 AliITSQADataMakerRec.cxx:506
 AliITSQADataMakerRec.cxx:507
 AliITSQADataMakerRec.cxx:508
 AliITSQADataMakerRec.cxx:509
 AliITSQADataMakerRec.cxx:510
 AliITSQADataMakerRec.cxx:511
 AliITSQADataMakerRec.cxx:512
 AliITSQADataMakerRec.cxx:513
 AliITSQADataMakerRec.cxx:514
 AliITSQADataMakerRec.cxx:515
 AliITSQADataMakerRec.cxx:516
 AliITSQADataMakerRec.cxx:517
 AliITSQADataMakerRec.cxx:518
 AliITSQADataMakerRec.cxx:519
 AliITSQADataMakerRec.cxx:520
 AliITSQADataMakerRec.cxx:521
 AliITSQADataMakerRec.cxx:522
 AliITSQADataMakerRec.cxx:523
 AliITSQADataMakerRec.cxx:524
 AliITSQADataMakerRec.cxx:525
 AliITSQADataMakerRec.cxx:526
 AliITSQADataMakerRec.cxx:527
 AliITSQADataMakerRec.cxx:528
 AliITSQADataMakerRec.cxx:529
 AliITSQADataMakerRec.cxx:530
 AliITSQADataMakerRec.cxx:531
 AliITSQADataMakerRec.cxx:532
 AliITSQADataMakerRec.cxx:533
 AliITSQADataMakerRec.cxx:534
 AliITSQADataMakerRec.cxx:535
 AliITSQADataMakerRec.cxx:536
 AliITSQADataMakerRec.cxx:537
 AliITSQADataMakerRec.cxx:538
 AliITSQADataMakerRec.cxx:539
 AliITSQADataMakerRec.cxx:540
 AliITSQADataMakerRec.cxx:541
 AliITSQADataMakerRec.cxx:542
 AliITSQADataMakerRec.cxx:543
 AliITSQADataMakerRec.cxx:544
 AliITSQADataMakerRec.cxx:545
 AliITSQADataMakerRec.cxx:546
 AliITSQADataMakerRec.cxx:547
 AliITSQADataMakerRec.cxx:548
 AliITSQADataMakerRec.cxx:549
 AliITSQADataMakerRec.cxx:550
 AliITSQADataMakerRec.cxx:551
 AliITSQADataMakerRec.cxx:552
 AliITSQADataMakerRec.cxx:553
 AliITSQADataMakerRec.cxx:554
 AliITSQADataMakerRec.cxx:555
 AliITSQADataMakerRec.cxx:556
 AliITSQADataMakerRec.cxx:557
 AliITSQADataMakerRec.cxx:558
 AliITSQADataMakerRec.cxx:559
 AliITSQADataMakerRec.cxx:560
 AliITSQADataMakerRec.cxx:561
 AliITSQADataMakerRec.cxx:562
 AliITSQADataMakerRec.cxx:563
 AliITSQADataMakerRec.cxx:564
 AliITSQADataMakerRec.cxx:565
 AliITSQADataMakerRec.cxx:566
 AliITSQADataMakerRec.cxx:567
 AliITSQADataMakerRec.cxx:568
 AliITSQADataMakerRec.cxx:569
 AliITSQADataMakerRec.cxx:570
 AliITSQADataMakerRec.cxx:571
 AliITSQADataMakerRec.cxx:572
 AliITSQADataMakerRec.cxx:573
 AliITSQADataMakerRec.cxx:574
 AliITSQADataMakerRec.cxx:575
 AliITSQADataMakerRec.cxx:576
 AliITSQADataMakerRec.cxx:577
 AliITSQADataMakerRec.cxx:578
 AliITSQADataMakerRec.cxx:579
 AliITSQADataMakerRec.cxx:580
 AliITSQADataMakerRec.cxx:581
 AliITSQADataMakerRec.cxx:582
 AliITSQADataMakerRec.cxx:583
 AliITSQADataMakerRec.cxx:584
 AliITSQADataMakerRec.cxx:585
 AliITSQADataMakerRec.cxx:586
 AliITSQADataMakerRec.cxx:587
 AliITSQADataMakerRec.cxx:588
 AliITSQADataMakerRec.cxx:589
 AliITSQADataMakerRec.cxx:590
 AliITSQADataMakerRec.cxx:591
 AliITSQADataMakerRec.cxx:592
 AliITSQADataMakerRec.cxx:593
 AliITSQADataMakerRec.cxx:594
 AliITSQADataMakerRec.cxx:595
 AliITSQADataMakerRec.cxx:596
 AliITSQADataMakerRec.cxx:597
 AliITSQADataMakerRec.cxx:598
 AliITSQADataMakerRec.cxx:599
 AliITSQADataMakerRec.cxx:600
 AliITSQADataMakerRec.cxx:601
 AliITSQADataMakerRec.cxx:602
 AliITSQADataMakerRec.cxx:603
 AliITSQADataMakerRec.cxx:604
 AliITSQADataMakerRec.cxx:605
 AliITSQADataMakerRec.cxx:606
 AliITSQADataMakerRec.cxx:607
 AliITSQADataMakerRec.cxx:608
 AliITSQADataMakerRec.cxx:609
 AliITSQADataMakerRec.cxx:610
 AliITSQADataMakerRec.cxx:611
 AliITSQADataMakerRec.cxx:612
 AliITSQADataMakerRec.cxx:613
 AliITSQADataMakerRec.cxx:614
 AliITSQADataMakerRec.cxx:615
 AliITSQADataMakerRec.cxx:616
 AliITSQADataMakerRec.cxx:617
 AliITSQADataMakerRec.cxx:618
 AliITSQADataMakerRec.cxx:619
 AliITSQADataMakerRec.cxx:620
 AliITSQADataMakerRec.cxx:621
 AliITSQADataMakerRec.cxx:622
 AliITSQADataMakerRec.cxx:623
 AliITSQADataMakerRec.cxx:624
 AliITSQADataMakerRec.cxx:625
 AliITSQADataMakerRec.cxx:626
 AliITSQADataMakerRec.cxx:627
 AliITSQADataMakerRec.cxx:628
 AliITSQADataMakerRec.cxx:629
 AliITSQADataMakerRec.cxx:630
 AliITSQADataMakerRec.cxx:631
 AliITSQADataMakerRec.cxx:632
 AliITSQADataMakerRec.cxx:633
 AliITSQADataMakerRec.cxx:634
 AliITSQADataMakerRec.cxx:635
 AliITSQADataMakerRec.cxx:636
 AliITSQADataMakerRec.cxx:637
 AliITSQADataMakerRec.cxx:638
 AliITSQADataMakerRec.cxx:639
 AliITSQADataMakerRec.cxx:640
 AliITSQADataMakerRec.cxx:641
 AliITSQADataMakerRec.cxx:642
 AliITSQADataMakerRec.cxx:643
 AliITSQADataMakerRec.cxx:644
 AliITSQADataMakerRec.cxx:645
 AliITSQADataMakerRec.cxx:646
 AliITSQADataMakerRec.cxx:647
 AliITSQADataMakerRec.cxx:648
 AliITSQADataMakerRec.cxx:649
 AliITSQADataMakerRec.cxx:650
 AliITSQADataMakerRec.cxx:651
 AliITSQADataMakerRec.cxx:652
 AliITSQADataMakerRec.cxx:653
 AliITSQADataMakerRec.cxx:654
 AliITSQADataMakerRec.cxx:655
 AliITSQADataMakerRec.cxx:656
 AliITSQADataMakerRec.cxx:657
 AliITSQADataMakerRec.cxx:658
 AliITSQADataMakerRec.cxx:659
 AliITSQADataMakerRec.cxx:660
 AliITSQADataMakerRec.cxx:661
 AliITSQADataMakerRec.cxx:662
 AliITSQADataMakerRec.cxx:663
 AliITSQADataMakerRec.cxx:664
 AliITSQADataMakerRec.cxx:665
 AliITSQADataMakerRec.cxx:666
 AliITSQADataMakerRec.cxx:667
 AliITSQADataMakerRec.cxx:668
 AliITSQADataMakerRec.cxx:669
 AliITSQADataMakerRec.cxx:670
 AliITSQADataMakerRec.cxx:671
 AliITSQADataMakerRec.cxx:672
 AliITSQADataMakerRec.cxx:673
 AliITSQADataMakerRec.cxx:674
 AliITSQADataMakerRec.cxx:675
 AliITSQADataMakerRec.cxx:676
 AliITSQADataMakerRec.cxx:677
 AliITSQADataMakerRec.cxx:678
 AliITSQADataMakerRec.cxx:679
 AliITSQADataMakerRec.cxx:680
 AliITSQADataMakerRec.cxx:681
 AliITSQADataMakerRec.cxx:682
 AliITSQADataMakerRec.cxx:683
 AliITSQADataMakerRec.cxx:684
 AliITSQADataMakerRec.cxx:685
 AliITSQADataMakerRec.cxx:686
 AliITSQADataMakerRec.cxx:687
 AliITSQADataMakerRec.cxx:688
 AliITSQADataMakerRec.cxx:689
 AliITSQADataMakerRec.cxx:690
 AliITSQADataMakerRec.cxx:691
 AliITSQADataMakerRec.cxx:692
 AliITSQADataMakerRec.cxx:693
 AliITSQADataMakerRec.cxx:694
 AliITSQADataMakerRec.cxx:695
 AliITSQADataMakerRec.cxx:696
 AliITSQADataMakerRec.cxx:697
 AliITSQADataMakerRec.cxx:698
 AliITSQADataMakerRec.cxx:699
 AliITSQADataMakerRec.cxx:700
 AliITSQADataMakerRec.cxx:701
 AliITSQADataMakerRec.cxx:702
 AliITSQADataMakerRec.cxx:703
 AliITSQADataMakerRec.cxx:704
 AliITSQADataMakerRec.cxx:705
 AliITSQADataMakerRec.cxx:706
 AliITSQADataMakerRec.cxx:707
 AliITSQADataMakerRec.cxx:708
 AliITSQADataMakerRec.cxx:709
 AliITSQADataMakerRec.cxx:710
 AliITSQADataMakerRec.cxx:711
 AliITSQADataMakerRec.cxx:712
 AliITSQADataMakerRec.cxx:713
 AliITSQADataMakerRec.cxx:714
 AliITSQADataMakerRec.cxx:715
 AliITSQADataMakerRec.cxx:716
 AliITSQADataMakerRec.cxx:717
 AliITSQADataMakerRec.cxx:718
 AliITSQADataMakerRec.cxx:719
 AliITSQADataMakerRec.cxx:720
 AliITSQADataMakerRec.cxx:721
 AliITSQADataMakerRec.cxx:722
 AliITSQADataMakerRec.cxx:723
 AliITSQADataMakerRec.cxx:724
 AliITSQADataMakerRec.cxx:725
 AliITSQADataMakerRec.cxx:726
 AliITSQADataMakerRec.cxx:727
 AliITSQADataMakerRec.cxx:728
 AliITSQADataMakerRec.cxx:729
 AliITSQADataMakerRec.cxx:730
 AliITSQADataMakerRec.cxx:731
 AliITSQADataMakerRec.cxx:732
 AliITSQADataMakerRec.cxx:733
 AliITSQADataMakerRec.cxx:734
 AliITSQADataMakerRec.cxx:735
 AliITSQADataMakerRec.cxx:736
 AliITSQADataMakerRec.cxx:737
 AliITSQADataMakerRec.cxx:738
 AliITSQADataMakerRec.cxx:739
 AliITSQADataMakerRec.cxx:740
 AliITSQADataMakerRec.cxx:741
 AliITSQADataMakerRec.cxx:742
 AliITSQADataMakerRec.cxx:743
 AliITSQADataMakerRec.cxx:744
 AliITSQADataMakerRec.cxx:745
 AliITSQADataMakerRec.cxx:746
 AliITSQADataMakerRec.cxx:747
 AliITSQADataMakerRec.cxx:748
 AliITSQADataMakerRec.cxx:749
 AliITSQADataMakerRec.cxx:750
 AliITSQADataMakerRec.cxx:751
 AliITSQADataMakerRec.cxx:752
 AliITSQADataMakerRec.cxx:753
 AliITSQADataMakerRec.cxx:754
 AliITSQADataMakerRec.cxx:755
 AliITSQADataMakerRec.cxx:756
 AliITSQADataMakerRec.cxx:757
 AliITSQADataMakerRec.cxx:758
 AliITSQADataMakerRec.cxx:759
 AliITSQADataMakerRec.cxx:760
 AliITSQADataMakerRec.cxx:761
 AliITSQADataMakerRec.cxx:762
 AliITSQADataMakerRec.cxx:763
 AliITSQADataMakerRec.cxx:764
 AliITSQADataMakerRec.cxx:765
 AliITSQADataMakerRec.cxx:766
 AliITSQADataMakerRec.cxx:767
 AliITSQADataMakerRec.cxx:768
 AliITSQADataMakerRec.cxx:769
 AliITSQADataMakerRec.cxx:770
 AliITSQADataMakerRec.cxx:771
 AliITSQADataMakerRec.cxx:772
 AliITSQADataMakerRec.cxx:773
 AliITSQADataMakerRec.cxx:774
 AliITSQADataMakerRec.cxx:775
 AliITSQADataMakerRec.cxx:776
 AliITSQADataMakerRec.cxx:777
 AliITSQADataMakerRec.cxx:778
 AliITSQADataMakerRec.cxx:779
 AliITSQADataMakerRec.cxx:780
 AliITSQADataMakerRec.cxx:781
 AliITSQADataMakerRec.cxx:782
 AliITSQADataMakerRec.cxx:783
 AliITSQADataMakerRec.cxx:784
 AliITSQADataMakerRec.cxx:785
 AliITSQADataMakerRec.cxx:786
 AliITSQADataMakerRec.cxx:787
 AliITSQADataMakerRec.cxx:788
 AliITSQADataMakerRec.cxx:789
 AliITSQADataMakerRec.cxx:790
 AliITSQADataMakerRec.cxx:791
 AliITSQADataMakerRec.cxx:792
 AliITSQADataMakerRec.cxx:793
 AliITSQADataMakerRec.cxx:794
 AliITSQADataMakerRec.cxx:795
 AliITSQADataMakerRec.cxx:796
 AliITSQADataMakerRec.cxx:797
 AliITSQADataMakerRec.cxx:798
 AliITSQADataMakerRec.cxx:799
 AliITSQADataMakerRec.cxx:800
 AliITSQADataMakerRec.cxx:801
 AliITSQADataMakerRec.cxx:802
 AliITSQADataMakerRec.cxx:803
 AliITSQADataMakerRec.cxx:804
 AliITSQADataMakerRec.cxx:805
 AliITSQADataMakerRec.cxx:806
 AliITSQADataMakerRec.cxx:807
 AliITSQADataMakerRec.cxx:808
 AliITSQADataMakerRec.cxx:809
 AliITSQADataMakerRec.cxx:810
 AliITSQADataMakerRec.cxx:811
 AliITSQADataMakerRec.cxx:812
 AliITSQADataMakerRec.cxx:813