]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/FLOW/Base/AliStarTrackCuts.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / FLOW / Base / AliStarTrackCuts.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. */
2 /* See cxx source for full Copyright notice */
3 /* $Id$ */
4
5 // AliStarTrackCuts:
6 // A track cut class for AliStarTrack
7 // origin: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch)
8
9 #ifndef ALISTARTRACKCUTS_H
10 #define ALISTARTRACKCUTS_H
11
12 #include <float.h>
13 #include "TNamed.h"
14
15 class AliStarTrack;
16
17 class AliStarTrackCuts : public TNamed {
18
19  public:
20   AliStarTrackCuts();
21   //AliStarTrackCuts(const AliStarTrackCuts& someCuts);
22   //AliStarTrackCuts& operator=(const AliStarTrackCuts& someCuts);
23   virtual  ~AliStarTrackCuts() {}
24   
25   Bool_t PassesCuts(const AliStarTrack* track) const;
26   static AliStarTrackCuts* StandardCuts();
27
28   void SetIDMax(const Int_t value) {fIDMax=value;fCutID=kTRUE;};
29   void SetIDMin(const Int_t value) {fIDMin=value;fCutID=kTRUE;};
30   void SetChargeMax(const Int_t value) {fChargeMax=value;fCutCharge=kTRUE;};
31   void SetChargeMin(const Int_t value) {fChargeMin=value;fCutCharge=kTRUE;};
32   void SetEtaMax(const Float_t value) {fEtaMax=value;fCutEta=kTRUE;};
33   void SetEtaMin(const Float_t value) {fEtaMin=value;fCutEta=kTRUE;};
34   void SetPhiMax(const Float_t value) {fPhiMax=value;fCutPhi=kTRUE;};
35   void SetPhiMin(const Float_t value) {fPhiMin=value;fCutPhi=kTRUE;};
36   void SetPtMax(const Float_t value) {fPtMax=value;fCutPt=kTRUE;};
37   void SetPtMin(const Float_t value) {fPtMin=value;fCutPt=kTRUE;};
38   void SetDCAMax(const Float_t value) {fDCAMax=value;fCutDCA=kTRUE;};
39   void SetDCAMin(const Float_t value) {fDCAMin=value;fCutDCA=kTRUE;};
40   void SetNHitsMax(const Int_t value) {fNHitsMax=value;fCutNHits=kTRUE;};
41   void SetNHitsMin(const Int_t value) {fNHitsMin=value;fCutNHits=kTRUE;};
42   void SetNHitsFitMax(const Int_t value) {fNHitsFitMax=value;fCutNHitsFit=kTRUE;};
43   void SetNHitsFitMin(const Int_t value) {fNHitsFitMin=value;fCutNHitsFit=kTRUE;};
44   void SetNHitsPossMax(const Int_t value) {fNHitsPossMax=value;fCutNHitsPoss=kTRUE;};
45   void SetNHitsPossMin(const Int_t value) {fNHitsPossMin=value;fCutNHitsPoss=kTRUE;};
46   void SetNHitsDedxMax(const Int_t value) {fNHitsDedxMax=value;fCutNHitsDedx=kTRUE;};
47   void SetNHitsDedxMin(const Int_t value) {fNHitsDedxMin=value;fCutNHitsDedx=kTRUE;};
48   void SetdEdxMax(const Float_t value) {fdEdxMax=value;fCutdEdx=kTRUE;};
49   void SetdEdxMin(const Float_t value) {fdEdxMin=value;fCutdEdx=kTRUE;};
50   void SetNSigElectMax(const Float_t value) {fNSigElectMax=value;fCutNSigElect=kTRUE;};
51   void SetNSigElectMin(const Float_t value) {fNSigElectMin=value;fCutNSigElect=kTRUE;};
52   void SetNSigPiMax(const Float_t value) {fNSigPiMax=value;fCutNSigPi=kTRUE;};
53   void SetNSigPiMin(const Float_t value) {fNSigPiMin=value;fCutNSigPi=kTRUE;};
54   void SetNSigKMax(const Float_t value) {fNSigKMax=value;fCutNSigK=kTRUE;};
55   void SetNSigKMin(const Float_t value) {fNSigKMin=value;fCutNSigK=kTRUE;};
56   void SetNSigProtonMax(const Float_t value) {fNSigProtonMax=value;fCutNSigProton=kTRUE;};
57   void SetNSigProtonMin(const Float_t value) {fNSigProtonMin=value;fCutNSigProton=kTRUE;};
58   void SetFitRatioMax(const Float_t value) {fFitRatioMax=value;fCutFitRatio=kTRUE;};
59   void SetFitRatioMin(const Float_t value) {fFitRatioMin=value;fCutFitRatio=kTRUE;};
60
61   Int_t GetIDMax() const {return fIDMax;}
62   Int_t GetIDMin() const {return fIDMin;}
63   Int_t GetChargeMax() const {return fChargeMax;}
64   Int_t GetChargeMin() const {return fChargeMin;}
65   Float_t GetEtaMax() const {return fEtaMax;}
66   Float_t GetEtaMin() const {return fEtaMin;}
67   Float_t GetPhiMax() const {return fPhiMax;}
68   Float_t GetPhiMin() const {return fPhiMin;}
69   Float_t GetPtMax() const {return fPtMax;}
70   Float_t GetPtMin() const {return fPtMin;}
71   Float_t GetDCAMax() const {return fDCAMax;}
72   Float_t GetDCAMin() const {return fDCAMin;}
73   Int_t GetNHitsMax() const {return fNHitsMax;}
74   Int_t GetNHitsMin() const {return fNHitsMin;}
75   Int_t GetNHitsFitMax() const {return fNHitsFitMax;}
76   Int_t GetNHitsFitMin() const {return fNHitsFitMin;}
77   Int_t GetNHitsPossMax() const {return fNHitsPossMax;}
78   Int_t GetNHitsPossMin() const {return fNHitsPossMin;}
79   Int_t GetNHitsDedxMax() const {return fNHitsDedxMax;}
80   Int_t GetNHitsDedxMin() const {return fNHitsDedxMin;}
81   Float_t GetdEdxMax() const {return fdEdxMax;}
82   Float_t GetdEdxMin() const {return fdEdxMin;}
83   Float_t GetNSigElectMax() const {return fNSigElectMax;}
84   Float_t GetNSigElectMin() const {return fNSigElectMin;}
85   Float_t GetNSigPiMax() const {return fNSigPiMax;}
86   Float_t GetNSigPiMin() const {return fNSigPiMin;}
87   Float_t GetNSigKMax() const {return fNSigKMax;}
88   Float_t GetNSigKMin() const {return fNSigKMin;}
89   Float_t GetNSigProtonMax() const {return fNSigProtonMax;}
90   Float_t GetNSigProtonMin() const {return fNSigProtonMin;}
91   Float_t GetFitRatioMax() const {return fFitRatioMax;};
92   Float_t GetFitRatioMin() const {return fFitRatioMin;};
93
94  private:
95   Bool_t   fCutID;  //cut on id
96   Int_t fIDMax;     //id max
97   Int_t fIDMin;     //id min
98   Bool_t   fCutCharge;  //cut on charge
99   Int_t fChargeMax;     //max charge
100   Int_t fChargeMin;     //min charge
101   Bool_t   fCutEta;     //cut on eta
102   Float_t fEtaMax;      //eta max
103   Float_t fEtaMin;      //eta min
104   Bool_t   fCutPhi;     //cut on phi
105   Float_t fPhiMax;      //phi max
106   Float_t fPhiMin;      //phi min
107   Bool_t   fCutPt;      //cut on pt
108   Float_t fPtMax;       //pt max
109   Float_t fPtMin;       //pt min
110   Bool_t   fCutDCA;     //cut dca
111   Float_t fDCAMax;      //max dca
112   Float_t fDCAMin;      //min dca
113   Bool_t   fCutNHits;   //cut nhits
114   Int_t fNHitsMax;      //max nhits
115   Int_t fNHitsMin;      //min nhits
116   Bool_t   fCutNHitsFit;//cut nhistfit
117   Int_t fNHitsFitMax;   //nhistfit max
118   Int_t fNHitsFitMin;   //nhistfit min
119   Bool_t   fCutNHitsPoss;  //cut nhitsposs
120   Int_t fNHitsPossMax;     //nhitsposs max
121   Int_t fNHitsPossMin;     //nhitsposs min
122   Bool_t   fCutNHitsDedx;  //cut nhitsdedx
123   Int_t fNHitsDedxMax;     //nhitsdedx max
124   Int_t fNHitsDedxMin;     //nhits min
125   Bool_t   fCutdEdx;       //cut dedx
126   Float_t fdEdxMax;        //dedx max
127   Float_t fdEdxMin;        //dedx min
128   Bool_t   fCutNSigElect;  //cut nsigelect
129   Float_t fNSigElectMax;   //nsigelect max
130   Float_t fNSigElectMin;   //nsigelect min
131   Bool_t   fCutNSigPi;     //cut nsigpi
132   Float_t fNSigPiMax;      //max nsigpi
133   Float_t fNSigPiMin;      //min nsigpi
134   Bool_t   fCutNSigK;      //cut nsigk
135   Float_t fNSigKMax;       //max nsigk
136   Float_t fNSigKMin;       //min nsigk
137   Bool_t   fCutNSigProton; //cut nsigproton
138   Float_t fNSigProtonMax;  //max nsigproton
139   Float_t fNSigProtonMin;  //min nsigproton
140   Bool_t  fCutFitRatio;    //cut fitratio
141   Float_t fFitRatioMax;    //max fitratio
142   Float_t fFitRatioMin;    //min fitratio
143
144   ClassDef(AliStarTrackCuts,1)
145 };
146
147 #endif
148
149