ROOT logo
#ifndef ALIANACALORIMETERQA_H
#define ALIANACALORIMETERQA_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice     */

//_________________________________________________________________________
// Class to check results from simulations or reconstructed real data. 
// Fill few histograms and do some checking plots
//
//-- Author: Gustavo Conesa (INFN-LNF)

// --- Root system ---
class TH3F;
class TH2F;
class TH1F;
class TObjString;
class TObjArray;

// --- Analysis system --- 
class AliVCaloCells;
class AliVCaloCluster;
class AliVTrack;

#include "AliAnaCaloTrackCorrBaseClass.h"
 
class AliAnaCalorimeterQA : public AliAnaCaloTrackCorrBaseClass {
  
public: 
  AliAnaCalorimeterQA() ; // default ctor	
  virtual ~AliAnaCalorimeterQA() {;} //virtual dtor
    
  // General methods
  
  TObjString * GetAnalysisCuts();

  TList      * GetCreateOutputObjects();
  
  void         Init();
  
  void         InitParameters();
    
  void         MakeAnalysisFillHistograms() ;
  
  void         Print(const Option_t * opt) const;
    
  // Main methods
  
  void         BadClusterHistograms(AliVCluster* clus, const TObjArray *caloClusters,  AliVCaloCells * cells,
                                    Int_t absIdMax,    Double_t maxCellFraction, Float_t eCrossFrac, Double_t tmax);
    
  void         CalculateAverageTime(AliVCluster *clus, AliVCaloCells *cells, Double_t timeAverages[2]);
  
  void         CellHistograms(AliVCaloCells * cells);

  void         CellInClusterPositionHistograms(AliVCluster* cluster);
    
  void         ClusterAsymmetryHistograms(AliVCluster* clus, Int_t absIdMax, Bool_t goodCluster );
  
  void         ClusterHistograms(AliVCluster* cluster, const TObjArray *caloClusters,  AliVCaloCells * cells, 
                                 Int_t absIdMax, Double_t maxCellFraction, Float_t eCrossFrac, Double_t tmax);
  
  void         ClusterLoopHistograms(const TObjArray * clusters, AliVCaloCells * cells);
  
  Bool_t       ClusterMCHistograms(Bool_t matched, const Int_t * labels, Int_t nLabels, Int_t & pdg );

  void         ClusterMatchedWithTrackHistograms(AliVCluster* clus, Bool_t mcOK, Int_t pdg);

  void         Correlate();
  
  void         ExoticHistograms(Int_t absIdMax, Float_t ampMax,
                                AliVCluster *clus, AliVCaloCells* cells);
  
  Float_t      GetECross(Int_t absId, AliVCaloCells* cells,Float_t dtcut = 10000);
  
  void         InvariantMassHistograms(Int_t iclus, Int_t nModule, const TObjArray* caloClusters, AliVCaloCells * cells);

  Bool_t       IsGoodCluster(Int_t absIdMax, AliVCaloCells *cells);
  
  void         MCHistograms();  
  
  void         WeightHistograms(AliVCluster *clus, AliVCaloCells* cells);

  // Setters and Getters

  
  Float_t      GetEMCALCellAmpMin()      const  { return fEMCALCellAmpMin    ; }
  void         SetEMCALCellAmpMin(Float_t amp)  { fEMCALCellAmpMin = amp     ; }
  
  Float_t      GetPHOSCellAmpMin()       const  { return fPHOSCellAmpMin     ; }
  void         SetPHOSCellAmpMin (Float_t amp)  { fPHOSCellAmpMin  = amp     ; }
  
  Float_t      GetInvMassMinECut()       const  { return fMinInvMassECut     ; }
  void         SetInvMassMinECut(Float_t cut)   { fMinInvMassECut = cut      ; }
  
  Double_t     GetTimeCutMin()           const  { return fTimeCutMin         ; }
  Double_t     GetTimeCutMax()           const  { return fTimeCutMax         ; }
  void         SetTimeCut(Double_t min, Double_t max) {
                          fTimeCutMin = min ; fTimeCutMax = max              ; }
    
  // Histogram Switchs
  
  void SwitchOnFillAllCellTimeHisto()           { fFillAllCellTimeHisto = kTRUE  ; }
  void SwitchOffFillAllCellTimeHisto()          { fFillAllCellTimeHisto = kFALSE ; }
  
  void SwitchOnFillAllPositionHistogram()       { fFillAllPosHisto  = kTRUE  ; }
  void SwitchOffFillAllPositionHistogram()      { fFillAllPosHisto  = kFALSE ; }
  
  void SwitchOnFillAllPositionHistogram2()      { fFillAllPosHisto2 = kTRUE  ; }
  void SwitchOffFillAllPositionHistogram2()     { fFillAllPosHisto2 = kFALSE ; }
  
  void SwitchOnFillAllTH3Histogram()            { fFillAllTH3       = kTRUE  ; }
  void SwitchOffFillAllTH3Histogram()           { fFillAllTH3       = kFALSE ; }
  
  void SwitchOnFillAllTrackMatchingHistogram()  { fFillAllTMHisto   = kTRUE  ; }
  void SwitchOffFillAllTrackMatchingHistogram() { fFillAllTMHisto   = kFALSE ; }
  
  void SwitchOnFillAllPi0Histogram()            { fFillAllPi0Histo  = kTRUE  ; }
  void SwitchOffFillAllPi0Histogram()           { fFillAllPi0Histo  = kFALSE ; }

  void SwitchOnCorrelation()                    { fCorrelate        = kTRUE  ; }
  void SwitchOffCorrelation()                   { fCorrelate        = kFALSE ; }

  void SwitchOnStudyBadClusters()               { fStudyBadClusters = kTRUE  ; }
  void SwitchOffStudyBadClusters()              { fStudyBadClusters = kFALSE ; }
  
  void SwitchOnStudyClustersAsymmetry()         { fStudyClustersAsymmetry = kTRUE  ; }
  void SwitchOffStudyClustersAsymmetry()        { fStudyClustersAsymmetry = kFALSE ; }

  void SwitchOnStudyWeight()                    { fStudyWeight      = kTRUE  ; }
  void SwitchOffStudyWeight()                   { fStudyWeight      = kFALSE ; }
  
  void SwitchOnStudyExotic()                    { fStudyExotic      = kTRUE  ; }
  void SwitchOffStudyExotic()                   { fStudyExotic      = kFALSE ; }
  
  void SetNECrossCuts(Int_t n)                  { fExoNECrossCuts   = n      ; }
  void SetNDTimeCuts (Int_t n)                  { fExoNDTimeCuts    = n      ; }
  
  void SetExoECrossCuts (Int_t i, Float_t c)    { if (i<fExoNECrossCuts) fExoECrossCuts[i] = c ; }
  void SetExoDTimeCuts  (Int_t i, Float_t c)    { if (i<fExoNDTimeCuts ) fExoDTimeCuts [i] = c ; }
  
 private:
  
  //Switches
  Bool_t   fFillAllCellTimeHisto;             // Fill all cell time histo
  Bool_t   fFillAllPosHisto;                  // Fill all the position related histograms 
  Bool_t   fFillAllPosHisto2;                 // Fill all the position related histograms 2
  Bool_t   fFillAllTH3 ;                      // Fill TH3 histograms
  Bool_t   fFillAllTMHisto ;                  // Fill track matching histograms
  Bool_t   fFillAllPi0Histo ;                 // Fill invariant mass histograms
  Bool_t   fCorrelate   ;                     // Correlate PHOS/EMCAL cells/clusters, also with V0 and track multiplicity
  Bool_t   fStudyBadClusters;                 // Study bad clusters
  Bool_t   fStudyClustersAsymmetry;           // Study asymmetry of clusters
  Bool_t   fStudyExotic;                      // Study the exotic cluster for different cuts
  Bool_t   fStudyWeight;                      // Study the energy weight used in different cluster calculations
  
  // Parameters
  Int_t    fNModules    ;                     // Number of EMCAL/PHOS modules
  Int_t    fNRCU        ;                     // Number of EMCAL/PHOS RCU 
  Int_t    fNMaxCols    ;                     // Number of EMCAL/PHOS rows 
  Int_t    fNMaxRows    ;                     // Number of EMCAL/PHOS columns
  
  //Cuts
  Double_t fTimeCutMin  ;                     // Remove clusters/cells with time smaller than this value, in ns
  Double_t fTimeCutMax  ;                     // Remove clusters/cells with time larger than this value, in ns
  Float_t  fCellAmpMin;                       // amplitude Threshold on calorimeter cells, set at execution time
  Float_t  fEMCALCellAmpMin;                  // amplitude Threshold on emcal cells
  Float_t  fPHOSCellAmpMin ;                  // amplitude Threshold on phos cells
  
  Float_t  fMinInvMassECut;                   // Minimum energy cut value for clusters entering the invariant mass calculation
  
  // Exotic studies
  Float_t  fExoNECrossCuts   ;                // Number of ecross cuts
  Float_t  fExoECrossCuts[10];                // List of ecross cuts
  Float_t  fExoNDTimeCuts    ;                // Number of time cuts
  Float_t  fExoDTimeCuts[5]  ;                // List of time cuts
  
  TLorentzVector fClusterMomentum;            //! Cluster momentum
  TLorentzVector fClusterMomentum2;           //! Cluster momentum
  TLorentzVector fPrimaryMomentum;            //! Primary MC momentum
  
  //CaloClusters 
  TH1F *   fhE  ;                             //! E distribution, Reco
  TH1F *   fhPt ;                             //! pT distribution, Reco
  TH1F *   fhPhi;                             //! phi distribution, Reco 
  TH1F *   fhEta;                             //! eta distribution, Reco 
  TH3F *   fhEtaPhiE  ;                       //! eta vs phi vs E, Reco
  TH1F *   fhECharged  ;                      //! E distribution, Reco, matched with track
  TH1F *   fhPtCharged ;                      //! pT distribution, Reco, matched with track
  TH1F *   fhPhiCharged;                      //! phi distribution, Reco, matched with track 
  TH1F *   fhEtaCharged;                      //! eta distribution, Reco, matched with track 
  TH3F *   fhEtaPhiECharged;                  //! eta vs phi vs E, Reco, matched with track 
    
  TH2F *   fhIM;                              //! cluster pairs invariant mass
  TH2F *   fhAsym;                            //! cluster pairs invariant mass	
  
  TH2F *   fhNCellsPerCluster;                //! N cells per cluster vs cluster energy vs eta of cluster	
  TH2F *   fhNCellsPerClusterNoCut;           //! N cells per cluster vs cluster energy vs eta of cluster	

  TH1F *   fhNClusters;                       //! Number of clusters

  TH2F *   fhClusterTimeEnergy;               //! Cluster Time vs Energy 
  TH2F *   fhCellTimeSpreadRespectToCellMax;  //! Difference of the time of cell with maximum dep energy and the rest of cells
  TH1F *   fhCellIdCellLargeTimeSpread;       //! Cells with large time respect to max (diff > 100 ns)
  TH2F *   fhClusterPairDiffTimeE;            //! Pair of clusters time difference vs E
  
  TH2F *   fhClusterMaxCellCloseCellRatio;    //! Ratio between max cell energy and cell energy of the same cluster 
  TH2F *   fhClusterMaxCellCloseCellDiff;     //! Difference between max cell energy and cell energy of the same cluster   
  TH2F *   fhClusterMaxCellDiff;              //! Difference between cluster energy and energy of cell with more energy, good clusters only
  TH2F *   fhClusterMaxCellDiffNoCut;         //! Difference between cluster energy and energy of cell with more energy, no bad cluster rejection
  
  TH2F *   fhClusterMaxCellDiffAverageTime;      //! Difference between cluster average time and time of cell with more energy
  TH2F *   fhClusterMaxCellDiffWeightedTime;     //! Difference between cluster weighted time and time of cell with more energy
  TH2F *   fhClusterMaxCellECross;               //! 1 - Energy in cross around max energy cell / max energy cell vs cluster energy, good clusters
  
  TH2F *   fhLambda0;                         //! cluster Lambda0    vs Energy
  TH2F *   fhLambda1;                         //! cluster Lambda1    vs Energy
  TH2F *   fhDispersion;                      //! cluster Dispersion vs Energy
  
  // Bad clusters histograms
  TH1F *   fhBadClusterEnergy;                //! energy of bad cluster
  TH2F *   fhBadClusterTimeEnergy;            //! Time Max cell of bad cluster
  TH2F *   fhBadClusterPairDiffTimeE;         //! Pair of clusters time difference vs E, bad cluster
  TH2F *   fhBadCellTimeSpreadRespectToCellMax; //! Difference of the time of cell with maximum dep energy and the rest of cells for bad clusters
  
  TH2F *   fhBadClusterMaxCellCloseCellRatio; //! Ratio between max cell energy and cell energy of the same cluster for bad clusters 
  TH2F *   fhBadClusterMaxCellCloseCellDiff ; //! Difference between max cell energy and cell energy of the same cluster for bad clusters 
  TH2F *   fhBadClusterMaxCellDiff;           //! Difference between cluster energy and energy of cell with more energy
  
  TH2F *   fhBadClusterMaxCellDiffAverageTime;      //! Difference between cluster average time and time of cell with more energy
  TH2F *   fhBadClusterMaxCellDiffWeightedTime;     //! Difference between cluster weighted time and time of cell with more energy
  TH2F *   fhBadClusterMaxCellECross;               //! 1 - Energy in cross around max energy cell / max energy cell vs cluster energy, bad clusters

  // Cluster cell size
  TH2F *   fhDeltaIEtaDeltaIPhiE0[2];         //! Difference between max cell index and farthest cell, eta vs phi, E < 2 GeV, with and without matching; 
  TH2F *   fhDeltaIEtaDeltaIPhiE2[2];         //! Difference between max cell index and farthest cell, eta vs phi, 2 < E < 6 GeV, with and without matching; 
  TH2F *   fhDeltaIEtaDeltaIPhiE6[2];         //! Difference between max cell index and farthest cell, eta vs phi, E > 6 GeV, with and without matching; 
  TH2F *   fhDeltaIA[2];                      //! Cluster "asymmetry" in cell terms vs E, with and without matching
  TH2F *   fhDeltaIAL0[2];                    //! Cluster "asymmetry" in cell units vs Lambda0    for E > 0.5 GeV, n cells in cluster > 3, with and without matching
  TH2F *   fhDeltaIAL1[2];                    //! Cluster "asymmetry" in cell units vs Lambda1    for E > 0.5 GeV, n cells in cluster > 3, with and without matching
  TH2F *   fhDeltaIANCells[2] ;               //! Cluster "asymmetry" in cell units vs number of cells in cluster for E > 0.5, with and without matching
  TH2F *   fhDeltaIAMC[4];                    //! Cluster "asymmetry" in cell terms vs E, from MC photon, electron, conversion or hadron.
  TH2F *   fhBadClusterDeltaIEtaDeltaIPhiE0;  //! Difference between max cell index and farthest cell, eta vs phi, E < 2 GeV, with and without matching; bad clusters. 
  TH2F *   fhBadClusterDeltaIEtaDeltaIPhiE2;  //! Difference between max cell index and farthest cell, eta vs phi, 2 < E < 6 GeV, with and without matching; bad clusters.
  TH2F *   fhBadClusterDeltaIEtaDeltaIPhiE6;  //! Difference between max cell index and farthest cell, eta vs phi, E > 6 GeV, with and without matching; bad clusters.
  TH2F *   fhBadClusterDeltaIA;               //! Cluster "asymmetry" in cell terms vs E, with and without matching; bad clusters.
  
  //Cluster/cell Position
  TH2F *   fhRNCells ;                        //! R=sqrt(x^2+y^2) (cm) cluster distribution vs N cells in cluster
  TH2F *   fhXNCells ;                        //! X (cm) cluster distribution vs N cells in cluster
  TH2F *   fhYNCells ;                        //! Y (cm) cluster distribution vs N cells in cluster
  TH2F *   fhZNCells ;                        //! Z (cm) cluster distribution vs N cells in cluster
	
  TH2F *   fhRE ;                             //! R=sqrt(x^2+y^2) (cm) cluster distribution vs cluster energy
  TH2F *   fhXE ;                             //! X (cm) cluster distribution vs cluster energy
  TH2F *   fhYE ;                             //! Y (cm) cluster distribution vs cluster energy
  TH2F *   fhZE ;                             //! Z (cm) cluster distribution vs cluster energy
  TH3F *   fhXYZ;                             //! cluster X vs Y vs Z (cm)
	
  TH2F *   fhRCellE ;                         //! R=sqrt(x^2+y^2) (cm) cell distribution vs cell energy
  TH2F *   fhXCellE ;                         //! X (cm) cell distribution vs cell energy
  TH2F *   fhYCellE ;                         //! Y (cm) cell distribution vs cell energy
  TH2F *   fhZCellE ;                         //! Z (cm) cell distribution vs cell energy
  TH3F *   fhXYZCell;                         //! cell X vs Y vs Z (cm)
  
  TH2F *   fhDeltaCellClusterRNCells ;        //! R cluster - R cell distribution (cm) vs N cells in cluster
  TH2F *   fhDeltaCellClusterXNCells ;        //! X cluster - X cell distribution (cm) vs N cells in cluster
  TH2F *   fhDeltaCellClusterYNCells ;        //! Y cluster - Y cell distribution (cm) vs N cells in cluster
  TH2F *   fhDeltaCellClusterZNCells ;        //! Z cluster - Z cell distribution (cm) vs N cells in cluster
	
  TH2F *   fhDeltaCellClusterRE ;             //! R cluster - R cell distribution (cm) vs cluster energy
  TH2F *   fhDeltaCellClusterXE ;             //! X cluster - X cell distribution (cm) vs cluster energy
  TH2F *   fhDeltaCellClusterYE ;             //! Y cluster - Y cell distribution (cm) vs cluster energy
  TH2F *   fhDeltaCellClusterZE ;             //! Z cluster - Z cell distribution (cm) vs cluster energy
	
  //Calo Cells
  TH1F *   fhNCells;                          //! Number of towers/crystals with signal
  TH1F *   fhNCellsCutAmpMin;                 //! Number of towers/crystals with signal, with min amplitude
  TH1F *   fhAmplitude;                       //! Amplitude measured in towers/crystals
  TH2F *   fhAmpId;                           //! Amplitude measured in towers/crystals vs id of tower.
  TH3F *   fhEtaPhiAmp;                       //! eta vs phi vs amplitude, cells
   
  TH1F *   fhTime;                            //! Time measured in towers/crystals
  TH2F *   fhTimeVz;                          //! Time measured in towers/crystals vs vertex z component, for E > 0.5
  TH2F *   fhTimeId;                          //! Time vs Absolute cell Id
  TH2F *   fhTimeAmp;                         //! Time vs Amplitude
  
  TH2F *   fhAmpIdLowGain;                    //! Amplitude measured in towers/crystals vs id of tower, low gain towers
  TH2F *   fhTimeIdLowGain;                   //! Time vs Absolute cell Id, low gain
  TH2F *   fhTimeAmpLowGain;                  //! Time vs Amplitude, low gain

  TH2F *   fhCellECross;                      //! 1 - Energy in cross around cell /  cell energy
  
  //Calorimeters Correlation
  TH2F *   fhCaloCorrNClusters;               //! EMCAL vs PHOS, number of clusters	
  TH2F *   fhCaloCorrEClusters;               //! EMCAL vs PHOS, total measured cluster energy
  TH2F *   fhCaloCorrNCells;                  //! EMCAL vs PHOS, number of cells
  TH2F *   fhCaloCorrECells;                  //! EMCAL vs PHOS,  total measured cell energy
	
  //V0 Correlation
  TH2F *   fhCaloV0SCorrNClusters;            //! Calo vs V0 signal , number of clusters	
  TH2F *   fhCaloV0SCorrEClusters;            //! Calo vs V0 signal, total measured cluster energy
  TH2F *   fhCaloV0SCorrNCells;               //! Calo vs V0 signal, number of cells
  TH2F *   fhCaloV0SCorrECells;               //! Calo vs V0 signal,  total measured cell energy
  TH2F *   fhCaloV0MCorrNClusters;            //! Calo vs V0 multiplicity , number of clusters	
  TH2F *   fhCaloV0MCorrEClusters;            //! Calo vs V0 multiplicity, total measured cluster energy
  TH2F *   fhCaloV0MCorrNCells;               //! Calo vs V0 multiplicity, number of cells
  TH2F *   fhCaloV0MCorrECells;               //! Calo vs V0 multiplicity,  total measured cell energy
  
  //Track Correlation
  TH2F *   fhCaloTrackMCorrNClusters;         //! Calo vs Track Multiplicity, number of clusters	
  TH2F *   fhCaloTrackMCorrEClusters;         //! Calo vs Track Multiplicity, total measured cluster energy
  TH2F *   fhCaloTrackMCorrNCells;            //! Calo vs V0 Track Multiplicity, number of cells
  TH2F *   fhCaloTrackMCorrECells;            //! Calo vs V0 Track Multipliticy,  total measured cell energy
  
  // Centrality
  TH2F *   fhCaloCenNClusters;               //! Calo vs centrality, number of clusters
  TH2F *   fhCaloCenEClusters;               //! Calo vs centrality, total measured cluster energy
  TH2F *   fhCaloCenNCells;                  //! Calo vs centrality, number of cells
  TH2F *   fhCaloCenECells;                  //! Calo vs centrality,  total measured cell energy

  // Event plane
  TH2F *   fhCaloEvPNClusters;               //! Calo vs event plane angle, number of clusters
  TH2F *   fhCaloEvPEClusters;               //! Calo vs event plane angle, total measured cluster energy
  TH2F *   fhCaloEvPNCells;                  //! Calo vs event plane angle, number of cells
  TH2F *   fhCaloEvPECells;                  //! Calo vs event plane angle,  total measured cell energy
  
  //Module histograms
  TH2F *   fhEMod  ;                          //! cluster E distribution for different module, Reco
  TH2F *   fhAmpMod ;                         //! cell amplitude distribution for different module, Reco
  TH2F *   fhTimeMod ;                        //! cell time distribution for different module, Reco
  TH2F *   fhNClustersMod ;                   //! Number of clusters for different module, Reco
  TH2F *   fhNCellsMod ;                      //! Number of towers/crystals with signal different module, Reco
  TH2F **  fhNCellsPerClusterMod ;            //! N cells per clusters different module, Reco
  TH2F **  fhNCellsPerClusterModNoCut ;       //! N cells per clusters different module, Reco, No cut
  TH2F *   fhGridCells ;                      //! Cells ordered in column/row for different module, Reco
  TH2F *   fhGridCellsE ;                     //! Cells ordered in column/row for different module, weighted with energy, Reco
  TH2F *   fhGridCellsTime ;                  //! Cells ordered in column/row for different module, weighted with time, Reco
  TH2F *   fhGridCellsLowGain ;               //! Cells ordered in column/row for different module, Reco, low gain
  TH2F *   fhGridCellsELowGain ;              //! Cells ordered in column/row for different module, weighted with energy, Reco, low gain
  TH2F *   fhGridCellsTimeLowGain ;           //! Cells ordered in column/row for different module, weighted with time, Reco, low gain
  TH2F **  fhTimeAmpPerRCU;                   //! Time vs Amplitude measured in towers/crystals different RCU
  TH2F **  fhIMMod;                           //! cluster pairs invariant mass, different module,
	
  // Weight studies
  
  TH2F *   fhECellClusterRatio;               //! e cell / e cluster vs e cluster
  TH2F *   fhECellClusterLogRatio;            //! log (e cell / e cluster)  vs e cluster
  TH2F *   fhEMaxCellClusterRatio;            //! e max cell / e cluster vs e cluster
  TH2F *   fhEMaxCellClusterLogRatio;         //! log (e max cell / e cluster) vs e cluster
  
  TH2F *   fhLambda0ForW0[14];                //! L0 for 7 defined w0= 3, 3.5 ... 6
  //TH2F * fhLambda1ForW0[7];                  //! L1 for 7 defined w0= 3, 3.5 ... 6

  TH2F *   fhLambda0ForW0MC[14][5];            //! L0 for 7 defined w0= 3, 3.5 ... 6, depending on the particle of origin
  //TH2F * fhLambda1ForW0MC[7][5];              //! L1 for 7 defined w0= 3, 3.5 ... 6, depending on the particle of origin
  
  TH2F *   fhECellTotalRatio;                 //! e cell / e total vs e total
  TH2F *   fhECellTotalLogRatio;              //! log (e cell / e total)  vs e total
  TH2F **  fhECellTotalRatioMod;              //! e cell / e total vs e total, per SM
  TH2F **  fhECellTotalLogRatioMod;           //! log (e cell / e total)  vs e total, per SM

  // Exotic studies
  
  TH2F *   fhExoNCell  [10][5] ;               //! Number of cells per cluster for different cuts
  TH2F *   fhExoL0     [10][5] ;               //! Long shower shape axis for exotic
  TH2F *   fhExoL1     [10][5] ;               //! Short shower shape axis for exotic
  TH2F *   fhExoECross [10][5] ;               //! E cross for max cell in cluster, for different cuts
  TH2F *   fhExoTime   [10][5] ;               //! Time of exotic cluster, for different cuts
  TH2F *   fhExoDTime  [10]    ;               //! Difference in time between cell with max energy and rest of cells for exotic
  TH2F *   fhExoL0NCell[10][5] ;               //! Lambda0 vs n cells in cluster for several E cross cuts and cluster with E > 5
  TH2F *   fhExoL0ECross      ;                //! Lambda0 vs E cross fraction for clusters with E > 5 GeV
  TH2F *   fhExoL1NCell[10][5] ;               //! Lambda1 vs n cells in cluster for several E cross cuts and cluster with E > 5
  TH2F *   fhExoL1ECross      ;                //! Lambda1 vs E cross fraction for clusters with E > 5 GeV
  
  //Pure MC

  enum mcTypes {kmcPhoton   = 0, kmcPi0        = 1, kmcEta = 2,
                kmcElectron = 3, kmcPhotonConv = 4,
                kmcNeHadron = 5, kmcChHadron   = 6             };
  
  TH2F *   fhRecoMCE[7][2]  ;                 //! E   generated particle vs reconstructed E
  TH2F *   fhRecoMCPhi[7][2] ;                //! phi generated particle vs reconstructed phi
  TH2F *   fhRecoMCEta[7][2] ;                //! eta generated particle vs reconstructed Eta
  TH2F *   fhRecoMCDeltaE[7][2]  ;            //! Gen-Reco E    generated particle vs reconstructed E
  TH2F *   fhRecoMCRatioE[7][2]  ;            //! Reco/Gen E    generated particle vs reconstructed E
  TH2F *   fhRecoMCDeltaPhi[7][2];            //! Gen-Reco phi  generated particle vs reconstructed E
  TH2F *   fhRecoMCDeltaEta[7][2];            //! Gen-Reco eta  generated particle vs reconstructed E
  
  TH1F *   fhGenMCE [4]     ;                 //! pt of primary particle
  TH1F *   fhGenMCPt[4]     ;                 //! pt of primary particle
  TH2F *   fhGenMCEtaPhi[4] ;                 //! eta vs phi of primary particle
  TH1F *   fhGenMCAccE [4]     ;              //! pt of primary particle, in acceptance
  TH1F *   fhGenMCAccPt[4]     ;              //! pt of primary particle, in acceptance
  TH2F *   fhGenMCAccEtaPhi[4] ;              //! eta vs phi of primary particle, in acceptance
  
  TH2F *   fhEMVxyz    ;                      //! Electromagnetic particle production vertex
  TH2F *   fhEMR       ;                      //! Electromagnetic distance to vertex vs rec energy  
  TH2F *   fhHaVxyz    ;                      //! Hadron production vertex
  TH2F *   fhHaR       ;                      //! Hadron distance to vertex vs rec energy  
	
  //Histograms for MC track-matching
  TH2F *   fh1EOverP;                         //! p/E for track-cluster matches
  TH2F *   fh2dR;                             //! distance between projected track and cluster (eta-phi units)
  TH2F *   fh2EledEdx;                        //! dE/dx vs. momentum for electron candidates
  TH2F *   fh2MatchdEdx;                      //! dE/dx vs. momentum for all matches
	
  TH2F *   fhMCEle1EOverP;                    //! p/E for track-cluster matches, MC electrons
  TH1F *   fhMCEle1dR;                        //! distance between projected track and cluster, MC electrons
  TH2F *   fhMCEle2MatchdEdx;                 //! dE/dx vs. momentum for all matches, MC electrons	
	
  TH2F *   fhMCChHad1EOverP;                  //! p/E for track-cluster matches, MC charged hadrons
  TH1F *   fhMCChHad1dR;                      //! distance between projected track and cluster, MC charged hadrons
  TH2F *   fhMCChHad2MatchdEdx;               //! dE/dx vs. momentum for all matches, MC charged
	
  TH2F *   fhMCNeutral1EOverP;                //! p/E for track-cluster matches, MC neutral
  TH1F *   fhMCNeutral1dR;                    //! distance between projected track and cluster, MC neutral
  TH2F *   fhMCNeutral2MatchdEdx;             //! dE/dx vs. momentum for all matches, MC neutral	
	
  TH2F *   fh1EOverPR02;                      //! p/E for track-cluster matches, dR < 0.2
  TH2F *   fhMCEle1EOverPR02;                 //! p/E for track-cluster matches, dR < 0.2, MC electrons
  TH2F *   fhMCChHad1EOverPR02;               //! p/E for track-cluster matches, dR < 0.2, MC charged hadrons
  TH2F *   fhMCNeutral1EOverPR02;             //! p/E for track-cluster matches, dR < 0.2, MC neutral

  TH2F *   fh1EleEOverP;                      //! p/E for track-cluster matches, dR < 0.2, 60 < dEdx < 100
  TH2F *   fhMCEle1EleEOverP;                 //! p/E for track-cluster matches, dR < 0.2, 60 < dEdx < 100, MC electrons
  TH2F *   fhMCChHad1EleEOverP;               //! p/E for track-cluster matches, dR < 0.2, 60 < dEdx < 100, MC charged hadrons
  TH2F *   fhMCNeutral1EleEOverP;             //! p/E for track-cluster matches, dR < 0.2, 60 < dEdx < 100, MC neutral

  TH2F *   fhTrackMatchedDEta    ;            //! Eta distance between track and cluster vs cluster E, after and before photon cuts
  TH2F *   fhTrackMatchedDPhi    ;            //! Phi distance between track and cluster vs cluster E, after and before photon cuts
  TH2F *   fhTrackMatchedDEtaDPhi;            //! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before
  
  TH2F *   fhTrackMatchedDEtaPos;             //! Eta distance between track and cluster vs cluster E, after and before photon cuts
  TH2F *   fhTrackMatchedDPhiPos;             //! Phi distance between track and cluster vs cluster E, after and before photon cuts
  TH2F *   fhTrackMatchedDEtaDPhiPos;         //! Eta vs Phi distance between track and cluster, E cluster > 0.5 GeV, after and before

  AliAnaCalorimeterQA & operator = (const AliAnaCalorimeterQA & qa) ;//cpy assignment
  AliAnaCalorimeterQA(              const AliAnaCalorimeterQA & qa) ; // cpy ctor
  
  ClassDef(AliAnaCalorimeterQA,29)
} ;


#endif //ALIANACALORIMETERQA_H



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