1 #ifndef ALIRSNLOOPEFF_H
2 #define ALIRSNLOOPEFF_H
5 // Class to combine pairs of daughters.
10 #include "AliRsnEvent.h"
11 #include "AliRsnLoop.h"
13 class AliRsnLoopEff : public AliRsnLoop {
16 AliRsnLoopEff(const char *name = "default", Int_t nSteps = 0);
17 AliRsnLoopEff(const AliRsnLoopEff ©);
18 AliRsnLoopEff& operator=(const AliRsnLoopEff&);
21 AliRsnListOutput* GetOutput() {return (AliRsnListOutput*)fOutputs[0];}
24 void AddStep(TObject *set);
25 Int_t NStepsArray() {return (Int_t)fSteps.GetEntries();}
26 Int_t NStepsAll() {return fAddSteps + NStepsArray();}
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);
33 Int_t FindTrack(Int_t label, AliVEvent *event);
35 Int_t fAddSteps; // number of additional steps
36 TObjArray fSteps; // list of cuts for all steps with MC tracks
40 ClassDef(AliRsnLoopEff, 1)