]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnPair.h
Major upgrade to the package, in order to speed-up the execution and remove some...
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnPair.h
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
13 #include "TNamed.h"
14 #include "TClonesArray.h"
15
16 #include "AliRsnDaughter.h"
17 #include "AliRsnPairDef.h"
18 #include "AliRsnMother.h"
19 #include "AliRsnCutManager.h"
20
21 class TH1;
22 class TH2;
23 class TList;
24 class TArrayI;
25
26 class AliRsnEvent;
27 class AliRsnCutSet;
28 class AliRsnFunction;
29 class AliRsnValue;
30
31 class AliRsnPair : public TNamed
32 {
33   public:
34
35     AliRsnPair(const char *name = "default", AliRsnPairDef *def = 0);
36     AliRsnPair(const AliRsnPair &copy);
37     AliRsnPair& operator=(const AliRsnPair&);
38     ~AliRsnPair();
39
40     void    SetOnlyTrue(Bool_t onlyTrue = kTRUE) {fOnlyTrue = onlyTrue;}
41
42     void    Print(Option_t *option = "") const;
43     void    SetMixed(Bool_t doit = kTRUE) {fIsMixed = doit;}
44     Bool_t  IsMixed() const {return fIsMixed;}
45     
46     AliRsnCutManager* GetCutManager() {return &fCutManager;}
47     AliRsnMother*     GetMother() {return &fMother;}
48     AliRsnPairDef*    GetPairDef() {return fPairDef;}
49     Bool_t            Fill(AliRsnDaughter *d0, AliRsnDaughter *d1, AliRsnEvent *ev1, AliRsnEvent *ev2);
50     virtual void      Compute();
51     virtual void      Init(const char *prefix, TList *list);
52
53   protected:
54
55     Bool_t            fOnlyTrue;        //  select true pairs only?
56     Bool_t            fIsMixed;         //  is this an event-mixing?
57
58     AliRsnPairDef    *fPairDef;         //  pair definition (particles, charges)
59     AliRsnCutManager  fCutManager;      //  collection of all cuts
60     AliRsnMother      fMother;          //  mother candidate (to avoid creating it continuously)
61     AliRsnEvent      *fEvent;           //  pointer to current event
62     
63   private:
64
65     ClassDef(AliRsnPair, 2)
66 };
67
68 #endif
69