GetClusterFast function implemented (No getter before) (Marian)
[u/mrichter/AliRoot.git] / TPC / AliTPCReconstructor.h
1 #ifndef ALITPCRECONSTRUCTOR_H
2 #define ALITPCRECONSTRUCTOR_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 #include "AliReconstructor.h"
9
10 class AliTPCParam;
11
12
13 class AliTPCReconstructor: public AliReconstructor {
14 public:
15   AliTPCReconstructor(): AliReconstructor() {};
16   virtual ~AliTPCReconstructor() {};
17
18   virtual void         Reconstruct(AliRunLoader* runLoader) const;
19   virtual void         Reconstruct(AliRunLoader* runLoader,
20                                    AliRawReader* rawReader) const;
21   virtual void         Reconstruct(TTree* digitsTree, TTree* clustersTree) const {
22     AliReconstructor::Reconstruct(digitsTree,clustersTree);
23   }
24   virtual void         Reconstruct(AliRawReader* rawReader, TTree* clustersTree) const {
25     AliReconstructor::Reconstruct(rawReader,clustersTree);
26   }
27   virtual AliTracker*  CreateTracker(AliRunLoader* runLoader) const;
28   virtual void         FillESD(AliRunLoader* runLoader, AliESD* esd) const;
29   virtual void         FillESD(TTree* digitsTree, TTree* clustersTree, 
30                                AliESD* esd) const {
31     AliReconstructor::FillESD(digitsTree,clustersTree,esd);
32   }
33   virtual void         FillESD(AliRawReader* rawReader, TTree* clustersTree, 
34                                AliESD* esd) const {
35     AliReconstructor::FillESD(rawReader,clustersTree,esd);
36   }
37   virtual void         FillESD(AliRunLoader* runLoader, 
38                                AliRawReader* rawReader, AliESD* esd) const {
39     AliReconstructor::FillESD(runLoader,rawReader,esd);
40   }
41
42   static void SetCtgRange(Double_t ctgRange = 1.05) {fgCtgRange = ctgRange;}
43   static Double_t GetCtgRange(){ return fgCtgRange;}
44
45   static void SetMaxSnpTracker(Double_t maxSnp) {fgMaxSnpTracker = maxSnp;}
46   static Double_t GetMaxSnpTracker(){ return fgMaxSnpTracker;}
47   static void SetMaxSnpTrack(Double_t maxSnp) {fgMaxSnpTrack = maxSnp;}
48   static Double_t GetMaxSnpTrack(){ return fgMaxSnpTrack;}
49
50   static Int_t StreamLevel()               { return fgStreamLevel;}
51   static void  SetStreamLevel(Int_t level) { fgStreamLevel = level;}
52
53 private:
54   AliTPCParam*         GetTPCParam(AliRunLoader* runLoader) const;
55
56   static Double_t fgCtgRange; //! +-fCtgRange is the ctg(Theta) window used for clusterization and tracking (MI) 
57   static Double_t fgMaxSnpTracker;   // max sin of local angle  - for TPC tracker
58   static Double_t fgMaxSnpTrack;     // max sin of local angle  - for track 
59   static Int_t    fgStreamLevel;     // flag for streaming      - for TPC reconstruction
60
61   ClassDef(AliTPCReconstructor, 0)   // class for the TPC reconstruction
62 };
63
64 #endif