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 {
19
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; }
63
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; }
74
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;
86
88
91 };
93}
void setLambda(double user_lambda)
set the length of the track
double getVprime() const
return the V direction tangent of the track extrapolated to the sensor
double getSigmaVprime() const
return the statistical error of the extrapolation of V prime
void setVxdID(VxdID::baseType user_vxdID)
set the sensor ID
VxdID::baseType m_sensorID
sensor ID
double m_Vprime
V direction tangent of the track extrapolated to the sensor.
double m_coorU
u coordinate of the intercept
~VXDIntercept()
Destructor.
double m_sigmaU
statistical error of the extrapolation along the u coordinate
void setSigmaVprime(double user_sigmaVprime)
set the statistical error of the extrapolation of V prime
double getSigmaV() const
return the statistical error on the V coordinate of the intercept
void setSigmaU(double user_sigmaU)
set the statistical error on the U coordinate of the intercept
double getSigmaUprime() const
return the statistical error of the extrapolation of U prime
VXDIntercept(double coorU, double coorV, double sigmaU, double sigmaV, double sigmaUprime, double sigmaVprime, double lambda, VxdID sensorid)
Explicit constructor providing all values.
void setCoorU(double user_coorU)
set the U coordinate of the intercept
void setCoorV(double user_coorV)
set the V coordinate of the intercept
double m_coorV
v coordinate of the intercept
double m_lambda
length of the track
double m_sigmaV
statistical error of the extrapolation along the v coordinate
void setSigmaV(double user_sigmaV)
set the statistical error on the V coordinate of the intercept
double getLambda() const
return the length of the track
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
double m_sigmaVprime
statistical error of the extrapolation of V prime
double getCoorV() const
return the V coordinate of the intercept
double getUprime() const
return the U direction tangent of the track extrapolated to the sensor
double m_Uprime
U direction tangent of the track extrapolated to the sensor.
double getSigmaU() const
return the statistical error on the U coordinate of the intercept
void setSigmaUprime(double user_sigmaUprime)
set the statistical error of the extrapolation of U prime
VxdID::baseType getSensorID() const
return the sensor ID
VXDIntercept(double coorU, double coorV, VxdID sensorid)
Explicit constructor providing coordinates and sensorID.
void setVprime(double user_Vprime)
set the V direction tangent of the track extrapolated to the sensor
double getCoorU() const
return the U coordinate of the intercept
double m_sigmaUprime
statistical error of the extrapolation of U prime
VXDIntercept()
Default constructor for I/O.
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
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Abstract base class for different kinds of events.