BOSS 7.0.8
BESIII Offline Software System
Loading...
Searching...
No Matches
TMdcKalTrack.h
Go to the documentation of this file.
1#ifndef RootEventData_TMdcKalTrack_H
2#define RootEventData_TMdcKalTrack_H 1
3
4#include "TObject.h"
5#include "TString.h"
6#include "SimMatr.h"
7
8class TMdcKalTrack : public TObject {
9
10public:
11
13
15
16 //extractors
17 Int_t getTrackId() const { return m_trackId; }
18 Int_t getStat(const Int_t pid) const { return m_stat[pid]; }
19 Int_t getStat2(const Int_t pid) const { return m_stat2[pid]; }
20 Double_t getChisq(const Int_t pid) const { return m_chisq[pid];}
21 Int_t getNdf(const Int_t pid) const { return m_ndf[pid]; }
22 Int_t getNlayer(const Int_t pid) const { return m_nlayer[pid]; }
23 //o Int_t getNster(const Int_t pid) const {return m_nster[pid];}
24 //o Int_t getFirstLayer(const Int_t pid) const { return m_firstLayer[pid]; }
25 //o Int_t getLastLayer(const Int_t pid) const {return m_lastLayer[pid];}
26
27 Double_t getZHelix(Int_t i) const {return m_zhelix[i];}
28 Double_t getZError(Int_t i, Int_t j) const {
29 return SimMat::get_element(m_zerror,i,j); }
30 //Double_t getPoca(Int_t i) const {return m_poca[i];}
31 Double_t getZHelixE(Int_t i) const {return m_zhelix_e[i];}
32 Double_t getZErrorE(Int_t i, Int_t j) const {
33 return SimMat::get_element(m_zerror_e,i,j); }
34 //Double_t getPocaE(Int_t i) const {return m_poca_e[i];}
35 Double_t getZHelixMu(Int_t i) const {return m_zhelix_mu[i];}
36 Double_t getZErrorMu(Int_t i, Int_t j) const {
37 return SimMat::get_element(m_zerror_mu,i,j); }
38 //Double_t getPocaMu(Int_t i) const {return m_poca_mu[i];}
39 Double_t getZHelixK(Int_t i) const {return m_zhelix_k[i];}
40 Double_t getZErrorK(Int_t i, Int_t j) const {
41 return SimMat::get_element(m_zerror_k,i,j); }
42 //Double_t getPocaK(Int_t i) const {return m_poca_k[i];}
43 Double_t getZHelixP(Int_t i) const {return m_zhelix_p[i];}
44 Double_t getZErrorP(Int_t i, Int_t j) const {
45 return SimMat::get_element(m_zerror_p,i,j); }
46 //Double_t getPocaP(Int_t i) const {return m_poca_p[i];}
47
48 Double_t getFHelix(Int_t i) const {return m_fhelix[i];}
49 Double_t getFError(Int_t i, Int_t j) const {
50 return SimMat::get_element(m_ferror,i,j); }
51 Double_t getFHelixE(Int_t i) const {return m_fhelix_e[i];}
52 Double_t getFErrorE(Int_t i, Int_t j) const {
53 return SimMat::get_element(m_ferror_e,i,j); }
54 Double_t getFHelixMu(Int_t i) const {return m_fhelix_mu[i];}
55 Double_t getFErrorMu(Int_t i, Int_t j) const {
56 return SimMat::get_element(m_ferror_mu,i,j); }
57 Double_t getFHelixK(Int_t i) const {return m_fhelix_k[i];}
58 Double_t getFErrorK(Int_t i, Int_t j) const {
59 return SimMat::get_element(m_ferror_k,i,j); }
60 Double_t getFHelixP(Int_t i) const {return m_fhelix_p[i];}
61 Double_t getFErrorP(Int_t i, Int_t j) const {
62 return SimMat::get_element(m_ferror_p,i,j); }
63 //modifiers
64 void setTrackId (const Int_t trackId) { m_trackId = trackId; }
65 void setStat(const Int_t stat, const Int_t pid) {m_stat[pid] = stat;}
66 void setStat2(const Int_t stat, const Int_t pid) {m_stat2[pid] = stat;}
67 void setChisq(const Double_t chisq, const Int_t pid) {m_chisq[pid] = chisq;}
68 void setNdf(const Int_t ndf, const Int_t pid) {m_ndf[pid] = ndf;}
69 void setNlayer(const Int_t nlayer, const Int_t pid) {m_nlayer[pid] = nlayer;}
70 //o void setNster(const Int_t nster, const Int_t pid) {m_nster[pid] = nster;}
71 //o void setFirstLayer(const Int_t fL, const Int_t pid) { m_firstLayer[pid] = fL; }
72 //o void setLastLayer(const Int_t lL, const Int_t pid){ m_lastLayer[pid] = lL;}
73
74 void setZHelix(const Double_t zhelix[5]){
75 for (int i=0; i<5; i++)
76 m_zhelix[i] = zhelix[i];
77 }
78 void setZError(const Double_t zerror[5][5]){
79 SimMat::pack2d(5,&zerror[0][0],m_zerror);
80 }
81
82 //void setPoca(const Double_t poca[3]){
83 // for(int i=0; i<3; i++) m_poca[i] = poca[i];
84 //}
85
86 void setZHelixE(const Double_t zhelix_e[5]){
87 for (int i = 0 ; i<5 ; i++)
88 m_zhelix_e[i] = zhelix_e[i];
89 }
90 void setZErrorE(const Double_t zerror_e[5][5]){
91 SimMat::pack2d(5,&zerror_e[0][0],m_zerror_e);
92 }
93 //void setPocaE(const Double_t poca_e[3]){
94 // for(int i=0; i<3; i++) m_poca_e[i] = poca_e[i];
95 //}
96
97 void setZHelixMu(const Double_t zhelix_mu[5]){
98 for (int i = 0 ; i<5 ; i++)
99 m_zhelix_mu[i] = zhelix_mu[i];
100 }
101 void setZErrorMu(const Double_t zerror_mu[5][5]){
102 SimMat::pack2d(5,&zerror_mu[0][0],m_zerror_mu);
103 }
104 //void setPocaMu(const Double_t poca_mu[3]){
105 // for(int i=0; i<3; i++) m_poca_mu[i] = poca_mu[i];
106 //}
107
108 void setZHelixK(const Double_t zhelix_k[5]){
109 for (int i = 0 ; i<5 ; i++)
110 m_zhelix_k[i] = zhelix_k[i];
111 }
112 void setZErrorK(const Double_t zerror_k[5][5]){
113 SimMat::pack2d(5,&zerror_k[0][0],m_zerror_k);
114 }
115 //void setPocaK(const Double_t poca_k[3]){
116 // for(int i=0; i<3; i++) m_poca_k[i] = poca_k[i];
117 //}
118
119 void setZHelixP(const Double_t zhelix_p[5]){
120 for (int i = 0 ; i<5 ; i++)
121 m_zhelix_p[i] = zhelix_p[i];
122 }
123 void setZErrorP(const Double_t zerror_p[5][5]){
124 SimMat::pack2d(5,&zerror_p[0][0],m_zerror_p);
125 }
126 //void setPocaP(const Double_t poca_p[3]){
127 // for(int i=0; i<3; i++) m_poca_p[i] = poca_p[i];
128 //}
129
130 void setFHelix(const Double_t fhelix[5]){
131 for (int i=0; i<5; i++)
132 m_fhelix[i] = fhelix[i];
133 }
134 void setFError(const Double_t ferror[5][5]){
135 SimMat::pack2d(5,&ferror[0][0],m_ferror);
136 }
137
138 void setFHelixE(const Double_t fhelix_e[5]){
139 for (int i = 0 ; i<5 ; i++)
140 m_fhelix_e[i] = fhelix_e[i];
141 }
142 void setFErrorE(const Double_t ferror_e[5][5]){
143 SimMat::pack2d(5,&ferror_e[0][0],m_ferror_e);
144 }
145
146 void setFHelixMu(const Double_t fhelix_mu[5]){
147 for (int i = 0 ; i<5 ; i++)
148 m_fhelix_mu[i] = fhelix_mu[i];
149 }
150 void setFErrorMu(const Double_t ferror_mu[5][5]){
151 SimMat::pack2d(5,&ferror_mu[0][0],m_ferror_mu);
152 }
153
154 void setFHelixK(const Double_t fhelix_k[5]){
155 for (int i = 0 ; i<5 ; i++)
156 m_fhelix_k[i] = fhelix_k[i];
157 }
158 void setFErrorK(const Double_t ferror_k[5][5]){
159 SimMat::pack2d(5,&ferror_k[0][0],m_ferror_k);
160 }
161
162 void setFHelixP(const Double_t fhelix_p[5]){
163 for (int i = 0 ; i<5 ; i++)
164 m_fhelix_p[i] = fhelix_p[i];
165 }
166 void setFErrorP(const Double_t ferror_p[5][5]){
167 SimMat::pack2d(5,&ferror_p[0][0],m_ferror_p);
168 }
169
170
171private:
172 Int_t m_trackId;
173 Int_t m_stat[5];
174 Int_t m_stat2[5];
175 Double_t m_chisq[5];
176 Int_t m_ndf[5];
177 Int_t m_nlayer[5];
178 //o Int_t m_nster[5];
179 //o Int_t m_firstLayer[5];
180 //o Int_t m_lastLayer[5];
181
182 //Double_t m_poca[3];
183 Double_t m_zhelix[5]; // 5 track parameters at zero point for pi
184 //o Double_t m_zerror[5][5]; // error matrix at zero point for pion
185 Double_t m_zerror[15]; // error matrix at zero point for pion
186
187 //Double_t m_poca_e[3];
188 Double_t m_zhelix_e[5]; // 5 track parameters at zero point for el
189 //o Double_t m_zerror_e[5][5]; // error matrix at zero point for electron
190 Double_t m_zerror_e[15]; // error matrix at zero point for electron
191
192 //Double_t m_poca_mu[3];
193 Double_t m_zhelix_mu[5]; // 5 track parameters at zero point for mu
194 //o Double_t m_zerror_mu[5][5];// error matrix at zero point for muon ;
195 Double_t m_zerror_mu[15]; // error matrix at zero point for muon ;
196
197 //Double_t m_poca_k[3];
198 Double_t m_zhelix_k[5]; // 5 track parameters at zero point for ka
199 //o Double_t m_zerror_k[5][5]; // error matrix at zero point for kaon
200 Double_t m_zerror_k[15]; // error matrix at zero point for kaon
201
202 //Double_t m_poca_p[3];
203 Double_t m_zhelix_p[5]; // 5 track parameters at zero point for pr
204 //o Double_t m_zerror_p[5][5]; // error matrix at zero point for proton
205 Double_t m_zerror_p[15]; // error matrix at zero point for proton
206
207 Double_t m_fhelix[5]; // 5 track parameters at first Mdchit for pi
208 //o Double_t m_ferror[5][5]; // error matrix at first Mdc hit for pion
209 Double_t m_ferror[15]; // error matrix at first Mdc hit for pion
210 Double_t m_fhelix_e[5];
211 //o Double_t m_ferror_e[5][5];
212 Double_t m_ferror_e[15];
213 Double_t m_fhelix_mu[5];
214 //o Double_t m_ferror_mu[5][5];
215 Double_t m_ferror_mu[15];
216 Double_t m_fhelix_k[5];
217 //o Double_t m_ferror_k[5][5];
218 Double_t m_ferror_k[15];
219 Double_t m_fhelix_p[5];
220 //o Double_t m_ferror_p[5][5];
221 Double_t m_ferror_p[15];
222
223 ClassDef(TMdcKalTrack,3)
224};
225
226#endif
void setNdf(const Int_t ndf, const Int_t pid)
Definition: TMdcKalTrack.h:68
Double_t getFErrorE(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:52
Double_t getFHelix(Int_t i) const
Definition: TMdcKalTrack.h:48
void setZErrorMu(const Double_t zerror_mu[5][5])
Definition: TMdcKalTrack.h:101
void setZHelixK(const Double_t zhelix_k[5])
Definition: TMdcKalTrack.h:108
void setFHelix(const Double_t fhelix[5])
Definition: TMdcKalTrack.h:130
void setFErrorP(const Double_t ferror_p[5][5])
Definition: TMdcKalTrack.h:166
Double_t getZErrorP(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:44
void setZError(const Double_t zerror[5][5])
Definition: TMdcKalTrack.h:78
Double_t getZHelix(Int_t i) const
Definition: TMdcKalTrack.h:27
void setFHelixE(const Double_t fhelix_e[5])
Definition: TMdcKalTrack.h:138
void setChisq(const Double_t chisq, const Int_t pid)
Definition: TMdcKalTrack.h:67
void setFHelixMu(const Double_t fhelix_mu[5])
Definition: TMdcKalTrack.h:146
Double_t getFHelixMu(Int_t i) const
Definition: TMdcKalTrack.h:54
Double_t getFHelixK(Int_t i) const
Definition: TMdcKalTrack.h:57
Double_t getZErrorE(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:32
void setZErrorP(const Double_t zerror_p[5][5])
Definition: TMdcKalTrack.h:123
Int_t getStat(const Int_t pid) const
Definition: TMdcKalTrack.h:18
void setZErrorE(const Double_t zerror_e[5][5])
Definition: TMdcKalTrack.h:90
void setZHelixE(const Double_t zhelix_e[5])
Definition: TMdcKalTrack.h:86
Double_t getFErrorK(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:58
Int_t getNdf(const Int_t pid) const
Definition: TMdcKalTrack.h:21
void setZErrorK(const Double_t zerror_k[5][5])
Definition: TMdcKalTrack.h:112
Double_t getZError(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:28
Int_t getNlayer(const Int_t pid) const
Definition: TMdcKalTrack.h:22
void setFHelixK(const Double_t fhelix_k[5])
Definition: TMdcKalTrack.h:154
void setFHelixP(const Double_t fhelix_p[5])
Definition: TMdcKalTrack.h:162
Double_t getFErrorP(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:61
Int_t getTrackId() const
Definition: TMdcKalTrack.h:17
Double_t getChisq(const Int_t pid) const
Definition: TMdcKalTrack.h:20
Double_t getZHelixK(Int_t i) const
Definition: TMdcKalTrack.h:39
void setZHelix(const Double_t zhelix[5])
Definition: TMdcKalTrack.h:74
void setNlayer(const Int_t nlayer, const Int_t pid)
Definition: TMdcKalTrack.h:69
void setZHelixMu(const Double_t zhelix_mu[5])
Definition: TMdcKalTrack.h:97
void setFErrorMu(const Double_t ferror_mu[5][5])
Definition: TMdcKalTrack.h:150
Double_t getFHelixP(Int_t i) const
Definition: TMdcKalTrack.h:60
Double_t getFHelixE(Int_t i) const
Definition: TMdcKalTrack.h:51
void setFErrorK(const Double_t ferror_k[5][5])
Definition: TMdcKalTrack.h:158
Double_t getZHelixMu(Int_t i) const
Definition: TMdcKalTrack.h:35
Double_t getZHelixE(Int_t i) const
Definition: TMdcKalTrack.h:31
Double_t getFError(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:49
void setTrackId(const Int_t trackId)
Definition: TMdcKalTrack.h:64
void setStat2(const Int_t stat, const Int_t pid)
Definition: TMdcKalTrack.h:66
Double_t getZHelixP(Int_t i) const
Definition: TMdcKalTrack.h:43
void setZHelixP(const Double_t zhelix_p[5])
Definition: TMdcKalTrack.h:119
Int_t getStat2(const Int_t pid) const
Definition: TMdcKalTrack.h:19
void setFError(const Double_t ferror[5][5])
Definition: TMdcKalTrack.h:134
Double_t getFErrorMu(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:55
Double_t getZErrorK(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:40
void setStat(const Int_t stat, const Int_t pid)
Definition: TMdcKalTrack.h:65
void setFErrorE(const Double_t ferror_e[5][5])
Definition: TMdcKalTrack.h:142
Double_t getZErrorMu(Int_t i, Int_t j) const
Definition: TMdcKalTrack.h:36
T get_element(const T *pac_sm, int i, int j)
Definition: SimMatr.h:27
void pack2d(int n, const T *sm, T *pac_sm)
Definition: SimMatr.h:9