]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - HLT/hough/AliL3HoughTransformer.h
Cleaning up a lot
[u/mrichter/AliRoot.git] / HLT / hough / AliL3HoughTransformer.h
... / ...
CommitLineData
1#ifndef ALIL3_HOUGHTRANSFORMER
2#define ALIL3_HOUGHTRANSFORMER
3
4#include "AliL3RootTypes.h"
5
6class AliL3Transform;
7class AliL3Histogram;
8class AliL3DigitRowData;
9
10class AliL3HoughTransformer : public TObject {
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 AliL3Transform *fTransform; //!
21
22 //Pointer to histograms
23 AliL3Histogram **fParamSpace; //!
24
25 //Data pointers
26 UInt_t fNDigitRowData;
27 AliL3DigitRowData *fDigitRowData; //!
28
29 void DeleteHistograms();
30
31 public:
32 AliL3HoughTransformer();
33 AliL3HoughTransformer(Int_t slice,Int_t patch,Int_t n_eta_segments);
34 virtual ~AliL3HoughTransformer();
35
36 void SetInputData(UInt_t ndigits,AliL3DigitRowData *ptr);
37 AliL3DigitRowData *UpdateDataPointer(AliL3DigitRowData *tempPt);
38 void CreateHistograms(Int_t nxbin=70,Double_t xmin=-0.006,Double_t xmax=0.006,
39 Int_t nybin=70,Double_t ymin=-0.26,Double_t ymax=0.26);
40 void Transform();
41
42 Int_t GetSlice() {return fSlice;}
43 Int_t GetPatch() {return fPatch;}
44 Int_t GetNEtaSegments() {return fNEtaSegments;}
45 Double_t GetEtaMin() {return fEtaMin;}
46 Double_t GetEtaMax() {return fEtaMax;}
47 void *GetDataPointer() {return (void*)fDigitRowData;}
48 AliL3Histogram *GetHistogram(Int_t eta_index);
49
50 ClassDef(AliL3HoughTransformer,1)
51
52};
53
54inline AliL3Histogram *AliL3HoughTransformer::GetHistogram(Int_t eta_index)
55{
56 if(!fParamSpace || eta_index >= fNEtaSegments)
57 return 0;
58 if(!fParamSpace[eta_index])
59 return 0;
60 return fParamSpace[eta_index];
61}
62
63#endif