]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/AliAnaGammaIsolCut.h
Moving AliStrLine and AliVertexerTracks from STEER to ESD library (Andrea).
[u/mrichter/AliRoot.git] / PWG4 / AliAnaGammaIsolCut.h
1 #ifndef ALIANAGAMMAISOLCUT_H
2 #define ALIANAGAMMAISOLCUT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5 /* $Id$ */
6
7 /* History of cvs commits:
8  *
9  * $Log$
10  * Revision 1.2  2007/02/09 18:40:40  schutz
11  * B\bNew version from Gustavo
12  *
13  * Revision 1.1  2007/01/25 17:24:20  schutz
14  * new class
15  *
16  * Revision 1.1  2007/01/23 17:17:29  schutz
17  * New Gamma package
18  *
19  *
20  */
21
22 //_________________________________________________________________________
23
24 // Class for the analysis of gamma  (gamma-jet, 
25 // gamma-hadron(Arleo, TODO))
26 // This class make the Isolation Cut analysis for 2 methods, pt cone sum 
27 // and pt particle threshold and with different  cone sizes and pt thresholds.
28
29 //*-- Author: Gustavo Conesa (INFN-LNF)
30
31 // --- ROOT system ---
32 #include <TROOT.h>
33 #include <TChain.h>
34 #include "TTask.h"
35 #include "TArrayD.h"
36 #include "TChain.h"
37 #include <TH2F.h>
38 #include <TTree.h> 
39 #include <TParticle.h> 
40 #include "AliAnaGammaDirect.h" 
41
42 class AliESD ; 
43  
44 class AliAnaGammaIsolCut : public AliAnaGammaDirect {
45
46 public: 
47
48   AliAnaGammaIsolCut(const char *name) ; // default ctor
49   AliAnaGammaIsolCut(const AliAnaGammaIsolCut & g) ; // cpy ctor
50   AliAnaGammaIsolCut & operator = (const AliAnaGammaIsolCut & g) ;//cpy assignment
51
52   virtual ~AliAnaGammaIsolCut() ; //virtual dtor
53   virtual void Exec(Option_t * opt = "") ;
54   virtual void ConnectInputData(Option_t *);
55   virtual void CreateOutputObjects();
56   virtual void Terminate(Option_t * opt = "");
57
58   void InitParameters();
59   void Print(const Option_t * opt)const;
60
61   Int_t    GetNCones()                  const {return fNCones ; }
62   Int_t    GetNPtThres()                const {return fNPtThres ; }
63   Float_t GetConeSizes(Int_t i)      const {return fConeSizes[i] ; }
64   Float_t GetPtThresholds(Int_t i)  const {return fPtThresholds[i] ; }
65   
66   void SetNCone(Int_t ncs)              {fNCones = ncs ; }
67   void SetNPtThres(Int_t npt)        {fNPtThres = npt; }
68   void SetConeSizes(Int_t i, Float_t r)         {fConeSizes[i] = r ; }
69   void SetPtThresholds(Int_t i, Float_t pt)   {fPtThresholds[i] = pt; }
70     
71  private:
72
73   TObjArray  *fOutputContainer ; //! output data container
74
75   Int_t         fNCones   ; //Number of cone sizes to test
76   Int_t         fNPtThres ; //Number of ptThres to test
77   Float_t     fConeSizes[10] ; // Array with cones to test
78   Float_t     fPtThresholds[10] ; // Array with pt thresholds to test
79
80   //Histograms  
81  
82   TH1F* fhPtCandidate ;
83   TH1F* fhPtThresIsolated[20][20]; //
84   TH2F* fhPtSumIsolated[20] ;  //
85
86   ClassDef(AliAnaGammaIsolCut,0)
87 } ;
88  
89
90 #endif //ALIANAGAMMAISOLCUT_H
91
92
93