1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. */
2 /* See cxx source for full Copyright notice */
5 // AliFlowTrackSimpleCuts:
6 // A simple track cut class to the the AliFlowTrackSimple for basic
8 // author: N. van der Kolk (kolk@nikhef.nl)
9 // mods: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch)
11 #ifndef ALIFLOWTRACKSIMPLECUTS_H
12 #define ALIFLOWTRACKSIMPLECUTS_H
16 class AliFlowTrackSimple;
19 class AliFlowTrackSimpleCuts : public TNamed {
22 AliFlowTrackSimpleCuts(const char* name="");
23 //AliFlowTrackSimpleCuts(const AliFlowTrackSimpleCuts& someCuts);
24 //AliFlowTrackSimpleCuts& operator=(const AliFlowTrackSimpleCuts& someCuts);
25 virtual ~AliFlowTrackSimpleCuts() {}
28 void SetPtMax(Double_t max) {this->fPtMax = max; fCutPt=kTRUE; }
29 void SetPtMin(Double_t min) {this->fPtMin = min; fCutPt=kTRUE; }
30 void SetEtaMax(Double_t max) {this->fEtaMax = max; fCutEta=kTRUE; }
31 void SetEtaMin(Double_t min) {this->fEtaMin = min; fCutEta=kTRUE; }
32 void SetPhiMax(Double_t max) {this->fPhiMax = max; fCutPhi=kTRUE; }
33 void SetPhiMin(Double_t min) {this->fPhiMin = min; fCutPhi=kTRUE; }
34 void SetPID(Int_t pid) {this->fPID = pid; fCutPID=kTRUE; }
35 void SetCharge(Int_t c) {this->fCharge = c; fCutCharge=kTRUE; }
36 void SetMassMax(Double_t max) {this->fMassMax = max; fCutMass=kTRUE; }
37 void SetMassMin(Double_t min) {this->fMassMin = min; fCutMass=kTRUE; }
40 Double_t GetPtMax() const {return this->fPtMax; }
41 Double_t GetPtMin() const {return this->fPtMin; }
42 Double_t GetEtaMax() const {return this->fEtaMax; }
43 Double_t GetEtaMin() const {return this->fEtaMin; }
44 Double_t GetPhiMax() const {return this->fPhiMax; }
45 Double_t GetPhiMin() const {return this->fPhiMin; }
46 Int_t GetPID() const {return this->fPID; }
47 Int_t GetCharge() const {return this->fCharge; }
48 Double_t GetMassMax() const {return this->fMassMax; }
49 Double_t GetMassMin() const {return this->fMassMin; }
51 //simple method to check if the simple track passes the simple cuts:
52 Bool_t PassesCuts(const AliFlowTrackSimple *track) const;
53 Bool_t PassesCuts(TParticle* p) const;
55 virtual Bool_t IsSelected(TObject* obj, Int_t id=-1);
58 Bool_t fCutPt; //cut on pt?
59 Double_t fPtMax; //max pt
60 Double_t fPtMin; //min pt
61 Bool_t fCutEta; //cut on eta?
62 Double_t fEtaMax; //max eta
63 Double_t fEtaMin; //min eta
64 Bool_t fCutPhi; //cut on phi?
65 Double_t fPhiMax; //max phi
66 Double_t fPhiMin; //min phi
67 Bool_t fCutPID; //cut on pid?
69 Bool_t fCutCharge; //cut on charge?
70 Int_t fCharge; //charge
71 Bool_t fCutMass; // cut on mass?
72 Double_t fMassMax; //max mass
73 Double_t fMassMin; //min mass
75 ClassDef(AliFlowTrackSimpleCuts,2)