5 // Base class object for all computation devices.
11 #include "AliRsnListOutput.h"
12 #include "AliRsnValue.h"
13 #include "AliRsnCutSet.h"
17 class AliRsnListOutput;
18 class AliRsnDaughterSelector;
20 class AliRsnLoop : public TNamed {
29 AliRsnLoop(const char *name = "default", Bool_t isMixed = kFALSE);
30 AliRsnLoop(const AliRsnLoop ©);
31 AliRsnLoop& operator=(const AliRsnLoop&);
34 void SetMixed(Bool_t yn = kTRUE) {fIsMixed = yn;}
35 void SetEventCuts(AliRsnCutSet *set) {fEventCuts = set;}
36 Bool_t IsMixed() const {return fIsMixed;}
37 AliRsnCutSet* GetEventCuts() {return fEventCuts;}
38 Bool_t OkEvent(AliRsnEvent *rsn);
40 virtual void AddOutput(TObject *output);
41 virtual void Print(Option_t *option = "") const;
42 virtual Bool_t Init(const char *prefix, TList *list);
43 virtual Int_t DoLoop(AliRsnEvent *main, AliRsnDaughterSelector *smain, AliRsnEvent *mix = 0, AliRsnDaughterSelector *smix = 0);
47 Bool_t fIsMixed; // flag to know if the loop works with event mixing
48 AliRsnCutSet *fEventCuts; // event cuts
49 TClonesArray fOutputs; // output object definitions
53 ClassDef(AliRsnLoop, 1)