4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 // Jet reader base class
8 // manages the reading of input for jet algorithms
9 // Authors: jgcn@mda.cinvestav.mx
10 // Magali Estienne <magali.estienne@IReS.in2p3.fr>
22 class AliJetReaderHeader;
23 class AliJetUnitArray;
24 class AliJetHadronCorrectionv1;
27 class AliJetReader : public TObject
31 virtual ~AliJetReader();
34 virtual TClonesArray *GetMomentumArray() {return fMomentumArray;}
36 virtual AliJetUnitArray *GetUnitArray() const {return fUnitArray;}
37 virtual AliJetUnitArray *GetUnitArrayNoCuts() const {return fUnitArrayNoCuts;}
39 virtual AliJetReaderHeader* GetReaderHeader() { return fReaderHeader;}
40 virtual Int_t GetSignalFlag(Int_t i) const {return fSignalFlag[i];}
41 virtual Int_t GetCutFlag(Int_t i) const {return fCutFlag[i];}
42 virtual Int_t GetArrayInitialised() {return fArrayInitialised;}
45 virtual Bool_t FillMomentumArray(Int_t) {return kTRUE;}
46 virtual void FillUnitArrayFromTPCTracks(Int_t) {} // temporarily not used
47 virtual void FillUnitArrayFromEMCALHits() {} // temporarily not used
48 virtual void FillUnitArrayFromEMCALDigits(Int_t) {} // temporarily not used
49 virtual void FillUnitArrayFromEMCALClusters(Int_t) {} // temporarily not used
50 virtual void InitUnitArray() {}
51 virtual void SetReaderHeader(AliJetReaderHeader* header)
52 {fReaderHeader = header;}
55 virtual void OpenInputFiles() {}
56 virtual void ConnectTree(TTree* /*tree*/) {}
57 virtual Bool_t GetGenJets(AliJet* /*genJets*/) {return kFALSE;}
62 AliJetReader(const AliJetReader& rJetReader);
63 AliJetReader& operator = (const AliJetReader& rhsr);
64 TClonesArray *fMomentumArray; // array of particle momenta
65 TClonesArray *fArrayMC; // array of mc particles
66 TTask *fFillUnitArray; // task list for filling the UnitArray
67 AliJetReaderHeader *fReaderHeader; // pointer to header
68 TArrayI fSignalFlag; // to flag if a particle comes from pythia or
69 // from the underlying event
70 TArrayI fCutFlag; // to flag if a particle passed the pt cut or not
71 AliJetUnitArray *fUnitArray; // array of digit position and energy
72 AliJetUnitArray *fUnitArrayNoCuts; // array of digit position and energy
73 Bool_t fArrayInitialised; // To check that array of units is initialised
74 ClassDef(AliJetReader,1)