]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/PartCorrDep/AliAnaPi0EbE.h
Be sure to load mapping when needed
[u/mrichter/AliRoot.git] / PWG4 / PartCorrDep / AliAnaPi0EbE.h
index 09b486f5586a907d8f15c3b1b1177f2661018683..0b1b0ea3da54efe7a78bb75010def1403307c4e1 100755 (executable)
@@ -17,8 +17,9 @@
 
 
 // --- ROOT system ---
-class TH2F ; 
+class TH3F ; 
 class TList ;
+class TObjString;
 
 // --- ANALYSIS system ---
 #include "AliAnaPartCorrBaseClass.h"
@@ -26,72 +27,107 @@ class TList ;
 class AliAnaPi0EbE : public AliAnaPartCorrBaseClass {
 
  public: 
-  
   AliAnaPi0EbE() ; // default ctor
+  virtual ~AliAnaPi0EbE() ; //virtual dtor
+ private:
   AliAnaPi0EbE(const AliAnaPi0EbE & g) ; // cpy ctor
   AliAnaPi0EbE & operator = (const AliAnaPi0EbE & g) ;//cpy assignment
-  virtual ~AliAnaPi0EbE() ; //virtual dtor
+
+ public:  
+       
+  //General
   
-  enum anaTypes {kIMCalo, kSSCalo, kIMCaloTracks};
+  TObjString *   GetAnalysisCuts();
   
-  TList *  GetCreateOutputObjects();
+  TList      *   GetCreateOutputObjects();
   
-  void Init();
-  void InitParameters();
+  void           Init();
   
-  void MakeAnalysisFillAOD()  ;
-  void MakeAnalysisFillHistograms() ; 
+  void           InitParameters();
+
+  void           MakeAnalysisFillAOD()  ;
+   
+  void           MakeAnalysisFillHistograms() ; 
   
-  void MakeInvMassInCalorimeter() ;
-  void MakeInvMassInCalorimeterAndCTS() ;
-  void MakeShowerShapeIdentification() ;
+  void           Print(const Option_t * opt) const;
   
-  void Print(const Option_t * opt)const;
+  // Main
   
-  anaTypes GetAnalysisType()   const {return fAnaType ; }
-  void SetAnalysisType(anaTypes ana)    {fAnaType = ana ; }
+  void           MakeInvMassInCalorimeter() ;
   
-  TString GetInputAODGammaConvName()   const {return fInputAODGammaConvName ; }
-  void SetInputAODGammaConvName(TString name)    {fInputAODGammaConvName = name ; }    
+  void           MakeInvMassInCalorimeterAndCTS() ;
   
-  //Only for pi0 SS identification case
-  void SetCalorimeter(TString det)    {fCalorimeter = det ; }
+  void           MakeShowerShapeIdentification() ;
+  
+  //Setters Getters
+  
+  //Analysis types
+  enum anaTypes  {kIMCalo, kSSCalo, kIMCaloTracks};  
+  anaTypes       GetAnalysisType()                     const { return fAnaType               ; }
+  void           SetAnalysisType(anaTypes ana)               { fAnaType = ana                ; }
   
-  void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3) {
-    fMinDist = m1;
-    fMinDist2 = m2;
-    fMinDist3 = m3;
-  }
+  TString        GetInputAODGammaConvName()            const { return fInputAODGammaConvName ; }
+  void           SetInputAODGammaConvName(TString name)      { fInputAODGammaConvName = name ; }       
+  
+  //Only for pi0 SS identification case
+  void           SetCalorimeter(TString & det)               { fCalorimeter = det            ; }
   
+  void           SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3) {
+                  fMinDist = m1; fMinDist2 = m2; fMinDist3 = m3                              ; }
+
+  //For histograms
+  enum mcTypes   {mcPhoton = 0, mcConversion = 1, mcPi0 = 2, mcElectron = 3, mcOther = 4};
+
  private:
   
-  anaTypes fAnaType; //Select analysis type
+  anaTypes       fAnaType; //Select analysis type
   
   //Only for pi0 SS identification case, kSSCalo
-  TString fCalorimeter ; // Calorimeter where the gamma is searched;
-  Float_t fMinDist ;     // Minimal distance to bad channel to accept cluster
-  Float_t fMinDist2;     // Cuts on Minimal distance to study acceptance evaluation
-  Float_t fMinDist3;     // One more cut on distance used for acceptance-efficiency study
+  TString        fCalorimeter ;            // Calorimeter where the gamma is searched;
+  Float_t        fMinDist ;                // Minimal distance to bad channel to accept cluster
+  Float_t        fMinDist2;                // Cuts on Minimal distance to study acceptance evaluation
+  Float_t        fMinDist3;                // One more cut on distance used for acceptance-efficiency study
   
   //Only for combination of calorimeter and conversion photons, kIMCaloTracks
-  TClonesArray * fInputAODGammaConv; //AOD array with conversion photons reconstructed in CTS
-  TString fInputAODGammaConvName;    //Name of AOD branch with conversion photons
+  TClonesArray * fInputAODGammaConv;       //! AOD array with conversion photons reconstructed in CTS
+  TString        fInputAODGammaConvName;   //  Name of AOD branch with conversion photons
   
   //Histograms
-  TH1F * fhPtPi0   ;         //! Number of identified  pi0
-  TH2F * fhPhiPi0  ;         //! Phi of identified  pi0
-  TH2F * fhEtaPi0  ;         //! eta of identified  pi0  
-  
-  //MC
-  TH1F * fhPtMCNoPi0;   //! Number of identified pi0, not coming from pi0
-  TH2F * fhPhiMCNoPi0;  //! Phi of identified pi0, not coming from pi0
-  TH2F * fhEtaMCNoPi0;  //! eta of identified  pi0, not coming from pi0
-  TH1F * fhPtMCPi0;     //! Number of identified pi0, coming from pi0
-  TH2F * fhPhiMCPi0;    //! Phi of identified pi0, coming from pi0
-  TH2F * fhEtaMCPi0;    //! eta of identified pi0, coming from pi0
-  
-  ClassDef(AliAnaPi0EbE,1)
-    } ;
+  
+  TH1F         * fhPtPi0  ;                //! Number of identified  pi0 vs pT
+  TH1F         * fhEPi0   ;                //! Number of identified  pi0 vs E
+  TH3F         * fhEEtaPhiPi0  ;           //! E vs eta phi of identified  pi0 
+  
+  TH2F         * fhEDispersion ;           //! E vs disp of pi0 pairs
+  TH2F         * fhELambda0 ;              //! E vs lambda0 of pi0 pairs 
+  TH2F         * fhELambda1 ;              //! E vs lambda1 of pi0 pairs 
+  
+  TH2F         * fhEdDispersion ;          //! E vs disp/ncells of pi0 pairs
+  TH2F         * fhEdLambda0 ;             //! E vs lambda0/ncells of pi0 pairs 
+  TH2F         * fhEdLambda1 ;             //! E vs lambda1/ncells of pi0 pairs 
+
+  TH2F         * fhClusterPairDiffTimeE;   //! Pair of clusters time difference vs E
+  TH2F         * fhClusterPairDiffTimeAsy; //! Pair of clusters time difference vs Asymmetry
+  
+  //MC histograms
+  
+  TH2F         * fhEMCLambda0[5] ;         //! E vs lambda0 of pi0 pairs but really from MC particle
+  TH2F         * fhEMCdLambda0[5];         //! E vs lambda0 of pi0 pairs but really from MC particle
+  TH2F         * fhEMCLambda1[5] ;         //! E vs lambda1 of pi0 pairs but really from MC particle
+  TH2F         * fhEMCdLambda1[5];         //! E vs lambda1 of pi0 pairs but really from MC particle
+  TH2F         * fhEMCDispersion[5] ;      //! E vs dispersion of pi0 pairs but really from MC particle
+  TH2F         * fhEMCdDispersion[5];      //! E vs dispersion of pi0 pairs but really from MC particle
+  
+  TH1F         * fhPtMCNoPi0;              //! Number of identified pi0, not coming from pi0
+  TH2F         * fhPhiMCNoPi0;             //! Phi of identified pi0, not coming from pi0
+  TH2F         * fhEtaMCNoPi0;             //! eta of identified  pi0, not coming from pi0
+  TH1F         * fhPtMCPi0;                //! Number of identified pi0, coming from pi0
+  TH2F         * fhPhiMCPi0;               //! Phi of identified pi0, coming from pi0
+  TH2F         * fhEtaMCPi0;               //! eta of identified pi0, coming from pi0
+  
+  
+  ClassDef(AliAnaPi0EbE,6)
+} ;
 
 
 #endif //ALIANAPI0EBE_H