]>
Commit | Line | Data |
---|---|---|
a5556ea5 | 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 | ||
18 | class AliTPCtrack; | |
19 | class AliESDtrack; | |
20 | ||
21 | class AliTrackPoints: public TObject | |
22 | { | |
23 | public: | |
6ceac6ac | 24 | typedef enum ETypes |
0f0355ab | 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 | }; | |
78d7c6d3 | 30 | |
a5556ea5 | 31 | AliTrackPoints(); |
0f0355ab | 32 | AliTrackPoints(AliTrackPoints::ETypes type, AliESDtrack* track, Float_t mf); |
a5556ea5 | 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, |
78d7c6d3 | 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); | |
a5556ea5 | 36 | |
37 | virtual ~AliTrackPoints(); | |
afbed925 | 38 | // AliTrackPoints& operator=(const AliTrackPoints& in); |
a5556ea5 | 39 | |
40 | Double_t AvarageDistance(const AliTrackPoints& tr); | |
41 | void PositionAt(Int_t n, Float_t &x, Float_t &y, Float_t &z); | |
78d7c6d3 | 42 | void Move(Float_t x, Float_t y, Float_t z); |
afbed925 | 43 | Int_t GetN() const {return fN;} |
78d7c6d3 | 44 | |
a5556ea5 | 45 | Int_t GetDebug() const {return fgDebug;} |
46 | void SetDebug(Int_t deblevel){fgDebug = deblevel;} | |
78d7c6d3 | 47 | static void Testtpc(Int_t entr); |
48 | static void Testesd(Int_t entr,const char* fname = "AliESDs.root"); | |
5b49024d | 49 | void Print(Option_t* /*option*/ = "") const; |
50 | ||
a5556ea5 | 51 | protected: |
52 | void MakePoints( Float_t dr, Float_t r0, Double_t x, Double_t* par, Double_t c, Double_t alpha); | |
78d7c6d3 | 53 | void MakeITSPoints(AliESDtrack* track); |
0f0355ab | 54 | void MakeITSPointsInnerFromVertexOuterFromTPC(AliESDtrack* track,Float_t mf); |
78d7c6d3 | 55 | |
a5556ea5 | 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 |