PandaRoot
PndLinTrack.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndLinTrack header file -----
3 // ----- Created by M. Michel -----
4 // ----- Modifided by A.Karavdina -----
5 // -------------------------------------------------------------------------
6 
13 #ifndef PNDLINTRACK_H
14 #define PNDLINTRACK_H
15 
16 #include "TMatrixDSym.h"
17 #include "TMatrixTSym.h"
18 #include "TString.h"
19 #include "TVector3.h"
20 
21 #include <stdio.h>
22 #include <iostream>
23 
24 class PndLinTrack : public TObject {
25  public:
27  PndLinTrack();
28 
38  /* PndLinTrack(TString detName, Double_t z0, Double_t p0, Double_t p1,
39  * Double_t p2, Double_t p3, */
40  /* Double_t p0err, Double_t p1err, Double_t p2err, Double_t p3err, */
41  /* Double_t chi, Int_t first, Int_t last, Int_t cand); */
42  PndLinTrack(TString detName, Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4, Double_t p5, Double_t chi, Int_t first, Int_t last, Int_t cand);
43 
45  virtual ~PndLinTrack();
46 
49  void SetDetName(TString name) { fDetName = name; }
50  void SetCovarianceMatrix(TMatrixDSym covmatrix)
51  {
52  for (size_t i = 0; i < 6; i++) {
53  for (size_t j = 0; j < 6; j++) {
54  fCovMatrix[i][j] = covmatrix[i][j];
55  }
56  }
57  }
58 
59  TString GetDetName() const { return fDetName; }
60  void GetPar(Double_t *par) const
61  {
62  par[0] = fP0;
63  par[1] = fP1;
64  par[2] = fP2;
65  par[3] = fP3;
66  par[4] = fP4;
67  par[5] = fP5;
68  }
69  /* TVector3 GetStartVec() const { return TVector3(fP0,fP2,0.);} */
70  TVector3 GetStartVec() const { return TVector3(fP0, fP2, fP4); }
71  // TVector3 GetStartVec();
72  TVector3 GetDirectionVec() const { return TVector3(fP1, fP3, fP5); }
73  // TVector3 GetDirectionVec();
74  TVector3 GetStartErrVec();
75  TVector3 GetDirectionErrVec();
76  /* TVector3 GetParErr(Double_t* errpar) */
77  /* const {
78  * errpar[0]=fP0err;errpar[1]=fP1err;errpar[2]=fP2err;errpar[3]=fP3err;errpar[4]=fP4err;}
79  */
80  Double_t GetChiSquare() const { return fChiSq; }
81  Int_t GetFirstHit() const { return fFirst; }
82  Int_t GetLastHit() const { return fLast; }
83  Int_t GetTCandID() const { return fCandId; }
84 
85  void GetParErr(Double_t *errpar);
86  TMatrixDSym GetCovarianceMatrix() { return fCovMatrix; }
87 
88  private:
89  TString fDetName; // Detector name
90  // Double_t fz0;// z-position of first LMD plane
91  Double_t fP0, fP1, fP2, fP3, fP4, fP5; // fit-parameter
92  // start (P0, P2, P4), direction (P1, P3, P5) straight line
93  TMatrixDSym fCovMatrix;
94  // Double_t fP0err, fP1err, fP2err, fP3err, fP4err; // errors of parameters
95  Double_t fChiSq; // Chi-Square of Fit
96  Int_t fFirst, fLast;
97  Int_t fCandId; // TrackCand id
98 
99  ClassDef(PndLinTrack, 10);
100 };
101 
102 #endif
TVector3 GetStartVec() const
Definition: PndLinTrack.h:70
void SetCovarianceMatrix(TMatrixDSym covmatrix)
Definition: PndLinTrack.h:50
virtual ~PndLinTrack()
void GetParErr(Double_t *errpar)
void GetPar(Double_t *par) const
Definition: PndLinTrack.h:60
unsigned int i
Definition: P4_F32vec4.h:21
TString GetDetName() const
Definition: PndLinTrack.h:59
void SetDetName(TString name)
Definition: PndLinTrack.h:49
TVector3 GetDirectionVec() const
Definition: PndLinTrack.h:72
Int_t GetLastHit() const
Definition: PndLinTrack.h:82
Double_t GetChiSquare() const
Definition: PndLinTrack.h:80
TMatrixDSym GetCovarianceMatrix()
Definition: PndLinTrack.h:86
Int_t GetFirstHit() const
Definition: PndLinTrack.h:81
Int_t GetTCandID() const
Definition: PndLinTrack.h:83
TVector3 GetStartErrVec()
TVector3 GetDirectionErrVec()