- Clean-up of data members and methods in base classes and derived classes
[u/mrichter/AliRoot.git] / JETAN / AliJetFinder.h
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  
7 //---------------------------------------------------------------------
8 // Jet finder base class
9 // manages the search for jets 
10 // Authors: jgcn@mda.cinvestav.mx
11 //          andreas.morsch@cern.ch
12 //---------------------------------------------------------------------
13
14 #include <TObject.h>
15 #include <AliJetHeader.h>
16
17 class TFile;
18 class TTree;
19 class AliJet;
20 class AliJetReader;
21 class AliJetControlPlots;
22 class AliLeading;
23
24 class AliJetFinder : public TObject 
25 {
26  public:
27   AliJetFinder();
28   virtual ~AliJetFinder();
29
30   // getters
31   virtual AliJet *GetJets() {return fJets;}
32   virtual Bool_t GetPlotMode() const {return fPlotMode;}
33   virtual TFile* GetOutputFile() {return fOut;}
34   // setters
35   virtual void SetPlotMode(Bool_t b);
36   virtual void SetOutputFile(const char *name="jets.root");
37   virtual void SetJetReader(AliJetReader* r) {fReader=r;}
38   virtual void SetJetHeader(AliJetHeader* h) {fHeader=h;}
39
40   // others
41   virtual void   PrintJets();
42   virtual void   Run();
43   virtual void   WriteJetsToFile(Int_t i);
44   virtual void   WriteRHeaderToFile();  
45   // the following have to be implemented for each specific finder
46   virtual void Init() {}
47   virtual void Reset() {}
48   virtual void FindJets() {}
49   virtual void FindJetsTPC(){}
50   virtual void WriteJHeaderToFile() { }
51   // some methods to allow steering from the outside
52   virtual Bool_t ProcessEvent(Long64_t entry);
53   virtual void   FinishRun();
54   virtual void   ConnectTree(TTree* tree);
55   virtual void   WriteHeaders();
56
57  protected:
58   AliJetFinder(const AliJetFinder& rJetFinder);
59   AliJetFinder& operator = (const AliJetFinder& rhsf);
60
61   Bool_t fPlotMode;              // do you want control plots?
62   AliJet* fJets;                 // pointer to jet class
63   AliJet* fGenJets;              // pointer to generated jets
64   AliLeading*   fLeading;        // pointer to leading particle data 
65   AliJetReader* fReader;         // pointer to reader
66   AliJetHeader* fHeader;         // pointer to header
67   AliJetControlPlots* fPlots;    // pointer to control plots
68   TFile* fOut;                   // output file
69   ClassDef(AliJetFinder,2)
70 };
71
72 #endif