First commit of new jet reconstruction and analysis code to be used for the
[u/mrichter/AliRoot.git] / JETAN / AliJetReader.h
1 #ifndef ALIJETREADER_H
2 #define ALIJETREADER_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6  
7 //---------------------------------------------------------------------
8 // Jet reader base class
9 // manages the reading of input for jet algorithms
10 // Author: jgcn@mda.cinvestav.mx
11 //---------------------------------------------------------------------
12   
13 #include <TObject.h>
14 #include <TChain.h>
15
16 class TClonesArray;
17 class AliJetReaderHeader;
18 class AliESD;
19 class AliHeader;
20
21
22 class AliJetReader : public TObject 
23 {
24  public: 
25   AliJetReader();
26   virtual ~AliJetReader();
27
28   // Getters
29   virtual TClonesArray *GetMomentumArray() {return fMomentumArray;}
30   virtual Int_t GetChainEntries() {return fChain->GetEntries();} 
31   virtual AliJetReaderHeader* GetReaderHeader() { return fReaderHeader;}
32   virtual AliHeader* GetAliHeader() { return fAliHeader;}
33
34   // Setters
35   virtual void FillMomentumArray(Int_t) {}
36   virtual void SetReaderHeader(AliJetReaderHeader* header) {fReaderHeader = header;}
37           
38   // others
39   virtual void OpenInputFiles() {}
40   void ClearArray();
41  
42  protected:
43   TChain                  *fChain;         // chain for reconstructed tracks
44   TChain                  *fChainMC;       // chain for mc information
45   TClonesArray            *fMomentumArray; // array of particle momenta
46   TClonesArray            *fArrayMC;       // array of mc particles
47   AliESD                  *fESD;           // pointer to esd
48   AliJetReaderHeader      *fReaderHeader;  // pointer to header
49   AliHeader               *fAliHeader;     // pointer to event header
50   ClassDef(AliJetReader,1)
51 };
52  
53 #endif