]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/AliFlowTasks/AliFlowEventCuts.h
Fix XML list creation from tag cuts - reset list counter for each file tag
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowTasks / AliFlowEventCuts.h
CommitLineData
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 15class AliVEvent;
16class AliFlowTrackCuts;
daf66719 17
18class 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