1 // Author: Anders Vestbo <mailto:vestbo@fi.uib.no>
2 //*-- Copyright © ASV
4 #include "AliL3StandardIncludes.h"
6 #include "AliL3Logging.h"
7 #include "AliL3HoughTrack.h"
8 #include "AliL3HoughGlobalMerger.h"
9 #include "AliL3Track.h"
10 #include "AliL3TrackArray.h"
11 #include "AliL3Transform.h"
13 //_____________________________________________________________
14 // Merging Hough tracks across slices
16 ClassImp(AliL3HoughGlobalMerger)
18 AliL3HoughGlobalMerger::AliL3HoughGlobalMerger()
23 AliL3HoughGlobalMerger::AliL3HoughGlobalMerger(Int_t first,Int_t last)
25 fNSlices = last-first+1;
26 fTracks = new AliL3TrackArray*[fNSlices];
27 for(Int_t i=0; i<fNSlices; i++)
28 fTracks[i] = new AliL3TrackArray("AliL3HoughTrack");
32 AliL3HoughGlobalMerger::~AliL3HoughGlobalMerger()
36 for(Int_t i=0; i<fNSlices; i++)
47 void AliL3HoughGlobalMerger::FillTracks(AliL3TrackArray *tracks,Int_t slice)
50 fTracks[slice]->AddTracks(tracks,kTRUE,slice);
54 void AliL3HoughGlobalMerger::Merge()
56 for(Int_t slice=0; slice<fNSlices; slice++)
58 if(slice+1 == fNSlices) continue;
59 AliL3TrackArray *t1 = fTracks[slice];
60 AliL3TrackArray *t2 = fTracks[slice+1];
61 Float_t angle = AliL3Transform::Pi()/18;
62 AliL3Transform::Local2GlobalAngle(&angle,slice);
64 for(Int_t i=0; i<t1->GetNTracks(); i++)