Some additional changes related to the previous changes. AliL3Transform
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughBaseTransformer.h
CommitLineData
c52cf5d8 1#ifndef ALIL3_HOUGHBASETRANSFORMER
2#define ALIL3_HOUGHBASETRANSFORMER
3
4#include "AliL3RootTypes.h"
5
6class AliL3Transform;
7class AliL3DigitRowData;
8class AliL3Histogram;
9
10class AliL3HoughBaseTransformer {
11
12 private:
13
14 Int_t fSlice;
15 Int_t fPatch;
16 Int_t fNEtaSegments;
17 Double_t fEtaMin;
18 Double_t fEtaMax;
19 Int_t fThreshold;
20
21 AliL3DigitRowData *fDigitRowData; //!
22
23 protected:
24 AliL3Transform *fTransform; //!
237d3f5c 25
c52cf5d8 26 public:
27 AliL3HoughBaseTransformer();
28 AliL3HoughBaseTransformer(Int_t slice,Int_t patch,Int_t n_eta_segments);
29 virtual ~AliL3HoughBaseTransformer();
30
237d3f5c 31 void SetTransformer(AliL3Transform *tr) {fTransform = tr;}
c52cf5d8 32 void SetInputData(UInt_t ndigits,AliL3DigitRowData *ptr) {fDigitRowData = ptr;}
33
34 virtual void CreateHistograms(Int_t nxbin,Double_t ptmin,Int_t nybin,Double_t phimin,Double_t phimax) = 0;
35 virtual void CreateHistograms(Int_t nxbin,Double_t xmin,Double_t xmax,Int_t nybin,Double_t ymin,Double_t ymax) = 0;
36 virtual void Reset() = 0;
37 virtual void TransformCircle() = 0;
38 virtual void TransformCircleC(Int_t row_range) = 0;
39 virtual void TransformLine() = 0;
40
41 //Getters
42 Int_t GetSlice() {return fSlice;}
43 Int_t GetPatch() {return fPatch;}
44 Int_t GetNEtaSegments() {return fNEtaSegments;}
45 Int_t GetThreshold() {return fThreshold;}
46 Double_t GetEtaMin() {return fEtaMin;}
47 Double_t GetEtaMax() {return fEtaMax;}
48
49 AliL3DigitRowData *GetDataPointer() {return fDigitRowData;}
50
51 virtual Int_t GetEtaIndex(Double_t eta) = 0;
52 virtual AliL3Histogram *GetHistogram(Int_t eta_index) = 0;
53
54 //setters
55 void SetThreshold(Int_t i) {fThreshold = i;}
56
57 ClassDef(AliL3HoughBaseTransformer,1) //Hough transformation base class
58
59};
60
61
62#endif