Belle II Software development
BelleTrkExtra.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9#include <framework/datastore/RelationsObject.h>
10
11namespace Belle2 {
17
19
20 public:
22 BelleTrkExtra() : m_firstx(0.0), m_firsty(0.0), m_firstz(0.0), m_lastx(0.0), m_lasty(0.0), m_lastz(0.0), m_tof(0.0),
24
26 BelleTrkExtra(double first_x, double first_y, double first_z,
27 double last_x, double last_y, double last_z,
28 double tof, double path_length, short tof_quality, double tof_sigma,
29 int acc_ph, short acc_quality,
30 double dedx, short dedx_quality) : m_firstx(first_x), m_firsty(first_y), m_firstz(first_z),
31 m_lastx(last_x), m_lasty(last_y), m_lastz(last_z),
32 m_tof(tof), m_path_length(path_length), m_tof_quality(tof_quality), m_tof_sigma(tof_sigma),
33 m_acc_ph(acc_ph), m_acc_quality(acc_quality),
34 m_dedx(dedx), m_dedx_quality(dedx_quality) {};
35
38
39
47 void setTofInfo(double tof, double path_length, double tof_sigma, short tof_quality);
48
49
55 void setACCInfo(int acc_ph, short acc_quality);
56
57
63 void setdEdxInfo(double dedx, short dedx_quality);
64
65
66
73 void setTrackFirstX(double first_x);
74
81 void setTrackFirstY(double first_y);
82
89 void setTrackFirstZ(double first_z);
90
97 void setTrackLastX(double last_x);
98
105 void setTrackLastY(double last_y);
106
113 void setTrackLastZ(double last_z);
114
119 double getTrackFirstX(void) const
120 {
121 return m_firstx;
122 }
123
128 double getTrackFirstY(void) const
129 {
130 return m_firsty;
131 }
132
137 double getTrackFirstZ(void) const
138 {
139 return m_firstz;
140 }
141
146 double getTrackLastX(void) const
147 {
148 return m_lastx;
149 }
150
155 double getTrackLastY(void) const
156 {
157 return m_lasty;
158 }
159
164 double getTrackLastZ(void) const
165 {
166 return m_lastz;
167 }
168
169
174 double getTof(void) const
175 {
176 return m_tof;
177 }
178
183 double getPathLength(void) const
184 {
185 return m_path_length;
186 }
187
192 double getTofSigma(void) const
193 {
194 return m_tof_sigma;
195 }
196
201 short getTofQuality(void) const
202 {
203 return m_tof_quality;
204 }
205
210 int getACCPe(void) const
211 {
212 return m_acc_ph;
213 }
214
215
220 short getACCQuality(void) const
221 {
222 return m_acc_quality;
223 }
224
229 double getdEdx(void) const
230 {
231 return m_dedx;
232 }
233
238 short getdEdxQuality(void) const
239 {
240 return m_dedx_quality;
241 }
242
243 private:
244 // Persistent data members
245
246
247 double m_firstx;
248 double m_firsty;
249 double m_firstz;
250 double m_lastx;
251 double m_lasty;
252 double m_lastz;
253 double m_tof;
256 double m_tof_sigma;
259 double m_dedx;
261
263
264 };
265
267} // end namespace Belle2
268
void setTrackLastY(double last_y)
Set last_y End point of the track near the last CDC hit point.
double getTrackLastX(void) const
Get last_x.
double getTofSigma(void) const
Get tof sigma.
BelleTrkExtra()
Constructor initializing everything to zero.
double m_firstx
Start point of the track near the 1st CDC hit point.
void setdEdxInfo(double dedx, short dedx_quality)
Set the dEdx-related information.
double m_lastx
End point of the track near the last CDC hit point.
double m_firsty
Start point of the track near the 1st CDC hit point.
BelleTrkExtra(double first_x, double first_y, double first_z, double last_x, double last_y, double last_z, double tof, double path_length, short tof_quality, double tof_sigma, int acc_ph, short acc_quality, double dedx, short dedx_quality)
Constructor initializing variables.
double m_dedx
specific ionization of the track (keV/cm)
void setTrackLastZ(double last_z)
Set last_z End point of the track near the last CDC hit point.
~BelleTrkExtra()
Destructor.
void setTrackLastX(double last_x)
Set last_x End point of the track near the last CDC hit point.
double getTrackLastZ(void) const
Get last_z.
void setTrackFirstX(double first_x)
Set first_x Start point of the track near the 1st CDC hit point.
double getTrackFirstY(void) const
Get first_y.
short getACCQuality(void) const
Get ACC quality flag.
int m_acc_ph
number of ACC photo-electrons associated to the track
double getTrackLastY(void) const
Get last_y.
double getPathLength(void) const
Get path length.
void setTrackFirstY(double first_y)
Set first_y Start point of the track near the 1st CDC hit point.
int getACCPe(void) const
Get number of ACC photoelectrons.
short m_tof_quality
matching quality: 0 if ok, 1 if track is not matched
double getTrackFirstX(void) const
Get first_x.
short m_dedx_quality
quality of the measurement.
void setACCInfo(int acc_ph, short acc_quality)
Set the ACC-related information.
double m_lastz
End point of the track near the last CDC hit point.
short getTofQuality(void) const
Get tof quality flag.
double m_tof_sigma
expected time resolution [ns]
short getdEdxQuality(void) const
Get de/dx quality flag.
double m_path_length
length of the track from the doca to the beam axis to the tof [cm]
double getdEdx(void) const
Get specific ionization of the track.
double getTrackFirstZ(void) const
Get first_z.
double m_lasty
End point of the track near the last CDC hit point.
void setTrackFirstZ(double first_z)
Set first_z Start point of the track near the 1st CDC hit point.
void setTofInfo(double tof, double path_length, double tof_sigma, short tof_quality)
Set the tof-related information.
double m_firstz
Start point of the track near the 1st CDC hit point.
short m_acc_quality
matching quality: 0 if ok, 1 if track is not matched
double m_tof
measured tof of the track [ns]
double getTof(void) const
Get tof.
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Abstract base class for different kinds of events.