4 #include "AliL3RootTypes.h"
6 class AliL3HoughMaxFinder;
7 class AliL3HoughBaseTransformer;
10 class AliL3FileHandler;
13 class AliL3TrackArray;
14 class AliL3HoughMerger;
15 class AliL3HoughIntMerger;
16 class AliL3HoughGlobalMerger;
24 Bool_t fAddHistograms;
31 AliL3FileHandler **fMemHandler; //!
33 AliL3MemHandler **fMemHandler; //!
35 AliL3HoughBaseTransformer **fHoughTransformer; //!
36 AliL3HoughEval **fEval; //!
37 AliL3HoughMaxFinder *fPeakFinder; //!
38 AliL3TrackArray **fTracks; //!
39 AliL3HoughMerger *fMerger; //!
40 AliL3HoughIntMerger *fInterMerger; //!
41 AliL3HoughGlobalMerger *fGlobalMerger; //!
42 AliL3Transform *fTransform; //!
50 AliL3Hough(Char_t *path,Bool_t binary,Int_t n_eta_segments=100);
51 virtual ~AliL3Hough();
53 void Process(Int_t minslice,Int_t maxslice);
54 void ReadData(Int_t slice);
55 void Transform(Int_t row_range = -1);
56 void ProcessSliceIter();
57 void ProcessPatchIter(Int_t patch);
59 void MergeInternally();
61 void FindTrackCandidates();
62 void AddAllHistograms();
63 void Evaluate(Int_t road_width=1);
64 void EvaluateWithEta();
65 void WriteTracks(Char_t *path="./");
67 void WriteDigits(Char_t *outfile="output_digits.root");
71 void SetNEtaSegments(Int_t i) {fNEtaSegments = i;}
72 void SetAddHistograms() {fAddHistograms = kTRUE;}
73 void DoIterative() {fDoIterative = kTRUE;}
74 void SetWriteDigits() {fWriteDigits = kTRUE;}
75 void SetPeakThreshold(Int_t i) {fPeakThreshold = i;}
78 AliL3HoughBaseTransformer *GetTransformer(Int_t i) {if(!fHoughTransformer[i]) return 0; return fHoughTransformer[i];}
79 AliL3TrackArray *GetTracks(Int_t i) {if(!fTracks[i]) return 0; return fTracks[i];}
80 AliL3HoughEval *GetEval(Int_t i) {if(!fEval[i]) return 0; return fEval[i];}
81 AliL3HoughMerger *GetMerger() {if(!fMerger) return 0; return fMerger;}
82 AliL3HoughIntMerger *GetInterMerger() {if(!fInterMerger) return 0; return fInterMerger;}
84 AliL3FileHandler *GetMemHandler(Int_t i) {if(!fMemHandler[i]) return 0; return fMemHandler[i];}
86 AliL3MemHandler *GetMemHandler(Int_t i) {if(!fMemHandler[i]) return 0; return fMemHandler[i];}
89 ClassDef(AliL3Hough,1) //Hough transform base class