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
30
32 VXDIntercept(double coorU, double coorV, VxdID sensorid) :
33 m_coorU(coorU),
34 m_coorV(coorV),
35 m_sensorID(sensorid) {}
36
38 VXDIntercept(double coorU, double coorV, double sigmaU, double sigmaV,
39 double sigmaUprime, double sigmaVprime, double lambda, VxdID sensorid) :
40 m_coorU(coorU),
41 m_coorV(coorV),
42 m_sigmaU(sigmaU),
43 m_sigmaV(sigmaV),
44 m_sigmaUprime(sigmaUprime),
45 m_sigmaVprime(sigmaVprime),
46 m_lambda(lambda),
47 m_sensorID(sensorid) {}
48
52
53 double getCoorU() const { return m_coorU; }
54 double getCoorV() const { return m_coorV; }
55 double getSigmaU() const { return m_sigmaU; }
56 double getSigmaV() const { return m_sigmaV; }
57 double getSigmaUprime() const { return m_sigmaUprime; }
58 double getSigmaVprime() const { return m_sigmaVprime; }
59 double getLambda() const { return m_lambda; }
60 double getUprime() const { return m_Uprime; }
61 double getVprime() const { return m_Vprime; }
64 void setCoorU(double user_coorU) { m_coorU = user_coorU; }
65 void setCoorV(double user_coorV) { m_coorV = user_coorV; }
66 void setSigmaU(double user_sigmaU) { m_sigmaU = user_sigmaU; }
67 void setSigmaV(double user_sigmaV) { m_sigmaV = user_sigmaV; }
68 void setSigmaUprime(double user_sigmaUprime) { m_sigmaUprime = user_sigmaUprime; }
69 void setSigmaVprime(double user_sigmaVprime) { m_sigmaVprime = user_sigmaVprime; }
70 void setLambda(double user_lambda) { m_lambda = user_lambda; }
71 void setVxdID(VxdID::baseType user_vxdID) { m_sensorID = user_vxdID; }
72 void setUprime(double user_Uprime) { m_Uprime = user_Uprime; }
73 void setVprime(double user_Vprime) { m_Vprime = user_Vprime; }
75 private:
76
77 double m_coorU = 0;
78 double m_coorV = 0;
79 double m_sigmaU = 0;
80 double m_sigmaV = 0;
81 double m_sigmaUprime = 0;
82 double m_sigmaVprime = 0;
83 double m_lambda = 0;
84 double m_Uprime = 0;
85 double m_Vprime = 0;
91 };
93}
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:70
double getVprime() const
return the V direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:61
double getSigmaVprime() const
return the statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:58
void setVxdID(VxdID::baseType user_vxdID)
set the sensor ID
Definition: VXDIntercept.h:71
VxdID::baseType m_sensorID
sensor ID
Definition: VXDIntercept.h:87
double m_Vprime
V direction tangent of the track extrapolated to the sensor.
Definition: VXDIntercept.h:85
double m_coorU
u coordinate of the intercept
Definition: VXDIntercept.h:77
~VXDIntercept()
Destructor.
Definition: VXDIntercept.h:51
double m_sigmaU
statistical error of the extrapolation along the u coordinate
Definition: VXDIntercept.h:79
void setSigmaVprime(double user_sigmaVprime)
set the statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:69
double getSigmaV() const
return the statistical error on the V coordinate of the intercept
Definition: VXDIntercept.h:56
void setSigmaU(double user_sigmaU)
set the statistical error on the U coordinate of the intercept
Definition: VXDIntercept.h:66
double getSigmaUprime() const
return the statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:57
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:38
void setCoorU(double user_coorU)
set the U coordinate of the intercept
Definition: VXDIntercept.h:64
void setCoorV(double user_coorV)
set the V coordinate of the intercept
Definition: VXDIntercept.h:65
double m_coorV
v coordinate of the intercept
Definition: VXDIntercept.h:78
double m_lambda
length of the track
Definition: VXDIntercept.h:83
double m_sigmaV
statistical error of the extrapolation along the v coordinate
Definition: VXDIntercept.h:80
void setSigmaV(double user_sigmaV)
set the statistical error on the V coordinate of the intercept
Definition: VXDIntercept.h:67
double getLambda() const
return the length of the track
Definition: VXDIntercept.h:59
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:72
double m_sigmaVprime
statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:82
double getCoorV() const
return the V coordinate of the intercept
Definition: VXDIntercept.h:54
double getUprime() const
return the U direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:60
double m_Uprime
U direction tangent of the track extrapolated to the sensor.
Definition: VXDIntercept.h:84
double getSigmaU() const
return the statistical error on the U coordinate of the intercept
Definition: VXDIntercept.h:55
void setSigmaUprime(double user_sigmaUprime)
set the statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:68
VxdID::baseType getSensorID() const
return the sensor ID
Definition: VXDIntercept.h:62
VXDIntercept(double coorU, double coorV, VxdID sensorid)
Explicit constructor providing coordinates and sensorID.
Definition: VXDIntercept.h:32
void setVprime(double user_Vprime)
set the V direction tangent of the track extrapolated to the sensor
Definition: VXDIntercept.h:73
double getCoorU() const
return the U coordinate of the intercept
Definition: VXDIntercept.h:53
double m_sigmaUprime
statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:81
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.