]>
Commit | Line | Data |
---|---|---|
99e5fe42 | 1 | #ifndef ALIJETFINDER_H |
2 | #define ALIJETFINDER_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 | //--------------------------------------------------------------------- |
8 | // Jet finder base class | |
9 | // manages the search for jets | |
7d0f353c | 10 | // Authors: jgcn@mda.cinvestav.mx |
11 | // andreas.morsch@cern.ch | |
8838ab7a | 12 | // magali.estienne@subatech.in2p3.fr |
99e5fe42 | 13 | //--------------------------------------------------------------------- |
14 | ||
15 | #include <TObject.h> | |
1d27ecd2 | 16 | #include "AliAODJet.h" |
ad8ada26 | 17 | #include "AliJetReader.h" |
99e5fe42 | 18 | |
19 | class TFile; | |
8838ab7a | 20 | class TChain; |
99e5fe42 | 21 | class AliJet; |
7aec0427 | 22 | class AliJetHeader; |
99e5fe42 | 23 | class AliJetControlPlots; |
24 | class AliLeading; | |
1d27ecd2 | 25 | class AliAODJet; |
26 | class AliAODEvent; | |
99e5fe42 | 27 | |
99e5fe42 | 28 | class AliJetFinder : public TObject |
29 | { | |
30 | public: | |
99e5fe42 | 31 | AliJetFinder(); |
32 | virtual ~AliJetFinder(); | |
33 | ||
34 | // getters | |
ad8ada26 | 35 | virtual AliJetReader *GetReader() {return fReader;} |
0ab34e91 | 36 | virtual AliJetHeader *GetHeader() {return fHeader;} |
8838ab7a | 37 | virtual AliJet *GetJets() {return fJets;} |
38 | virtual Bool_t GetPlotMode() const {return fPlotMode;} | |
39 | virtual TFile *GetOutputFile() {return fOut;} | |
99e5fe42 | 40 | // setters |
8838ab7a | 41 | virtual void SetPlotMode(Bool_t b); |
42 | virtual void SetOutputFile(const char *name="jets.root"); | |
43 | virtual void SetJetReader(AliJetReader* r) {fReader=r;} | |
44 | virtual void SetJetHeader(AliJetHeader* h) {fHeader=h;} | |
99e5fe42 | 45 | // others |
8838ab7a | 46 | virtual void AddJet(AliAODJet jet); |
47 | virtual void PrintJets(); | |
48 | virtual void Run(); | |
49 | virtual void WriteRHeaderToFile(); | |
99e5fe42 | 50 | // the following have to be implemented for each specific finder |
8838ab7a | 51 | virtual void Init() {} |
52 | virtual void InitTask(TChain* /*tree*/) {} | |
53 | virtual void Reset() {fNAODjets = 0;} | |
54 | virtual void FindJets() {} | |
55 | virtual void FindJetsC(){} | |
56 | virtual void WriteJHeaderToFile() { } | |
7d0f353c | 57 | // some methods to allow steering from the outside |
8838ab7a | 58 | virtual Bool_t ProcessEvent(); |
59 | virtual Bool_t ProcessEvent2(); | |
60 | virtual void FinishRun(); | |
61 | virtual void ConnectTree(TTree* tree, TObject* data); | |
62 | virtual void ConnectAOD(AliAODEvent* aod); | |
63 | virtual void ConnectAODNonStd(AliAODEvent* aod,const char* bname); | |
64 | virtual TTree *MakeTreeJ(char* name); | |
65 | virtual void WriteHeaders(); | |
66 | virtual void WriteJetsToFile() {;} | |
67 | virtual void TestJet() {;} | |
68 | ||
99e5fe42 | 69 | protected: |
1b7d5d7e | 70 | AliJetFinder(const AliJetFinder& rJetFinder); |
71 | AliJetFinder& operator = (const AliJetFinder& rhsf); | |
eaabc21f | 72 | TTree* fTreeJ; //! pointer to jet tree |
73 | Bool_t fPlotMode; //! do you want control plots? | |
19e6695b | 74 | AliJet* fJets; //! pointer to jet class |
75 | AliJet* fGenJets; //! pointer to generated jets | |
76 | AliLeading* fLeading; //! pointer to leading particle data | |
77 | AliJetReader* fReader; // pointer to reader | |
78 | AliJetHeader* fHeader; // pointer to header | |
1d27ecd2 | 79 | TClonesArray* fAODjets; //! reconstructed jets |
80 | Int_t fNAODjets; //! number of reconstructed jets | |
19e6695b | 81 | AliJetControlPlots* fPlots; //! pointer to control plots |
82 | TFile* fOut; //! output file | |
8838ab7a | 83 | |
7d0f353c | 84 | ClassDef(AliJetFinder,2) |
99e5fe42 | 85 | }; |
86 | ||
87 | #endif |