AliPhysics  c7b8e89 (c7b8e89)
AliFlowTrackSimpleCuts.h
Go to the documentation of this file.
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. */
2 /* See cxx source for full Copyright notice */
3 /* $Id$ */
4 
5 // AliFlowTrackSimpleCuts:
6 // A simple track cut class to the the AliFlowTrackSimple for basic
7 // kinematic cuts
8 // author: N. van der Kolk (kolk@nikhef.nl)
9 // mods: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch), Redmer Bertens (rbertens@cern.ch)
10 
11 #ifndef ALIFLOWTRACKSIMPLECUTS_H
12 #define ALIFLOWTRACKSIMPLECUTS_H
13 
14 #include "TNamed.h"
15 
16 class AliFlowTrackSimple;
17 class TParticle;
18 class TH2;
19 
21 
22  public:
23  AliFlowTrackSimpleCuts(const char* name="");
24  //AliFlowTrackSimpleCuts(const AliFlowTrackSimpleCuts& someCuts);
25  //AliFlowTrackSimpleCuts& operator=(const AliFlowTrackSimpleCuts& someCuts);
27 
28  //setters
29  void SetPtMax(Double_t max) {this->fPtMax = max; fCutPt=kTRUE; }
30  void SetPtMin(Double_t min) {this->fPtMin = min; fCutPt=kTRUE; }
31  void SetEtaMax(Double_t max) {this->fEtaMax = max; fCutEta=kTRUE; }
32  void SetEtaMin(Double_t min) {this->fEtaMin = min; fCutEta=kTRUE; }
33  void SetEtaGap(Double_t min, Double_t max)
34  {fEtaGapMin = min, fEtaGapMax = max, fCutEtaGap = kTRUE; }
35  void SetPhiMax(Double_t max) {this->fPhiMax = max; fCutPhi=kTRUE; }
36  void SetPhiMin(Double_t min) {this->fPhiMin = min; fCutPhi=kTRUE; }
37  void SetPID(Int_t pid) {this->fPID = pid; fCutPID=kTRUE; }
38  void SetCharge(Int_t c) {this->fCharge = c; fCutCharge=kTRUE; }
39  void SetMassMax(Double_t max) {this->fMassMax = max; fCutMass=kTRUE; }
40  void SetMassMin(Double_t min) {this->fMassMin = min; fCutMass=kTRUE; }
41  void SetEtaPhiEff(TH2* eff) {this->fEtaPhiEff = eff; fCutEtaPhiEff=kTRUE; }
42 
43  //getters
44  Double_t GetPtMax() const {return this->fPtMax; }
45  Double_t GetPtMin() const {return this->fPtMin; }
46  Double_t GetEtaMax() const {return this->fEtaMax; }
47  Double_t GetEtaMin() const {return this->fEtaMin; }
48  Double_t GetPhiMax() const {return this->fPhiMax; }
49  Double_t GetEtaGapMin() const {return this->fEtaGapMin; }
50  Double_t GetEtaGapMax() const {return this->fEtaGapMax; }
51  Double_t GetPhiMin() const {return this->fPhiMin; }
52  Int_t GetPID() const {return this->fPID; }
53  Int_t GetCharge() const {return this->fCharge; }
54  Double_t GetMassMax() const {return this->fMassMax; }
55  Double_t GetMassMin() const {return this->fMassMin; }
56 
57  //simple method to check if the simple track passes the simple cuts:
58  Bool_t PassesCuts(const AliFlowTrackSimple *track) const;
59  Bool_t PassesCuts(TParticle* p) const;
60 
61  Int_t GetPOItype() const {return fPOItype;}
62  void SetPOItype(Int_t t) {fPOItype=t;}
63 
64  virtual Bool_t IsSelected(TObject* obj, Int_t id=-1);
65 
66  protected:
67  Bool_t fCutPt; //cut on pt?
68  Double_t fPtMax; //max pt
69  Double_t fPtMin; //min pt
70  Bool_t fCutEta; //cut on eta?
71  Double_t fEtaMax; //max eta
72  Double_t fEtaMin; //min eta
73  Bool_t fCutEtaGap; //have eta gap (i.e. discontinuous rp selection in eta?)
74  Double_t fEtaGapMax; // max eta gap
75  Double_t fEtaGapMin; // min eta gap
76  Bool_t fCutPhi; //cut on phi?
77  Double_t fPhiMax; //max phi
78  Double_t fPhiMin; //min phi
79  Bool_t fCutPID; //cut on pid?
80  Int_t fPID; //pid
81  Bool_t fCutCharge; //cut on charge?
82  Int_t fCharge; //charge
83  Bool_t fCutMass; // cut on mass?
84  Double_t fMassMax; //max mass
85  Double_t fMassMin; //min mass
86  TH2* fEtaPhiEff; //eta, phi efficiency map
87  Bool_t fCutEtaPhiEff; //apply eta, phi efficiency map?
88  Int_t fPOItype; //which poi type do we produce? (RP=0, POI=1,2,3,4,5...)
89 
90  // not implemented: copy and assignment operator
93 
94  ClassDef(AliFlowTrackSimpleCuts,4)
95 };
96 
97 #endif
98 
99 
double Double_t
Definition: External.C:58
AliFlowTrackSimpleCuts(const char *name="")
void SetMassMin(Double_t min)
TCanvas * c
Definition: TestFitELoss.C:172
void SetPhiMin(Double_t min)
Double_t GetEtaGapMax() const
Bool_t PassesCuts(const AliFlowTrackSimple *track) const
AliFlowTrackSimpleCuts & operator=(const AliFlowTrackSimpleCuts &)
void SetEtaMax(Double_t max)
int Int_t
Definition: External.C:63
void SetEtaGap(Double_t min, Double_t max)
void SetEtaMin(Double_t min)
virtual Bool_t IsSelected(TObject *obj, Int_t id=-1)
Double_t GetEtaGapMin() const
Definition: External.C:220
void SetMassMax(Double_t max)
void SetPhiMax(Double_t max)
bool Bool_t
Definition: External.C:53