2 // Class AliMixEventCutObj
4 // AliMixEventCutObj object contains information about one cut on for event mixing
5 // used by AliMixEventPool class
8 // Martin Vala (martin.vala@cern.ch)
11 #ifndef ALIMIXEVENTCUTOBJ_H
12 #define ALIMIXEVENTCUTOBJ_H
18 class AliMixEventCutObj : public TObject
21 enum EEPAxis_t {kMultiplicity=0, kZVertex=1, kNumberV0s=2, kNumberTracklets=3, kAllEventAxis=4};
23 AliMixEventCutObj(EEPAxis_t type=kMultiplicity,Float_t min=0,Float_t max=0, Float_t step=0);
24 AliMixEventCutObj(const AliMixEventCutObj& obj);
25 virtual ~AliMixEventCutObj() {;}
27 virtual void Print(const Option_t *) const;
28 void PrintCurrentInterval();
32 Bool_t HasMore() const;
34 Int_t GetNumberOfBins() const;
35 Float_t GetMin() const { return fCurrentVal;}
36 Float_t GetMax() const { return fCurrentVal+fCutStep-fCutSmallVal;}
37 Float_t GetStep() const { return fCutStep;}
38 Short_t GetType() const {return fCutType;}
39 Int_t GetBinNumber(Float_t num) const;
40 Int_t GetIndex(AliVEvent*ev);
41 Int_t GetIndex(AliESDEvent*ev);
42 Int_t GetIndex(AliAODEvent*ev);
43 const char *GetNameOfCut(Short_t index) const;
46 Short_t fCutType; // cut type
47 Float_t fCutMin; // cut min
48 Float_t fCutMax; // cut max
49 Float_t fCutStep; // cut step
50 Float_t fCutSmallVal; // small value
52 Float_t fCurrentVal; // current value
53 Bool_t fNoMore; // flag for no more bins
55 AliMixEventCutObj& operator=(const AliMixEventCutObj& ) { return *this;}
57 ClassDef(AliMixEventCutObj, 1)