StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
AliHLTTPCCATrackletConstructor.h
1 //-*- Mode: C++ -*-
2 
3 //* This file is property of and copyright by the ALICE HLT Project *
4 //* ALICE Experiment at CERN, All rights reserved. *
5 //* See cxx source for full Copyright notice *
6 
7 #ifndef ALIHLTTPCCATRACKLETCONSTRUCTOR_H
8 #define ALIHLTTPCCATRACKLETCONSTRUCTOR_H
9 
10 #include "AliHLTTPCCADef.h"
11 #include <AliHLTArray.h>
12 
14 
20  public:
22  AliHLTArray<TrackletVector> trackletVectors )
23  : fTracker( tracker ), fTrackletVectors( trackletVectors ), fData( data ) {}
24 
25  void run();
26 
27  struct TrackMemory;
28  private:
29  // add one hit from chain to track
30  void FitTracklet( TrackMemory &r, const int rowIndex, const ushort_v trackIndex, TrackletVector &trackletVector );
31  // find nearest hit on row and set it as currentHit (see TrackMemory)
32  void FindNextHit( TrackMemory &r, const AliHLTTPCCARow &row,
33  sfloat_v::Memory &dy_best, sfloat_v::Memory &dz_best, short_m &active);
34  // extrapolate on row and try to find hit belonged to track
35  short_m ExtrapolateTracklet( TrackMemory &r, const int rowIndex, const ushort_v trackIndex, TrackletVector &trackletVector, const bool dir, const short_m &mask );
36 
37  // performs both: fitTraclet & Extrapolation
38  short_m ExtendTracklet( TrackMemory &r, const int rowIndex, const ushort_v trackIndex, TrackletVector &trackletVector, const bool dir, const short_m &mask );
39 
40  Tracker &fTracker;
41  AliHLTArray<TrackletVector> fTrackletVectors;
42  SliceData &fData;
43 };
44 
45 #endif