Balance function analysis (P.Christakoglou)
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTrackCuts.h
1 #ifndef ALIANALYSISTRACKCUTS_H
2 #define ALIANALYSISTRACKCUTS_H
3 /*  See cxx source for full Copyright notice */
4
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //                       Class AliAnalysisTrackCuts
10 //   This is the class for the cuts in event & track level
11 //
12 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
13 //-------------------------------------------------------------------------
14
15 #include <TPaveText.h>
16 #include <TROOT.h>
17 #include <TObject.h>
18
19 #include "AliESD.h"
20 #include "AliESDtrack.h"
21
22 class AliAnalysisTrackCuts : public TObject
23 {
24  private:
25   Float_t fPMin, fPMax;  //Definition of the range of the P
26   Float_t fPtMin, fPtMax;  //Definition of the range of the Pt
27   Float_t fPxMin, fPxMax;  //Definition of the range of the Px
28   Float_t fPyMin, fPyMax;  //Definition of the range of the Py
29   Float_t fPzMin, fPzMax;  //Definition of the range of the Pz
30   Float_t fEtaMin, fEtaMax;  //Definition of the range of the eta
31   Float_t fRapMin, fRapMax;  //Definition of the range of the y
32   Float_t fBrMin, fBrMax;  //Definition of the range of the br
33   Float_t fBzMin, fBzMax;  //Definition of the range of the bz
34
35   Int_t fP;  //Number of events rejected due to P cut
36   Int_t fPt;  //Number of events rejected due to Pt cut
37   Int_t fPx;  //Number of events rejected due to Px cut
38   Int_t fPy;  //Number of events rejected due to Py cut
39   Int_t fPz;  //Number of events rejected due to Pz cut
40   Int_t fEta;  //Number of events rejected due to eta cut
41   Int_t fRap;  //Number of events rejected due to y cut
42   Int_t fbr;  //Number of events rejected due to br cut
43   Int_t fbz;  //Number of events rejected due to bz cut
44   Int_t fTotalTracks;  //Total number of tracks
45   Int_t fAcceptedTracks;  //Total number of accepted tracks
46    
47   Int_t fFlagP;  //Flag that shows if the P cut was imposed
48   Int_t fFlagPt;  //Flag that shows if the Pt cut was imposed
49   Int_t fFlagPx;  //Flag that shows if the Px cut was imposed
50   Int_t fFlagPy;  //Flag that shows if the Py cut was imposed
51   Int_t fFlagPz;  //Flag that shows if the Pz cut was imposed
52   Int_t fFlagEta;  //Flag that shows if the eta cut was imposed
53   Int_t fFlagRap;  //Flag that shows if the y cut was imposed
54   Int_t fFlagbr;  //Flag that shows if the br cut was imposed
55   Int_t fFlagbz;  //Flag that shows if the bz cut was imposed
56  
57  public:
58   AliAnalysisTrackCuts();
59   
60   ~AliAnalysisTrackCuts();
61
62   void Reset();
63   
64   void SetPRange(Float_t r1, Float_t r2);
65   void SetPtRange(Float_t r1, Float_t r2);
66   void SetPxRange(Float_t r1, Float_t r2);
67   void SetPyRange(Float_t r1, Float_t r2);
68   void SetPzRange(Float_t r1, Float_t r2);
69   void SetBrRange(Float_t r1, Float_t r2);
70   void SetBzRange(Float_t r1, Float_t r2);
71   void SetEtaRange(Float_t r1, Float_t r2);
72   void SetRapRange(Float_t r1, Float_t r2);
73   
74   Bool_t IsAccepted(AliESD *esd,AliESDtrack *esdtrack);
75
76   TPaveText *GetTrackCuts();
77   void PrintTrackCuts();
78   void GetTrackStats();
79   void GetPStats();
80   void GetPxStats();
81   void GetPyStats();
82   void GetPzStats();
83   void GetPtStats();
84   void GetEtaStats();
85   void GetRapStats();
86   void GetBrStats();
87   void GetBzStats();
88   
89   ClassDef(AliAnalysisTrackCuts, 1)
90 } ;
91
92 #endif