]>
Commit | Line | Data |
---|---|---|
aec0ec32 | 1 | // |
2 | // *** Class AliRsnPair *** | |
3 | // | |
4 | // TODO | |
5 | // | |
6 | // authors: A. Pulvirenti (email: alberto.pulvirenti@ct.infn.it) | |
7 | // M. Vala (email: martin.vala@cern.ch) | |
8 | // | |
9 | ||
10 | #ifndef ALIRSNPAIR_H | |
11 | #define ALIRSNPAIR_H | |
12 | ||
2dab9030 | 13 | #include "TNamed.h" |
aec0ec32 | 14 | |
aec0ec32 | 15 | #include "AliRsnPairDef.h" |
2dab9030 | 16 | #include "AliRsnCutManager.h" |
11ed73f6 | 17 | #include "AliRsnMother.h" |
aec0ec32 | 18 | |
4fbb2459 | 19 | class TList; |
aec0ec32 | 20 | |
2a1c7696 | 21 | class AliRsnPair : public TNamed { |
22 | public: | |
23 | ||
24 | AliRsnPair(const char *name = "default", AliRsnPairDef *def = 0); | |
25 | AliRsnPair(const AliRsnPair ©); | |
26 | AliRsnPair& operator=(const AliRsnPair&); | |
27 | ~AliRsnPair(); | |
11ed73f6 | 28 | |
29 | // getters | |
30 | Bool_t IsOnlyTrue() const {return fOnlyTrue;} | |
31 | Bool_t IsCheckDecay() const {return fCheckDecay;} | |
32 | Bool_t IsMixed() const {return fIsMixed;} | |
33 | Int_t GetCount() const {return fCount;} | |
34 | AliRsnPairDef* GetPairDef() {return fPairDef;} | |
35 | AliRsnCutManager* GetCutManager() {return &fCutManager;} | |
36 | AliRsnMother* GetMother() {return &fMother;} | |
37 | ||
38 | // shortcuts to data-member getters | |
39 | AliRsnCutSet* GetCommonDaughterCuts() {return fCutManager.GetCommonDaughterCuts();} | |
40 | AliRsnCutSet* GetDaughter1Cuts() {return fCutManager.GetDaughter1Cuts();} | |
41 | AliRsnCutSet* GetDaughter2Cuts() {return fCutManager.GetDaughter2Cuts();} | |
42 | AliRsnCutSet* GetMotherCuts() {return fCutManager.GetMotherCuts();} | |
43 | ||
44 | // setters (not for all members) | |
45 | void SetOnlyTrue(Bool_t onlyTrue = kTRUE) {fOnlyTrue = onlyTrue;} | |
46 | void SetCheckDecay(Bool_t check = kTRUE) {fCheckDecay = check;} | |
47 | void SetMixed(Bool_t doit = kTRUE) {fIsMixed = doit;} | |
48 | void SetCount(Int_t count) {fCount = count;} | |
49 | void ResetCount() {fCount = 0;} | |
50 | ||
51 | // methods | |
2a1c7696 | 52 | Bool_t Fill(AliRsnDaughter *d0, AliRsnDaughter *d1); |
11ed73f6 | 53 | virtual void Print(Option_t *option = "") const; |
2a1c7696 | 54 | virtual void Compute(); |
55 | virtual void Init(const char *prefix, TList *list); | |
56 | ||
57 | protected: | |
58 | ||
59 | Bool_t fOnlyTrue; // select true pairs only? | |
60 | Bool_t fCheckDecay; // is the decay channel correct in a true pair? | |
61 | Bool_t fIsMixed; // is this an event-mixing? | |
62 | Int_t fCount; // counter incremented for each added pair | |
63 | ||
64 | AliRsnPairDef *fPairDef; // pair definition (particles, charges) | |
65 | AliRsnCutManager fCutManager; // collection of all cuts | |
66 | AliRsnMother fMother; // mother candidate (to avoid creating it continuously) | |
67 | ||
68 | private: | |
69 | ||
70 | ClassDef(AliRsnPair, 2) | |
aec0ec32 | 71 | }; |
72 | ||
73 | #endif | |
2dab9030 | 74 |