]>
Commit | Line | Data |
---|---|---|
daf66719 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. */ |
2 | /* See cxx source for full Copyright notice */ | |
3 | /* $Id$ */ | |
4 | ||
5 | // AliFlowEventCuts: | |
6 | // An event cut class | |
7 | // origin: Mikolaj Krzewicki (mikolaj.krzewicki@cern.ch) | |
8 | ||
9 | #ifndef ALIFLOWEVENTCUTS_H | |
10 | #define ALIFLOWEVENTCUTS_H | |
11 | ||
12 | #include <float.h> | |
13 | #include "TNamed.h" | |
14 | ||
9a0783cc | 15 | class AliVEvent; |
16 | class AliFlowTrackCuts; | |
daf66719 | 17 | |
18 | class AliFlowEventCuts : public TNamed { | |
19 | ||
20 | public: | |
9a0783cc | 21 | enum refMultMethod { kTPConly, kSPDtracklets }; |
22 | ||
daf66719 | 23 | AliFlowEventCuts(); |
957517fa | 24 | AliFlowEventCuts(const char* name, const char* title = "AliFlowEventCuts"); |
daf66719 | 25 | //AliFlowEventCuts(const AliFlowEventCuts& someCuts); |
26 | //AliFlowEventCuts& operator=(const AliFlowEventCuts& someCuts); | |
27 | virtual ~AliFlowEventCuts() {} | |
28 | ||
29 | virtual Bool_t IsSelected(const TObject* obj); | |
30 | ||
31 | Bool_t PassesCuts(const AliVEvent* event); | |
32 | ||
33 | static AliFlowEventCuts* StandardCuts(); | |
34 | ||
957517fa | 35 | void SetNumberOfTracksMax(Int_t value) {fNumberOfTracksMax=value;fCutNumberOfTracks=kTRUE;} |
36 | void SetNumberOfTracksMin(Int_t value) {fNumberOfTracksMin=value;fCutNumberOfTracks=kTRUE;} | |
37 | void SetNumberOfTracksRange(Int_t min, Int_t max) {fNumberOfTracksMin=min;fNumberOfTracksMax=max;fCutNumberOfTracks=kTRUE;} | |
38 | void SetRefMultMax(Int_t value) {fRefMultMax=value;fCutRefMult=kTRUE;} | |
39 | void SetRefMultMin(Int_t value) {fRefMultMin=value;fCutRefMult=kTRUE;} | |
40 | void SetRefMultRange(Int_t min, Int_t max) {fRefMultMin=min;fRefMultMax=max;fCutRefMult=kTRUE;} | |
daf66719 | 41 | |
42 | Int_t GetNumberOfTracksMax() const {return fNumberOfTracksMax;} | |
43 | Int_t GetNumberOfTracksMin() const {return fNumberOfTracksMin;} | |
5559ce24 | 44 | Int_t GetRefMultMax() const {return fRefMultMax;} |
45 | Int_t GetRefMultMin() const {return fRefMultMin;} | |
9a0783cc | 46 | void SetRefMultMethod(refMultMethod m) {fRefMultMethod=m;} |
47 | refMultMethod GetRefMultMethod() const {return fRefMultMethod;} | |
daf66719 | 48 | |
9a0783cc | 49 | Int_t RefMult(const AliVEvent* event, AliFlowTrackCuts* cuts=NULL); |
50 | //Int_t GetRefMult() {return fRefMult;} | |
51 | Int_t GetReferenceMultiplicity(const AliVEvent* event) {return RefMult(event);} | |
333ce021 | 52 | |
daf66719 | 53 | private: |
5559ce24 | 54 | Bool_t fCutNumberOfTracks;//cut on # of tracks |
daf66719 | 55 | Int_t fNumberOfTracksMax; //limits |
56 | Int_t fNumberOfTracksMin; //limits | |
5559ce24 | 57 | Bool_t fCutRefMult; //cut on refmult |
9a0783cc | 58 | refMultMethod fRefMultMethod; //how do we calculate refmult? |
5559ce24 | 59 | Int_t fRefMultMax; //max refmult |
60 | Int_t fRefMultMin; //min refmult | |
daf66719 | 61 | |
9a0783cc | 62 | Int_t fRefMult; //store the reference multiplicity |
333ce021 | 63 | |
daf66719 | 64 | ClassDef(AliFlowEventCuts,1) |
65 | }; | |
66 | ||
67 | #endif | |
68 | ||
69 |