Belle II Software development
VXDIntercept.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
9#pragma once
10
11#include <framework/datastore/RelationsObject.h>
12#include <vxd/dataobjects/VxdID.h>
13
14namespace Belle2 {
24
25 public:
26
31
33 VXDIntercept(double coorU, double coorV, VxdID sensorid) :
34 m_coorU(coorU),
35 m_coorV(coorV),
36 m_sigmaU(0),
37 m_sigmaV(0),
40 m_lambda(0),
41 m_sensorID(sensorid) {}
42
44 VXDIntercept(double coorU, double coorV, double sigmaU, double sigmaV,
45 double sigmaUprime, double sigmaVprime, double lambda, VxdID sensorid) :
46 m_coorU(coorU),
47 m_coorV(coorV),
48 m_sigmaU(sigmaU),
49 m_sigmaV(sigmaV),
50 m_sigmaUprime(sigmaUprime),
51 m_sigmaVprime(sigmaVprime),
52 m_lambda(lambda),
53 m_sensorID(sensorid) {}
54
58
59 double getCoorU() const { return m_coorU; }
60 double getCoorV() const { return m_coorV; }
61 double getSigmaU() const { return m_sigmaU; }
62 double getSigmaV() const { return m_sigmaV; }
63 double getSigmaUprime() const { return m_sigmaUprime; }
64 double getSigmaVprime() const { return m_sigmaVprime; }
65 double getLambda() const { return m_lambda; }
66 double getUprime() const { return m_Uprime; }
67 double getVprime() const { return m_Vprime; }
70 void setCoorU(double user_coorU) { m_coorU = user_coorU; }
71 void setCoorV(double user_coorV) { m_coorV = user_coorV; }
72 void setSigmaU(double user_sigmaU) { m_sigmaU = user_sigmaU; }
73 void setSigmaV(double user_sigmaV) { m_sigmaV = user_sigmaV; }
74 void setSigmaUprime(double user_sigmaUprime) { m_sigmaUprime = user_sigmaUprime; }
75 void setSigmaVprime(double user_sigmaVprime) { m_sigmaVprime = user_sigmaVprime; }
76 void setLambda(double user_lambda) { m_lambda = user_lambda; }
77 void setVxdID(VxdID::baseType user_vxdID) { m_sensorID = user_vxdID; }
78 void setUprime(double user_Uprime) { m_Uprime = user_Uprime; }
79 void setVprime(double user_Vprime) { m_Vprime = user_Vprime; }
81 private:
82
83 double m_coorU;
84 double m_coorV;
85 double m_sigmaU;
86 double m_sigmaV;
89 double m_lambda;
90 double m_Uprime = 0;
91 double m_Vprime = 0;
97 };
99}
Defines interface for accessing relations of objects in StoreArray.
VXDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with a VXD s...
Definition: VXDIntercept.h:23
void setLambda(double user_lambda)
set the length of the track
Definition: VXDIntercept.h:76
double getVprime() const
return the V direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:67
double getSigmaVprime() const
return the statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:64
void setVxdID(VxdID::baseType user_vxdID)
set the sensor ID
Definition: VXDIntercept.h:77
VxdID::baseType m_sensorID
sensor ID
Definition: VXDIntercept.h:93
double m_Vprime
V direction tangent of the track extrapolated to the sensor.
Definition: VXDIntercept.h:91
double m_coorU
u coordinate of the intercept
Definition: VXDIntercept.h:83
~VXDIntercept()
Destructor.
Definition: VXDIntercept.h:57
double m_sigmaU
statistical error of the extrapolation along the u coordinate
Definition: VXDIntercept.h:85
void setSigmaVprime(double user_sigmaVprime)
set the statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:75
double getSigmaV() const
return the statistical error on the V coordinate of the intercept
Definition: VXDIntercept.h:62
void setSigmaU(double user_sigmaU)
set the statistical error on the U coordinate of the intercept
Definition: VXDIntercept.h:72
double getSigmaUprime() const
return the statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:63
VXDIntercept(double coorU, double coorV, double sigmaU, double sigmaV, double sigmaUprime, double sigmaVprime, double lambda, VxdID sensorid)
Explicit constructor providing all values.
Definition: VXDIntercept.h:44
void setCoorU(double user_coorU)
set the U coordinate of the intercept
Definition: VXDIntercept.h:70
void setCoorV(double user_coorV)
set the V coordinate of the intercept
Definition: VXDIntercept.h:71
double m_coorV
v coordinate of the intercept
Definition: VXDIntercept.h:84
double m_lambda
length of the track
Definition: VXDIntercept.h:89
double m_sigmaV
statistical error of the extrapolation along the v coordinate
Definition: VXDIntercept.h:86
void setSigmaV(double user_sigmaV)
set the statistical error on the V coordinate of the intercept
Definition: VXDIntercept.h:73
double getLambda() const
return the length of the track
Definition: VXDIntercept.h:65
ClassDef(VXDIntercept, 2)
Needed to make the ROOT object storable.
void setUprime(double user_Uprime)
set the U direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:78
double m_sigmaVprime
statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:88
double getCoorV() const
return the V coordinate of the intercept
Definition: VXDIntercept.h:60
double getUprime() const
return the U direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:66
double m_Uprime
U direction tangent of the track extrapolated to the sensor.
Definition: VXDIntercept.h:90
double getSigmaU() const
return the statistical error on the U coordinate of the intercept
Definition: VXDIntercept.h:61
void setSigmaUprime(double user_sigmaUprime)
set the statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:74
VxdID::baseType getSensorID() const
return the sensor ID
Definition: VXDIntercept.h:68
VXDIntercept(double coorU, double coorV, VxdID sensorid)
Explicit constructor providing coordinates and sensorID.
Definition: VXDIntercept.h:33
void setVprime(double user_Vprime)
set the V direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:79
double getCoorU() const
return the U coordinate of the intercept
Definition: VXDIntercept.h:59
double m_sigmaUprime
statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:87
VXDIntercept()
Default constructor for I/O.
Definition: VXDIntercept.h:29
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:33
unsigned short baseType
The base integer type for VxdID.
Definition: VxdID.h:36
Abstract base class for different kinds of events.