]>
Commit | Line | Data |
---|---|---|
c865cb1d | 1 | #ifndef ALIRSNLOOPEFF_H |
2 | #define ALIRSNLOOPEFF_H | |
3 | ||
4 | // | |
5 | // Class to combine pairs of daughters. | |
6 | // | |
7 | ||
8 | #include "AliLog.h" | |
9 | ||
10 | #include "AliRsnEvent.h" | |
11 | #include "AliRsnLoop.h" | |
12 | ||
13 | class AliRsnLoopEff : public AliRsnLoop { | |
14 | public: | |
15 | ||
16 | AliRsnLoopEff(const char *name = "default", Int_t nSteps = 0); | |
17 | AliRsnLoopEff(const AliRsnLoopEff ©); | |
18 | AliRsnLoopEff& operator=(const AliRsnLoopEff&); | |
19 | ~AliRsnLoopEff(); | |
20 | ||
21 | AliRsnListOutput* GetOutput() {return (AliRsnListOutput*)fOutputs[0];} | |
22 | void CreateOutput(); | |
23 | ||
24 | void AddStep(TObject *set); | |
25 | Int_t NStepsArray() {return (Int_t)fSteps.GetEntries();} | |
26 | Int_t NStepsAll() {return fAddSteps + NStepsArray();} | |
27 | ||
28 | virtual void AddOutput(TObject *) { AliWarning("In loops for efficiency it is not allowed to add outputs externally"); } | |
29 | virtual Bool_t Init(const char *prefix, TList *list); | |
30 | ||
31 | protected: | |
32 | ||
33 | Int_t FindTrack(Int_t label, AliVEvent *event); | |
34 | ||
35 | Int_t fAddSteps; // number of additional steps | |
36 | TObjArray fSteps; // list of cuts for all steps with MC tracks | |
37 | ||
38 | private: | |
39 | ||
40 | ClassDef(AliRsnLoopEff, 1) | |
41 | }; | |
42 | ||
43 | #endif | |
44 |