]>
Commit | Line | Data |
---|---|---|
2dab9030 | 1 | // |
2 | // Class AliRsnCutManager | |
3 | // | |
4 | // The cut manager: contains a complete set of cut definitions | |
5 | // to be applied to all possible targets (one for each target), | |
6 | // in order to ease the set-up procedure of cuts and allow to | |
7 | // pass them at once to each object which must use them | |
8 | // | |
9 | // author: Martin Vala (martin.vala@cern.ch) | |
10 | // | |
11 | ||
12 | #ifndef ALIRSNCUTMANAGER_H | |
13 | #define ALIRSNCUTMANAGER_H | |
14 | ||
15 | #include <TNamed.h> | |
16 | ||
17 | #include "AliRsnCut.h" | |
18 | #include "AliRsnDaughter.h" | |
19 | #include "AliRsnMother.h" | |
20 | #include "AliRsnCutSet.h" | |
21 | ||
22 | class AliRsnCutManager : public TNamed | |
23 | { | |
24 | public: | |
25 | ||
26 | AliRsnCutManager(); | |
27 | AliRsnCutManager(const char *name, const char* title = ""); | |
28 | AliRsnCutManager(const AliRsnCutManager &cut); | |
29 | AliRsnCutManager& operator=(const AliRsnCutManager& cut); | |
30 | ~AliRsnCutManager(); | |
31 | ||
4820b1ae | 32 | AliRsnCutSet* GetCommonDaughterCuts() {return fDaughterCutsCommon;} |
33 | AliRsnCutSet* GetDaughter1Cuts() {return fDaughterCuts1;} | |
34 | AliRsnCutSet* GetDaughter2Cuts() {return fDaughterCuts2;} | |
2dab9030 | 35 | AliRsnCutSet* GetMotherCuts() {return fMotherCuts;} |
36 | ||
4820b1ae | 37 | void SetCommonDaughterCuts(AliRsnCutSet *cuts) {fDaughterCutsCommon = cuts;} |
38 | void SetDaughter1Cuts(AliRsnCutSet *cuts) {fDaughterCuts1 = cuts;} | |
39 | void SetDaughter2Cuts(AliRsnCutSet *cuts) {fDaughterCuts2 = cuts;} | |
2dab9030 | 40 | void SetMotherCuts(AliRsnCutSet *cuts) {fMotherCuts = cuts;} |
41 | void SetEvent(AliRsnEvent *event); | |
42 | ||
4820b1ae | 43 | Bool_t PassCommonDaughterCuts(AliRsnDaughter *daughter) const {if (fDaughterCutsCommon) return fDaughterCutsCommon->IsSelected(daughter); return kTRUE;} |
44 | Bool_t PassDaughter1Cuts(AliRsnDaughter *daughter) const {if (fDaughterCuts1) return fDaughterCuts2->IsSelected(daughter); return kTRUE;} | |
45 | Bool_t PassDaughter2Cuts(AliRsnDaughter *daughter) const {if (fDaughterCuts2) return fDaughterCuts2->IsSelected(daughter); return kTRUE;} | |
2dab9030 | 46 | Bool_t PassMotherCuts(AliRsnMother *mother) {if (fMotherCuts) return fMotherCuts->IsSelected(mother); return kTRUE;} |
47 | ||
48 | private: | |
49 | ||
4820b1ae | 50 | AliRsnCutSet *fDaughterCutsCommon; // single-track cuts common to both daughters |
51 | AliRsnCutSet *fDaughterCuts1; // single-track cuts for only first daughter | |
52 | AliRsnCutSet *fDaughterCuts2; // single-track cuts for only second daughter | |
53 | AliRsnCutSet *fMotherCuts; // mother cuts (on relations between daughters) | |
2dab9030 | 54 | |
55 | ClassDef(AliRsnCutManager, 1) // dictionary | |
56 | }; | |
57 | ||
58 | #endif |