]>
Commit | Line | Data |
---|---|---|
99e5fe42 | 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 | ||
99e5fe42 | 7 | // Jet reader base class |
8 | // manages the reading of input for jet algorithms | |
b45b0c92 | 9 | // Authors: jgcn@mda.cinvestav.mx |
10 | // Magali Estienne <magali.estienne@IReS.in2p3.fr> | |
11 | ||
99e5fe42 | 12 | #include <TObject.h> |
13 | #include <TChain.h> | |
8011d399 | 14 | #include <TArrayI.h> |
b45b0c92 | 15 | #ifndef ROOT_TTask |
16 | #include "TTask.h" | |
17 | #endif | |
18 | ||
19 | #include <AliJetUnitArray.h> | |
20 | #include <AliJetHadronCorrectionv1.h> | |
21 | ||
7d0f353c | 22 | class TTree; |
b45b0c92 | 23 | class TTask; |
99e5fe42 | 24 | class TClonesArray; |
25 | class AliJetReaderHeader; | |
b45b0c92 | 26 | class AliJetUnitArray; |
99e5fe42 | 27 | class AliESD; |
7d0f353c | 28 | class AliJet; |
99e5fe42 | 29 | |
99e5fe42 | 30 | class AliJetReader : public TObject |
31 | { | |
32 | public: | |
33 | AliJetReader(); | |
34 | virtual ~AliJetReader(); | |
35 | ||
36 | // Getters | |
37 | virtual TClonesArray *GetMomentumArray() {return fMomentumArray;} | |
b45b0c92 | 38 | |
39 | virtual AliJetUnitArray *GetUnitArray() const {return fUnitArray;} | |
40 | virtual AliJetUnitArray *GetUnitArrayNoCuts() const {return fUnitArrayNoCuts;} | |
41 | ||
99e5fe42 | 42 | virtual AliJetReaderHeader* GetReaderHeader() { return fReaderHeader;} |
8011d399 | 43 | virtual Int_t GetSignalFlag(Int_t i) const {return fSignalFlag[i];} |
b45b0c92 | 44 | virtual Int_t GetCutFlag(Int_t i) const {return fCutFlag[i];} |
45 | virtual Int_t GetArrayInitialised() {return fArrayInitialised;} | |
7d0f353c | 46 | |
99e5fe42 | 47 | // Setters |
7d0f353c | 48 | virtual Bool_t FillMomentumArray(Int_t) {return kTRUE;} |
b45b0c92 | 49 | virtual void FillUnitArrayFromTPCTracks(Int_t) {} // temporarily not used |
50 | virtual void FillUnitArrayFromEMCALHits() {} // temporarily not used | |
51 | virtual void FillUnitArrayFromEMCALDigits(Int_t) {} // temporarily not used | |
52 | virtual void FillUnitArrayFromEMCALClusters(Int_t) {} // temporarily not used | |
53 | virtual void InitUnitArray() {} | |
7d0f353c | 54 | virtual void SetReaderHeader(AliJetReaderHeader* header) |
b45b0c92 | 55 | {fReaderHeader = header;} |
99e5fe42 | 56 | |
7d0f353c | 57 | // Others |
58 | virtual void OpenInputFiles() {} | |
59 | virtual void ConnectTree(TTree* /*tree*/) {} | |
60 | virtual Bool_t GetGenJets(AliJet* /*genJets*/) {return kFALSE;} | |
61 | ||
99e5fe42 | 62 | void ClearArray(); |
63 | ||
64 | protected: | |
1b7d5d7e | 65 | AliJetReader(const AliJetReader& rJetReader); |
66 | AliJetReader& operator = (const AliJetReader& rhsr); | |
b45b0c92 | 67 | TClonesArray *fMomentumArray; // array of particle momenta |
68 | TClonesArray *fArrayMC; // array of mc particles | |
69 | TTask *fFillUnitArray; // task list for filling the UnitArray | |
70 | AliJetReaderHeader *fReaderHeader; // pointer to header | |
71 | TArrayI fSignalFlag; // to flag if a particle comes from pythia or | |
72 | // from the underlying event | |
73 | TArrayI fCutFlag; // to flag if a particle passed the pt cut or not | |
74 | AliJetUnitArray *fUnitArray; // array of digit position and energy | |
75 | AliJetUnitArray *fUnitArrayNoCuts; // array of digit position and energy | |
76 | Bool_t fArrayInitialised; // To check that array of units is initialised | |
99e5fe42 | 77 | ClassDef(AliJetReader,1) |
78 | }; | |
79 | ||
80 | #endif |