// Author: Uli Frankenfeld <mailto:franken@fi.uib.no>
//*-- Copyright © ALICE HLT Group
-#include "AliL3StandardIncludes.h"
-
-#include "AliL3Logging.h"
-#include "AliL3TrackMerger.h"
-#include "AliL3Track.h"
-#include "AliL3TrackSegmentData.h"
-#include "AliL3Transform.h"
-#include "AliL3TrackArray.h"
-
/** \class AliL3TrackMerger
<pre>
//_____________________________________________________________
</pre
*/
+#include "AliL3StandardIncludes.h"
+
+#include "AliL3Logging.h"
+#include "AliL3TrackMerger.h"
+#include "AliL3Track.h"
+#include "AliL3TrackSegmentData.h"
+#include "AliL3Transform.h"
+#include "AliL3TrackArray.h"
+
ClassImp(AliL3TrackMerger)
AliL3TrackMerger::AliL3TrackMerger(){
}
void AliL3TrackMerger::SetRows(Int_t *row){
+ //Set the indeces of the first and last
+ //TPC padrows
+ //
for(Int_t i=0;i<fNSubSector;i++){
fRowMin[i]=*(row+(2*i));
fRowMax[i]=*(row+(2*i+1));
}
void AliL3TrackMerger::SlowMerge(AliL3TrackArray *mergedtrack,AliL3TrackArray *tracksin,AliL3TrackArray *tracksout,Double_t xval){
+ //
+ // Slow merging of two AliL3TrackArrays
+ // at reference plane x=xval
+ //
void *ntuple=GetNtuple();
const Int_t kNOut=tracksout->GetNTracks();
const Int_t kNIn =tracksin->GetNTracks();
}
void AliL3TrackMerger::InterMerge(){
-
+ //
+ // Merging of the tracks
+ // between readout patches
+ //
for(Int_t patch=0;patch< GetNIn();patch++){
AliL3TrackArray * tracks = GetInTracks(patch);
Double_t xval = AliL3Transform::Row2X((fRowMax[patch]+fRowMin[patch])/2);
#ifndef ALIL3TRACKMERGER_H
#define ALIL3TRACKMERGER_H
+//-------------------------------------------------------------------------
+// Class AliL3TrackMerger
+// This class is responsible for the merging of the HLT tracks
+// between TPC sectors and readout patches
+//-------------------------------------------------------------------------
+
#ifndef __CINT__
#include "AliL3Merger.h"
#endif
class AliL3TrackMerger : public AliL3Merger {
- private:
-
- Int_t fSubSector;
- Int_t fNSubSector;
- Int_t *fRowMin;//!
- Int_t *fRowMax;//!
- Bool_t fSlow;
- void SlowMerge(AliL3TrackArray *mergedtrack,AliL3TrackArray *tracksin,AliL3TrackArray *tracksout,Double_t xval);
- Int_t Merge(AliL3TrackArray *mergedtrack,AliL3TrackArray *tracksin,AliL3TrackArray *tracksout);
public:
AliL3TrackMerger();
AliL3TrackMerger(Int_t nsubsectors);
void SlowMerge();
void Merge(); //Loop over tracks from different subsectors
void InterMerge();
+
+ private:
+ Int_t fSubSector;//Index of the readout patch inside given TPC sector
+ Int_t fNSubSector;//Number of readout patches inside given TPC sector
+ Int_t *fRowMin;//!
+ Int_t *fRowMax;//!
+ Bool_t fSlow;//Slow or fast merging
+ void SlowMerge(AliL3TrackArray *mergedtrack,AliL3TrackArray *tracksin,AliL3TrackArray *tracksout,Double_t xval);
+ Int_t Merge(AliL3TrackArray *mergedtrack,AliL3TrackArray *tracksin,AliL3TrackArray *tracksout);
ClassDef(AliL3TrackMerger,1) //Track merging class
};