Added the USEPACKAGE option in Makefile.
[u/mrichter/AliRoot.git] / HLT / comp / AliL3Modeller.h
CommitLineData
735e167e 1#ifndef AliL3_Modeller
2#define AliL3_Modeller
3
4
5#include "AliL3RootTypes.h"
6
7class AliL3TrackArray;
8class AliL3MemHandler;
9class AliL3DigitRowData;
10class AliL3Transform;
029912b7 11class AliL3ModelTrack;
735e167e 12
13struct Cluster {
14 UInt_t fCharge;
15 UInt_t fPad;
16 UInt_t fTime;
17 UInt_t fSigmaY2;
18 UInt_t fSigmaZ2;
19};
20
21struct Digit {
22 Short_t fCharge;
23 Bool_t fUsed;
24};
25
26class AliL3Modeller {
27
28 private:
29
30 AliL3TrackArray *fTracks; //!
31 AliL3MemHandler *fMemHandler; //!
32 AliL3DigitRowData *fRowData;//!
029912b7 33
735e167e 34 AliL3Transform *fTransform; //!
35 Int_t fNClusters;
36 Int_t fMaxClusters;
37
38 Float_t fPadOverlap;
39 Float_t fTimeOverlap;
029912b7 40 Int_t fTrackThreshold; //minimum weigth track need in order to be included.(=Nhits/weight)
735e167e 41
42 Int_t fSlice;
43 Int_t fPatch;
be6ddb10 44 Char_t fPath[100];
735e167e 45
029912b7 46 void FillCluster(AliL3ModelTrack *track,Cluster *cluster,Int_t row);
735e167e 47 void CalcClusterWidth(Cluster *cl,Float_t &sigmaY2,Float_t &sigmaZ2);
95a00d93 48 void FillZeros(AliL3DigitRowData *digPt,Digit *row);
49
735e167e 50 public:
51
52 AliL3Modeller();
53 virtual ~AliL3Modeller();
54
92a876e2 55 void Init(Int_t slice,Int_t patch,Char_t *trackdata,Char_t *path);
029912b7 56 void FindClusters();
735e167e 57 void CheckForOverlaps();
58 void CalculateCrossingPoints();
be6ddb10 59 void WriteRemaining();
95a00d93 60
735e167e 61 void SetInputData(AliL3DigitRowData *digits) {fRowData = digits;}
62
95a00d93 63 AliL3TrackArray *GetTracks() {return fTracks;}
735e167e 64
65 ClassDef(AliL3Modeller,1) //Modeller class
66
67};
68
69#endif