]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnLoopDaughter.h
Some bug fixes, removal of some duplicates and clarified the logic of some pieces...
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnLoopDaughter.h
1 #ifndef ALIRSNLOOPDAUGHTER_H
2 #define ALIRSNLOOPDAUGHTER_H
3
4 //
5 // Class for computations on single daughters
6 //
7
8 #include "AliRsnDaughter.h"
9 #include "AliRsnLoop.h"
10
11 class AliRsnDaughterDef;
12
13 class AliRsnLoopDaughter : public AliRsnLoop {
14 public:
15
16    AliRsnLoopDaughter(const char *name = "default", Int_t listID = 0, AliRsnDaughterDef *def = 0);
17    AliRsnLoopDaughter(const AliRsnLoopDaughter &copy);
18    AliRsnLoopDaughter& operator=(const AliRsnLoopDaughter&);
19    ~AliRsnLoopDaughter();
20    
21    Int_t              GetListID()                    {return  fListID;}
22    AliRsnDaughterDef* GetDef()                       {return  fDef;}
23    AliRsnDaughter*    GetDaughter()                  {return &fDaughter;}
24                                                      
25    void               SetOnlyTrue(Bool_t yn = kTRUE) {fOnlyTrue = yn;}
26    void               SetListID(Int_t i)             {fListID = i;}
27    void               SetDef(AliRsnDaughterDef *def) {fDef = def;}
28    
29    virtual void       Print(Option_t *opt = "") const;
30    virtual Bool_t     Init(const char *prefix, TList *list);
31    virtual Int_t      DoLoop(AliRsnEvent *main, AliRsnDaughterSelector *smain, AliRsnEvent *mix = 0, AliRsnDaughterSelector *smix = 0);
32
33 protected:
34
35    Bool_t             fOnlyTrue;   //  for selecting only true particles
36    Int_t              fListID;     //  index of entry list to use
37    AliRsnDaughterDef *fDef;        //  definition for selection
38    AliRsnDaughter     fDaughter;   //! daughter temporary member
39
40 private:
41
42    ClassDef(AliRsnLoopDaughter, 3)
43 };
44
45 #endif
46