]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - ANALYSIS/AliTrackPoints.h
Update raw2digits framework (Ch.Finck)
[u/mrichter/AliRoot.git] / ANALYSIS / AliTrackPoints.h
... / ...
CommitLineData
1#ifndef AliTrackPoints_H
2#define AliTrackPoints_H
3//_________________________________
4////////////////////////////////////////////////////////////
5// //
6// class AliTrackPoints //
7// //
8// used by Anti-Merging cut //
9// contains set of poits the lay on track trajectory //
10// according to reconstructed track parameters - //
11// NOT CLUSTERS POSITIONS!!! //
12// Anti-Merging cut is applied only on tracks coming from //
13// different events (that are use to fill deniminators) //
14// //
15////////////////////////////////////////////////////////////
16#include <TObject.h>
17
18class AliTPCtrack;
19class AliESDtrack;
20
21class AliTrackPoints: public TObject
22{
23 public:
24 typedef enum
25 {//defines the type and the track points are calculated
26 kITS = 1,//points calculated in ITS, made out of the vector at vertex
27 kITSInnerFromVertexOuterFromTPC //for ITS, for 3 inner layers calculated out of the vector at vertex
28 // for 3 outer ---------------//------------------ at inner TPC
29 } ETypes;
30
31 AliTrackPoints();
32 AliTrackPoints(AliTrackPoints::ETypes type, AliESDtrack* track, Float_t mf);
33 AliTrackPoints(Int_t n, AliESDtrack* track, Float_t mf, Float_t dr=30,Float_t r0 = 84.1); //min TPC R = 84.1; max TPC R = 246.6cm,
34 AliTrackPoints(Int_t n, AliTPCtrack* track, Float_t dr=30, Float_t r0 = 84.1); //min TPC R = 84.1; max TPC R = 246.6cm,
35// AliTrackPoints(const AliTrackPoints& in);
36
37 virtual ~AliTrackPoints();
38// AliTrackPoints& operator=(const AliTrackPoints& in);
39
40 Double_t AvarageDistance(const AliTrackPoints& tr);
41 void PositionAt(Int_t n, Float_t &x, Float_t &y, Float_t &z);
42 void Move(Float_t x, Float_t y, Float_t z);
43 Int_t GetN() const {return fN;}
44
45 Int_t GetDebug() const {return fgDebug;}
46 void SetDebug(Int_t deblevel){fgDebug = deblevel;}
47 static void Testtpc(Int_t entr);
48 static void Testesd(Int_t entr,const char* fname = "AliESDs.root");
49 void Print(Option_t* /*option*/ = "") const;
50
51 protected:
52 void MakePoints( Float_t dr, Float_t r0, Double_t x, Double_t* par, Double_t c, Double_t alpha);
53 void MakeITSPoints(AliESDtrack* track);
54 void MakeITSPointsInnerFromVertexOuterFromTPC(AliESDtrack* track,Float_t mf);
55
56 private:
57 Int_t fN;//number of points
58 Float_t* fX;//[fN]positions at x
59 Float_t* fY;//[fN]positions at y
60 Float_t* fZ;//[fN] positions at z
61// Float_t* fR;//! [fN] radii
62 static Int_t fgDebug;//! debug level
63 ClassDef(AliTrackPoints,1)
64};
65#endif