Rewriting and cleaning up
[u/mrichter/AliRoot.git] / HLT / hough / AliL3Hough.h
1 #ifndef ALIL3_HOUGH
2 #define ALIL3_HOUGH
3
4 #include "AliL3RootTypes.h"
5
6 class AliL3HoughMaxFinder;
7 class AliL3HoughTransformer;
8 class AliL3Histogram;
9 class AliL3FileHandler;
10 class AliL3HoughEval;
11 class AliL3Transform;
12 class AliL3TrackArray;
13 class TFile;
14
15 class AliL3Hough : public TObject {
16   
17  private:
18   Char_t fPath[256];
19   Bool_t fBinary;
20   Int_t fNEtaSegments;
21   AliL3FileHandler **fMemHandler; //!
22   AliL3HoughTransformer **fHoughTransformer; //!
23   TFile *fRootFile; //!
24
25   void DeleteTransformers();
26   void DeleteMemory();
27   void Init();
28   
29  public:
30   
31   AliL3Hough(); 
32   AliL3Hough(Char_t *path,Bool_t binary,Int_t n_eta_segments=100);
33   virtual ~AliL3Hough();
34   
35   void TransformSlice(Int_t slice);
36   AliL3Histogram *AddHistograms();
37   void Evaluate(AliL3Histogram *hist);
38
39   //Setters
40   void SetNEtaSegments(Int_t i) {fNEtaSegments = i;}
41   
42   //Getters
43   AliL3HoughTransformer *GetTransformer(Int_t i) {if(!fHoughTransformer[i]) return 0; return fHoughTransformer[i];}
44
45   ClassDef(AliL3Hough,1)
46
47 };
48
49 #endif