]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSiotrack.h
Fixed bug with GetCovMatrix returning a pointer to a deleted local array.
[u/mrichter/AliRoot.git] / ITS / AliITSiotrack.h
CommitLineData
dce1757b 1#ifndef ALIITSIOTRACK_H
2#define ALIITSIOTRACK_H
3
4////////////////////////////////////////////////////
5// Reconstructed space point class for set:ITS //
6////////////////////////////////////////////////////
7
8#include <TObject.h>
9
10class AliITSiotrack : public TObject {
11
12
13 public:
14
15 AliITSiotrack(); // constructor
16 virtual ~AliITSiotrack() {}; // distructor
17 Int_t GetLabel() const {return fLab;} // get track label
18 Int_t GetIdPoint(Int_t i) const {return fIdPoints[i];} // get the identification number for the point
19 Int_t GetIdModule(Int_t i) const {return fIdModules[i];} // get the module number for the point
20 //Double_t * GetStateVector(); // get the state vector (5 elements)
21 Double_t * GetCovMatrix(); // get the covariance matrix as 15 elements array
22 Double_t GetStatePhi() const {return fStateVPhi;} // gets the Phi angle of the state vector
23 Double_t GetStateZ() const {return fStateVZ;} // gets the Z cohordinate of the state vector
24 Double_t GetStateD() const {return fStateVD;} // gets the radial impact parameter of the state vector
25 Double_t GetStateC() const {return fStateVC;} // gets the curvature C of the state vector
26 Double_t GetStateTgl() const {return fStateVTgl;} // gets the dip angle tangent of the state vector
27 Double_t GetRadius() const {return fRadius;} // gets the radius corresponding to the state vector
28 Int_t GetCharge() const {return fCharge;} // gets the particle charge
29 Float_t GetX() const {return fX;} // gets the x cohordinate of the found vertex
30 Float_t GetZ() const {return fZ;} // gets the z cohordinate of the found vertex
31 Float_t GetY() const {return fY;} // gets the y cohordinate of the found vertex
32 Float_t GetPx() const {return fPx;} // gets the x momentum component at the found vertex
33 Float_t GetPy() const {return fPy;} // gets the y momentum component at the found vertex
34 Float_t GetPz()const {return fPz;} // gets the z momentum component at the found vertex
35
36 void SetCovMatrix(TMatrix *cov); // sets the covariance matrix
37 void SetLabel(Int_t lab) {fLab=lab;} // sets the track label
38 void SetIdPoint(Int_t i,Int_t pnt) {fIdPoints[i]=pnt;} // set the identification number for the point
39 void SetIdModule(Int_t i,Int_t mod) {fIdModules[i]=mod;} // set the module number for the point
40
41 void SetStatePhi(Double_t phi) {fStateVPhi=phi;} // sets the Phi angle of the state vector
42 void SetStateZ(Double_t z) {fStateVZ=z;} // sets the Z cohordinate of the state vector
43 void SetStateD(Double_t d) {fStateVD=d;} // sets the radial impact parameter of the state vector
44 void SetStateTgl(Double_t tgl) {fStateVTgl=tgl;} // sets the dip angle tangent of the state vector
45 void SetStateC(Double_t c) {fStateVC=c;} // sets the curvature C of the state vector
46 void SetRadius(Double_t r) {fRadius= r;} // sets the radius corresponding to the state vector
47 void SetCharge(Int_t charge) {fCharge=charge;} // sets the particle charge
48
49 void SetX(Float_t x){fX=x;} // sets the x cohordinate of the found vertex
50 void SetZ(Float_t z){fZ=z;} // sets the z cohordinate of the found vertex
51 void SetY(Float_t y){fY=y;} // sets the y cohordinate of the found vertex
52 void SetPx(Float_t px) {fPx=px;} // sets the x momentum component at the found vertex
53 void SetPy(Float_t py) {fPy=py;} // sets the y momentum component at the found vertex
54 void SetPz(Float_t pz) {fPz=pz;} // sets the z momentum component at the found vertex
55
56 private:
57
58 Int_t fLab; // label of reconstructed track
59 Float_t fX ; // x cohordinate of the found vertex
60 Float_t fY ; // y cohordinate of the found vertex
61 Float_t fZ ; // z cohordinate of the found vertex
62 Float_t fPx; // x component of track momentum at the found vertex
63 Float_t fPy; // y component of track momentum at the found vertex
64 Float_t fPz; // z component of track momentum at the found vertex
65
66 //
67 Int_t fIdPoints[6]; // points assigned to the track (entry # in fRecPoints is given by module #)
68 Int_t fIdModules[6]; // module # corresponding to each point belonging to the track
69
70 Double_t fStateVPhi; //
71 Double_t fStateVZ; // state vector components
72 Double_t fStateVD; //
73 Double_t fStateVTgl; //
74 Double_t fStateVC; //
75
76 Double_t fRadius; // distance of the point from the origin
77 Int_t fCharge; // particle charge
78
6b6a5cda 79// Covariance matrix
80 Double_t fcovar[25]; //! Elements of Covariance matrix below
dce1757b 81 Double_t fC00;
82 Double_t fC10, fC11;
83 Double_t fC20, fC21, fC22;
84 Double_t fC30, fC31, fC32, fC33;
85 Double_t fC40, fC41, fC42, fC43, fC44;
86
87 ClassDef(AliITSiotrack,1) // AliITSiotrack class
88};
89
90#endif