]>
Commit | Line | Data |
---|---|---|
b26900d0 | 1 | #ifndef ALIEVENTCUT_H |
2 | #define ALIEVENTCUT_H | |
3 | //________________________________ | |
4 | /////////////////////////////////////////////////////////// | |
5 | // | |
0d8a4589 | 6 | // class AliEventCut |
b26900d0 | 7 | // |
0d8a4589 | 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 | |
b26900d0 | 12 | // |
13 | /////////////////////////////////////////////////////////// | |
14 | ||
0d8a4589 | 15 | #include <TObject.h> |
16 | #include <TObjArray.h> | |
b4fb427e | 17 | #include "AliEventBaseCut.h" |
b26900d0 | 18 | |
a5556ea5 | 19 | class AliAOD; |
a94c0b01 | 20 | enum EEventCutProperty; |
b26900d0 | 21 | |
22 | class AliEventCut: public TObject | |
23 | { | |
24 | public: | |
25 | AliEventCut(); | |
0d8a4589 | 26 | AliEventCut(const AliEventCut& in); |
b26900d0 | 27 | virtual ~AliEventCut(); |
28 | ||
a5556ea5 | 29 | virtual Bool_t Pass(AliAOD* aod) const;//returns kTRUE if rejected |
a94c0b01 | 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); | |
b26900d0 | 33 | |
34 | protected: | |
a94c0b01 | 35 | AliEventBaseCut* FindCut(EEventCutProperty prop); |
36 | ||
0d8a4589 | 37 | TObjArray fBaseCuts; |
b26900d0 | 38 | private: |
39 | ClassDef(AliEventCut,1) | |
40 | }; | |
41 | ||
b4fb427e | 42 | class AliEventEmptyCut: public TObject |
0d8a4589 | 43 | { |
44 | public: | |
b4fb427e | 45 | AliEventEmptyCut(){} |
46 | virtual ~AliEventEmptyCut(){} | |
0d8a4589 | 47 | |
48 | Bool_t Pass(AliAOD* aod) const {return kFALSE;}//always accept | |
49 | ||
50 | protected: | |
51 | private: | |
b4fb427e | 52 | ClassDef(AliEventEmptyCut,1) |
0d8a4589 | 53 | }; |
54 | ||
b26900d0 | 55 | #endif |