Belle II Software  release-05-01-25
VXDIntercept.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2013 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Giulia Casarosa, Eugenio Paoloni *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/datastore/RelationsObject.h>
14 #include <vxd/dataobjects/VxdID.h>
15 
16 namespace Belle2 {
25  class VXDIntercept : public RelationsObject {
26 
27  public:
28 
31  VXDIntercept(): m_coorU(0), m_coorV(0), m_sigmaU(0), m_sigmaV(0),
33 
35  VXDIntercept(double coorU, double coorV, VxdID sensorid) :
36  m_coorU(coorU),
37  m_coorV(coorV),
38  m_sigmaU(0),
40  m_sigmaUprime(0),
41  m_sigmaVprime(0),
42  m_lambda(0),
43  m_sensorID(sensorid) {}
44 
46  VXDIntercept(double coorU, double coorV, double sigmaU, double sigmaV,
47  double sigmaUprime, double sigmaVprime, double lambda, VxdID sensorid) :
48  m_coorU(coorU),
49  m_coorV(coorV),
50  m_sigmaU(sigmaU),
51  m_sigmaV(sigmaV),
52  m_sigmaUprime(sigmaUprime),
53  m_sigmaVprime(sigmaVprime),
54  m_lambda(lambda),
55  m_sensorID(sensorid) {}
56 
59  ~VXDIntercept() {}
60 
61  double getCoorU() const { return m_coorU; }
62  double getCoorV() const { return m_coorV; }
63  double getSigmaU() const { return m_sigmaU; }
64  double getSigmaV() const { return m_sigmaV; }
65  double getSigmaUprime() const { return m_sigmaUprime; }
66  double getSigmaVprime() const { return m_sigmaVprime; }
67  double getLambda() const { return m_lambda; }
68  VxdID::baseType getSensorID() const { return m_sensorID; }
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; }
79  private:
80 
81  double m_coorU;
82  double m_coorV;
83  double m_sigmaU;
84  double m_sigmaV;
85  double m_sigmaUprime;
86  double m_sigmaVprime;
87  double m_lambda;
93  };
95 }
Belle2::VxdID
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:43
Belle2::VXDIntercept::m_sigmaUprime
double m_sigmaUprime
statistical error of the extrapolation of U prime
Definition: VXDIntercept.h:93
Belle2::VXDIntercept::m_sigmaVprime
double m_sigmaVprime
statistical error of the extrapolation of V prime
Definition: VXDIntercept.h:94
Belle2::VXDIntercept
VXDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with a VXD s...
Definition: VXDIntercept.h:33
Belle2::VXDIntercept::m_coorV
double m_coorV
v coordinate of the intercept
Definition: VXDIntercept.h:90
Belle2::VXDIntercept::~VXDIntercept
~VXDIntercept()
Destructor.
Definition: VXDIntercept.h:67
Belle2::VxdID::baseType
unsigned short baseType
The base integer type for VxdID.
Definition: VxdID.h:46
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::VXDIntercept::VXDIntercept
VXDIntercept()
Default constructor for I/O.
Definition: VXDIntercept.h:39
Belle2::VXDIntercept::m_sensorID
VxdID::baseType m_sensorID
sensor ID
Definition: VXDIntercept.h:97
Belle2::VXDIntercept::m_lambda
double m_lambda
length of the track
Definition: VXDIntercept.h:95
Belle2::VXDIntercept::m_sigmaU
double m_sigmaU
statistical error of the extrapolation along the u coordinate
Definition: VXDIntercept.h:91
Belle2::RelationsObject
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Definition: RelationsObject.h:443
Belle2::VXDIntercept::m_sigmaV
double m_sigmaV
statistical error of the extrapolation along the v coordinate
Definition: VXDIntercept.h:92
Belle2::VXDIntercept::m_coorU
double m_coorU
u coordinate of the intercept
Definition: VXDIntercept.h:89
Belle2::VXDIntercept::ClassDef
ClassDef(VXDIntercept, 1)
Needed to make the ROOT object storable.