 |
Belle II Software
release-05-02-19
|
11 #ifndef VXDDEDXTRACK_H
12 #define VXDDEDXTRACK_H
14 #include <reconstruction/dataobjects/DedxConstants.h>
16 #include <framework/datastore/RelationsObject.h>
17 #include <framework/gearbox/Const.h>
31 friend class VXDDedxPIDModule;
44 for (
int i = 0; i <= Dedx::c_SVD; i++)
53 void addHit(
int sid,
int layer,
int adcCount,
double dx,
double dEdx)
63 void addDedx(
int layer,
double distance,
double dedxValue)
66 dist.push_back(distance);
67 dedx.push_back(dedxValue);
74 int iDet = (int)(detector - Const::PXD);
75 if (iDet < 0 or iDet > Dedx::c_SVD)
83 int iDet = (int)(detector - Const::PXD);
84 if (iDet < 0 or iDet > Dedx::c_SVD)
92 int iDet = (int)(detector - Const::PXD);
93 if (iDet < 0 or iDet > Dedx::c_SVD)
121 double getDx(
int i)
const {
return m_dx[i]; }
137 std::vector<double>
m_dx;
141 std::vector<double>
dedx;
double m_cosTheta
cos(theta) for the track
std::vector< double > getDedxList() const
Return the vector of dE/dx values for this track.
static const unsigned int c_SetSize
Number of elements (for use in array bounds etc.)
int getADCCount(int i) const
Return the adcCount for this hit.
double getDx(int i) const
Return the path length through the layer.
double getTrueMomentum() const
Return the MC truemomentum valid at the IP.
ClassDef(VXDDedxTrack, 2)
Debug output for VXDDedxPID module.
std::vector< double > m_dEdx
charge per path length
std::vector< double > m_dx
path length in layer
double m_motherPDG
MC PID of mother particle.
double m_p
momentum at the IP
Debug output for VXDDedxPID module.
double m_length
total distance travelled by the track
short m_nHitsUsed
number of hits on this track used in the truncated mean
int getSensorID(int i) const
Return the sensor ID for this hit.
double getDedx(Const::EDetector detector) const
Get dE/dx truncated mean for given detector.
double m_vxdLogl[Const::ChargedStable::c_SetSize]
log likelihood for each particle, not including momentum prior
EDetector
Enum for identifying the detector components (detector and subdetector).
double m_dedxAvgTruncated[2]
dE/dx truncated mean per track
double m_dedxAvgTruncatedErr[2]
standard deviation of m_dedxAvgTruncated
std::vector< double > dedxLayer
layer id corresponding to dE/dx measurement
void addHit(int sid, int layer, int adcCount, double dx, double dEdx)
Add a single hit to the object.
double getMomentum() const
Return the momentum valid at the IP.
std::vector< int > m_adcCount
adcCount per hit
std::vector< double > dist
distance flown through active medium in current segment
short m_nHits
number of hits on this track
VXDDedxTrack()
Default constructor.
double eventID() const
Return the event ID.
Abstract base class for different kinds of events.
double size() const
Return the number of hits for this track.
double getCosTheta() const
Return cos(theta) for this yrack.
int m_trackID
ID number of the Track.
double getNHitsUsed() const
Return the number of hits used to determine the truncated mean.
short m_charge
particle charge from tracking (+1 or -1)
void addDedx(int layer, double distance, double dedxValue)
add dE/dx information for a VXD layer
int getLayer(int i) const
Return the (global) layer number.
double trackID() const
Return the track ID.
double m_dedxAvg[2]
dE/dx mean value per track
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
double m_pTrue
MC true momentum.
double getDedxMean(Const::EDetector detector) const
Get the dE/dx mean for given detector.
std::vector< int > m_sensorID
unique sensor ID
std::vector< double > dedx
extracted dE/dx (arb.
int m_eventID
event in which this Track was found
std::vector< int > m_layer
VXD layer number.
double getDedxError(Const::EDetector detector) const
Get the error on the dE/dx truncated mean for given detector.