Version number ++
[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 <TObject.h>
16
17 class AliESD;
18 class AliESDtrack;
19
20 class TPaveText;
21
22 class AliAnalysisTrackCuts : public TObject
23 {
24  public:
25   AliAnalysisTrackCuts();
26   
27   ~AliAnalysisTrackCuts();
28
29   void Reset();
30   
31   void SetPRange(Float_t r1, Float_t r2);
32   void SetPtRange(Float_t r1, Float_t r2);
33   void SetPxRange(Float_t r1, Float_t r2);
34   void SetPyRange(Float_t r1, Float_t r2);
35   void SetPzRange(Float_t r1, Float_t r2);
36   void SetBrRange(Float_t r1, Float_t r2);
37   void SetBzRange(Float_t r1, Float_t r2);
38   void SetEtaRange(Float_t r1, Float_t r2);
39   void SetRapRange(Float_t r1, Float_t r2);
40   
41   Bool_t IsAccepted(AliESD *esd,AliESDtrack *esdtrack);
42
43   TPaveText *GetTrackCuts();
44   void PrintTrackCuts();
45   void GetTrackStats();
46   void GetPStats();
47   void GetPxStats();
48   void GetPyStats();
49   void GetPzStats();
50   void GetPtStats();
51   void GetEtaStats();
52   void GetRapStats();
53   void GetBrStats();
54   void GetBzStats();
55
56  private:
57   Float_t fPMin, fPMax;  //Definition of the range of the P
58   Float_t fPtMin, fPtMax;  //Definition of the range of the Pt
59   Float_t fPxMin, fPxMax;  //Definition of the range of the Px
60   Float_t fPyMin, fPyMax;  //Definition of the range of the Py
61   Float_t fPzMin, fPzMax;  //Definition of the range of the Pz
62   Float_t fEtaMin, fEtaMax;  //Definition of the range of the eta
63   Float_t fRapMin, fRapMax;  //Definition of the range of the y
64   Float_t fBrMin, fBrMax;  //Definition of the range of the br
65   Float_t fBzMin, fBzMax;  //Definition of the range of the bz
66
67   Int_t fP;  //Number of events rejected due to P cut
68   Int_t fPt;  //Number of events rejected due to Pt cut
69   Int_t fPx;  //Number of events rejected due to Px cut
70   Int_t fPy;  //Number of events rejected due to Py cut
71   Int_t fPz;  //Number of events rejected due to Pz cut
72   Int_t fEta;  //Number of events rejected due to eta cut
73   Int_t fRap;  //Number of events rejected due to y cut
74   Int_t fbr;  //Number of events rejected due to br cut
75   Int_t fbz;  //Number of events rejected due to bz cut
76   Int_t fTotalTracks;  //Total number of tracks
77   Int_t fAcceptedTracks;  //Total number of accepted tracks
78    
79   Int_t fFlagP;  //Flag that shows if the P cut was imposed
80   Int_t fFlagPt;  //Flag that shows if the Pt cut was imposed
81   Int_t fFlagPx;  //Flag that shows if the Px cut was imposed
82   Int_t fFlagPy;  //Flag that shows if the Py cut was imposed
83   Int_t fFlagPz;  //Flag that shows if the Pz cut was imposed
84   Int_t fFlagEta;  //Flag that shows if the eta cut was imposed
85   Int_t fFlagRap;  //Flag that shows if the y cut was imposed
86   Int_t fFlagbr;  //Flag that shows if the br cut was imposed
87   Int_t fFlagbz;  //Flag that shows if the bz cut was imposed
88  
89   
90   ClassDef(AliAnalysisTrackCuts, 1)
91 } ;
92
93 #endif