For Pythia with tune don't switch off MI in ConfigHeavyFlavor
[u/mrichter/AliRoot.git] / ITS / AliITSTrackerV1.h
CommitLineData
b48af428 1//Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved.
2//See cxx source for full Copyright notice
04b80329 3//
4//The purpose of this class is to permorm the ITS tracking.
5//
b48af428 6// The constructor has the task to inizialize some private members.
7// The method DoTracking is written to be called by a macro. It gets the event
8// number, the minimum and maximum order number of TPC tracks that are to be
9// tracked trough the ITS, and the file where the recpoints are registered.
04b80329 10//
b48af428 11// The method AliiTStracking is a recursive function that performs the
12// tracking trough the ITS
04b80329 13//
b48af428 14// The method Intersection found the layer, ladder and detector where the
15// intersection take place and caluclate the cohordinates of this
16// intersection. It returns an integer that is 0 if the intersection has
17// been found successfully.
04b80329 18//
b48af428 19// The two mwthods Kalmanfilter and kalmanfiltervert operate the
20// kalmanfilter without and with the verteximposition respectively.
04b80329 21
13888096 22#ifndef ALIITSTRACKERV1_H
23#define ALIITSTRACKERV1_H
24
04b80329 25#include <TObject.h>
e8d02863 26#include <TVectorfwd.h>
13888096 27
04b80329 28class TObjArray;
04b80329 29class AliITSTrackV1;
13888096 30class AliITSRad;
cbcfa38d 31class TStopwatch;
13888096 32
33class AliITSTrackerV1 : public TObject {
b48af428 34 public:
55cd883f 35 AliITSTrackerV1();
7d62fb64 36 AliITSTrackerV1(Int_t evnumber, Bool_t flag);
b48af428 37 AliITSTrackerV1(const AliITSTrackerV1 &cobj);
38 ~AliITSTrackerV1();
e869281d 39 AliITSTrackerV1 &operator=(const AliITSTrackerV1 &obj);
a7646705 40// void DelMatrix(Int_t NumOfModules);
61231d74 41 void DoTracking(Int_t evNumber, Int_t minTr, Int_t maxTr, TFile *file, Bool_t realmass=0);
b48af428 42 void RecursiveTracking(TList *trackITSlist);
43 Int_t Intersection(AliITSTrackV1 &track, Int_t layer,Int_t &ladder,
44 Int_t &detector);
45 void KalmanFilter(AliITSTrackV1 *newtrack, TVector &cluster,
46 Double_t sigma[2]);
47 void KalmanFilterVert(AliITSTrackV1 *newtrack, TVector &cluster,
48 Double_t sigma[2]);
49 //void KalmanFilterVert(AliITSTrackV1 *newtrack, TVector &cluster,
50 // Double_t sigma[2], Double_t chi2pred);
e869281d 51
b48af428 52 private:
7d62fb64 53 //AliITS* fITS; //! pointer to AliITS
54 AliITSDetTypeRec *fDetTypeRec;//ITS obj. for reconstruction
b48af428 55 AliITSTrackV1 *fresult; // result is a pointer to the final best track
56 Double_t fPtref; // transvers momentum obtained from TPC tracking
61231d74 57 Double_t fChi2max; // chi2 cut
64ab0d55 58 //Double_t fepsphi; //eps for definition window in phi
59 // Double_t fepsz; //eps for definition window in z
60 TClonesArray *frecPoints; // pointer to RecPoints
b48af428 61 Int_t **fvettid; // flag vector of used clusters
62 Bool_t fflagvert; // a flag to impose or not the vertex constraint
63 AliITSRad *frl; // pointer to get the radiation lenght matrix
64ab0d55 64/// To be put in a specific geometric class
b48af428 65 Int_t fNlad[6]; // Number of ladders for a given layer
66 Int_t fNdet[6]; // Number of detector for a given layer
67 Double_t fAvrad[6]; // Average radius for a given layer
68 Double_t fDetx[6];// Semidimension of detectors along x axis for a given layer
69 Double_t fDetz[6];// Semidimension of detectors along z axis for a given layer
70 Double_t **fzmin;// Matrix of zmin for a given layer and a given detector
71 Double_t **fzmax;// Matrix of zmax for a given layer and a given detector
72 Double_t **fphimin;// Matrix of phimin for a given layer and a given ladder
73 Double_t **fphimax;// Matrix of phimax for a given layer and a given ladder
74 Double_t **fphidet; // azimuthal angle for a given layer and a given ladder
64ab0d55 75 Int_t *fNRecPoints; // pointer to the vector giving the number of recpoints for a given module
76 /*
77 Float_t **fRecCylR; // pointer to the matrix giving the R cylindric cohordinate of a recpoint
78 Float_t **fRecCylPhi; // pointer to the matrix giving the Phi cylindric cohordinate of a recpoint
79 Float_t **fRecCylZ; // pointer to the matrix giving the Z cylindric cohordinate of a recpoint
80 */
81 Double_t **fRecCylR; // pointer to the matrix giving the R cylindric cohordinate of a recpoint
82 Double_t **fRecCylPhi; // pointer to the matrix giving the Phi cylindric cohordinate of a recpoint
83 Double_t **fRecCylZ; // pointer to the matrix giving the Z cylindric cohordinate of a recpoint
84/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
85 Double_t fFieldFactor; // Magnetic field factor
86
7d62fb64 87 ClassDef(AliITSTrackerV1,2)
13888096 88};
89
90#endif