Merge branch 'master', remote branch 'origin' into TPCdev
[u/mrichter/AliRoot.git] / ANALYSIS / AliEventPoolLoop.h
CommitLineData
405be8ef 1#ifndef ALIEVENTPOOLLOOP_H
2#define ALIEVENTPOOLLOOP_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9// Realisation of an AliVEventPool which allows the user to
10// run the analysis in a loop, i.e. passing several times over
11// the same event chain.
12// Author Andreas Morsch
13// andreas.morsch@cern.ch
14
15#include <AliVEventPool.h>
16class AliRunTagCuts;
17class AliLHCTagCuts;
18class AliDetectorTagCuts;
19class AliEventTagCuts;
20class AliTagAnalysis;
325a20c4 21class TChain;
405be8ef 22
23class AliEventPoolLoop : public AliVEventPool
24{
25 public:
26 AliEventPoolLoop();
27 AliEventPoolLoop(Int_t nit);
28 AliEventPoolLoop(const char* name, const char* title);
29
30 virtual ~AliEventPoolLoop() {;}
31 // Interface
32 virtual TChain* GetNextChain();
33 virtual void GetCurrentBin(Float_t* /*bin*/);
34 virtual Int_t GetDimension();
35 virtual void Init();
b67cc855 36 virtual Int_t BinNumber() const {return fNIteration;}
a065d8ed 37
405be8ef 38 private:
39 AliEventPoolLoop(const AliEventPoolLoop& obj);
40 AliEventPoolLoop& operator=(const AliEventPoolLoop& other);
41 protected:
f690bf48 42 Int_t fMaxIterations; // Maximum number of iterations
43 Int_t fNIteration; // Number of iterations
325a20c4 44 TChain* fChainClone; // Clone of the original
405be8ef 45 ClassDef(AliEventPoolLoop, 0);
46};
47
48#endif