]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnPair.h
Fixed bug in the computation of dip angle value
[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     void    SetCheckDecay(Bool_t check = kTRUE)  {fCheckDecay = check;}
42
43     void    Print(Option_t *option = "") const;
44     void    SetMixed(Bool_t doit = kTRUE) {fIsMixed = doit;}
45     Bool_t  IsMixed() const {return fIsMixed;}
46     
47     AliRsnCutManager* GetCutManager() {return &fCutManager;}
48     AliRsnMother*     GetMother() {return &fMother;}
49     AliRsnPairDef*    GetPairDef() {return fPairDef;}
50     Bool_t            Fill(AliRsnDaughter *d0, AliRsnDaughter *d1, AliRsnEvent *ev1, AliRsnEvent *ev2);
51     Int_t             GetCount() const {return fCount;}
52     void              ResetCount() {fCount = 0;}
53     
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     AliRsnEvent      *fEvent;           //! pointer to current event
68     
69   private:
70
71     ClassDef(AliRsnPair, 2)
72 };
73
74 #endif
75