Added AliRsnCutEventUtils class: interface to /Users/bellini/alisoft/aliroot/last_tru...
[u/mrichter/AliRoot.git] / PWGLF / RESONANCES / AliRsnDaughterSelector.h
CommitLineData
c865cb1d 1#ifndef ALIRSNDAUGHTERSELECTOR_H
2#define ALIRSNDAUGHTERSELECTOR_H
3
4#include <TNamed.h>
5#include <TClonesArray.h>
b63dbf69 6#include <TObjArray.h>
c865cb1d 7
8class TEntryList;
b63dbf69 9class TList;
c865cb1d 10
11class AliRsnCutSet;
12class AliRsnEvent;
b63dbf69 13class AliRsnAction;
c865cb1d 14
15class AliRsnDaughterSelector : public TNamed {
16
17public:
18
19 AliRsnDaughterSelector(const char *name = "name", const char *title = "title");
61f275d1 20 AliRsnDaughterSelector(const AliRsnDaughterSelector &copy);
c865cb1d 21 AliRsnDaughterSelector &operator=(const AliRsnDaughterSelector &copy);
22 virtual ~AliRsnDaughterSelector();
23
24 void Init();
b63dbf69 25 void InitActions(TList *list);
c865cb1d 26 void Reset();
27 Int_t Add(AliRsnCutSet *cuts, Bool_t charged);
28 Int_t GetID(const char *cutSetName, Bool_t charged);
61f275d1 29 TEntryList *GetSelected(Int_t i, Char_t charge);
30 TEntryList *GetSelected(Int_t i, Short_t charge);
c865cb1d 31 void ScanEvent(AliRsnEvent *ev);
b63dbf69 32 void ExecActions(AliRsnEvent *ev);
61f275d1 33
34 virtual void Print(Option_t *option = "") const;
35
36 TClonesArray *GetCutSetC() {return &fCutSetsC;}
37 TClonesArray *GetCutSetN() {return &fCutSetsN;}
3da8cef7 38
b63dbf69 39 void AddAction(AliRsnAction *action);
40 TObjArray *GetActions() { return &fActions; }
3da8cef7 41
57bd06e2 42 void SetLabelCheck(Bool_t useLabelCheck = kTRUE) { fUseLabelCheck = useLabelCheck;}
c865cb1d 43
44private:
45
46 TClonesArray fCutSetsN; // cuts for neutral daughters
47 TClonesArray fCutSetsC; // cuts for charged daughters (usually, the same)
61f275d1 48
c865cb1d 49 TClonesArray fEntryListsN; // entry lists for neutrals
50 TClonesArray fEntryListsP; // entry lists for charged (one per sign)
51 TClonesArray fEntryListsM; // entry lists for charged (one per sign)
3da8cef7 52
57bd06e2 53 Bool_t fUseLabelCheck; // flag is reapiting of label should be checked
3da8cef7 54
b63dbf69 55 TObjArray fActions;
c865cb1d 56
b63dbf69 57 ClassDef(AliRsnDaughterSelector, 3)
c865cb1d 58};
59
60#endif