Test implementation of event pool based on TagAnalysis.
[u/mrichter/AliRoot.git] / ANALYSIS / AliEventPoolOTF.h
1 #ifndef ALIEVENTPOOLOTF_H
2 #define ALIEVENTPOOLOTF_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 via
10 // on the flight (OTF) generation of the bin using AliTagAnalysis.
11 // Author Andreas Morsch
12 // andreas.morsch@cern.ch
13
14 #include <AliVEventPool.h>
15 class AliRunTagCuts;
16 class AliLHCTagCuts;
17 class AliDetectorTagCuts;
18 class AliEventTagCuts;
19 class AliTagAnalysis;
20
21 class AliEventPoolOTF : public AliVEventPool
22 {
23  public:
24     AliEventPoolOTF();
25     AliEventPoolOTF(const char* name, const char* title);
26
27     virtual ~AliEventPoolOTF() {;}
28     // Interface
29     virtual TChain* GetNextChain();
30     virtual void  GetCurrentBin(Float_t* /*bin*/);
31     virtual Int_t GetDimension();
32     virtual void  Init();
33     virtual void  SetMultiplicityBin(Int_t min, Int_t max, Int_t step)
34         {fMultMin = min; fMultMax = max; fMultStep = step;}
35     //
36     void SetTagDirectory(char* dirname) {fTagDirectory = dirname;};
37  private:
38     AliEventPoolOTF(const AliEventPoolOTF& obj);
39     AliEventPoolOTF& operator=(const AliEventPoolOTF& other);
40  protected:
41     AliTagAnalysis*      fTagAnalysis;  // Pointer to tag analysis
42     AliRunTagCuts*       fRunCuts;      // Run      cuts
43     AliLHCTagCuts*       fLHCCuts;      // LHC      cuts
44     AliDetectorTagCuts*  fDetectorCuts; // Detector cuts
45     AliEventTagCuts*     fEventCuts;    // Event    cuts
46     char*                fTagDirectory; // Directory with local tag files
47     Int_t                fMultMin;      // Minimum multiplicity
48     Int_t                fMultMax;      // Maximum multiplicity
49     Int_t                fMultStep;     // Multiplicity step-size 
50     Int_t                fMultiplicity; // Current multiplicity
51     ClassDef(AliEventPoolOTF, 0); 
52 };
53  
54 #endif