]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - ANALYSIS/AliEventCut.h
Options for cuts automatically set when chosing processing option
[u/mrichter/AliRoot.git] / ANALYSIS / AliEventCut.h
... / ...
CommitLineData
1#ifndef ALIEVENTCUT_H
2#define ALIEVENTCUT_H
3//________________________________
4///////////////////////////////////////////////////////////
5//
6// class AliEventCut
7//
8// Event cut. It has list of base event cuts.
9// Each of base event cut checks only one property.
10// Logical base cuts also exists that point to other base cuts.
11// Using them one can build complicated cut with binary tree structure
12//
13///////////////////////////////////////////////////////////
14
15#include <TObject.h>
16#include <TObjArray.h>
17#include "AliEventBaseCut.h"
18
19class AliAOD;
20enum EEventCutProperty;
21
22class AliEventCut: public TObject
23{
24 public:
25 AliEventCut();
26 AliEventCut(const AliEventCut& in);
27 virtual ~AliEventCut();
28
29 virtual Bool_t Pass(AliAOD* aod) const;//returns kTRUE if rejected
30 void AddBasePartCut(AliEventBaseCut* ebcut);
31
32 void SetNChargedRange(Int_t min,Int_t max, Double_t etamin = -10.0,Double_t etamax = 10.0);
33
34 protected:
35 AliEventBaseCut* FindCut(EEventCutProperty prop);
36
37 TObjArray fBaseCuts;
38 private:
39 ClassDef(AliEventCut,1)
40};
41
42class AliEventEmptyCut: public TObject
43{
44 public:
45 AliEventEmptyCut(){}
46 virtual ~AliEventEmptyCut(){}
47
48 Bool_t Pass(AliAOD* aod) const {return kFALSE;}//always accept
49
50 protected:
51 private:
52 ClassDef(AliEventEmptyCut,1)
53};
54
55#endif