]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/hough/AliL3Hough.h
Made it possible to read different and several events from rootfile.
[u/mrichter/AliRoot.git] / HLT / hough / AliL3Hough.h
index 0f6e50b062daf034708f2c5d01c20c7b50032fa3..1c034a31f6fddfe9d20f5a854a8d528cc02d5a71 100644 (file)
@@ -4,11 +4,11 @@
 #include "AliL3RootTypes.h"
 
 class AliL3HoughMaxFinder;
-class AliL3HoughTransformer;
+class AliL3HoughBaseTransformer;
 class AliL3Histogram;
+class AliL3MemHandler;
 class AliL3FileHandler;
 class AliL3HoughEval;
-class AliL3Transform;
 class AliL3TrackArray;
 class AliL3HoughMerger;
 class AliL3HoughIntMerger;
@@ -22,10 +22,11 @@ class AliL3Hough {
   Bool_t fAddHistograms;
   Bool_t fDoIterative;
   Bool_t fWriteDigits;
+  Bool_t fUse8bits;
   Int_t fNEtaSegments;
   Int_t fNPatches;
-  AliL3FileHandler **fMemHandler; //!
-  AliL3HoughTransformer **fHoughTransformer; //!
+  AliL3MemHandler **fMemHandler; //!
+  AliL3HoughBaseTransformer **fHoughTransformer; //!
   AliL3HoughEval **fEval; //!
   AliL3HoughMaxFinder *fPeakFinder; //!
   AliL3TrackArray **fTracks; //!
@@ -34,28 +35,28 @@ class AliL3Hough {
   AliL3HoughGlobalMerger *fGlobalMerger; //!
 
   void CleanUp();
-  void Init();
   
  public:
   
   AliL3Hough(); 
-  AliL3Hough(Char_t *path,Bool_t binary,Int_t n_eta_segments=100);
   virtual ~AliL3Hough();
   
+  void Init(Char_t *path,Bool_t binary,Int_t n_eta_segments,Bool_t bit8=kFALSE);
   void Process(Int_t minslice,Int_t maxslice);
-  void ReadData(Int_t slice);
-  void Transform();
+  void ReadData(Int_t slice,Int_t eventnr=0);
+  void Transform(Int_t row_range = -1);
   void ProcessSliceIter();
   void ProcessPatchIter(Int_t patch);
   void MergePatches();
   void MergeInternally();
-
+  
   void FindTrackCandidates();
   void AddAllHistograms();
   void Evaluate(Int_t road_width=1);
   void EvaluateWithEta();
-  void WriteTracks();
+  void WriteTracks(Int_t slice,Char_t *path="./");
   void WriteDigits(Char_t *outfile="output_digits.root");
+  void InitEvaluate();
   
   //Setters
   void SetNEtaSegments(Int_t i) {fNEtaSegments = i;}
@@ -64,12 +65,13 @@ class AliL3Hough {
   void SetWriteDigits() {fWriteDigits = kTRUE;}
   
   //Getters
-  AliL3HoughTransformer *GetTransformer(Int_t i) {if(!fHoughTransformer[i]) return 0; return fHoughTransformer[i];}
+  AliL3HoughBaseTransformer *GetTransformer(Int_t i) {if(!fHoughTransformer[i]) return 0; return fHoughTransformer[i];}
   AliL3TrackArray *GetTracks(Int_t i) {if(!fTracks[i]) return 0; return fTracks[i];}
   AliL3HoughEval *GetEval(Int_t i) {if(!fEval[i]) return 0; return fEval[i];}
   AliL3HoughMerger *GetMerger() {if(!fMerger) return 0; return fMerger;}
   AliL3HoughIntMerger *GetInterMerger() {if(!fInterMerger) return 0; return fInterMerger;}
-  AliL3FileHandler *GetMemHandler(Int_t i) {if(!fMemHandler[i]) return 0; return fMemHandler[i];}
+  AliL3MemHandler *GetMemHandler(Int_t i) {if(!fMemHandler[i]) return 0; return fMemHandler[i];}
+  AliL3HoughMaxFinder *GetMaxFinder() {return fPeakFinder;}
 
   ClassDef(AliL3Hough,1) //Hough transform base class