Belle II Software  release-05-01-25
SVDEndringsPar.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Benjamin Schwenker *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <TObject.h>
13 #include <string>
14 
15 
16 namespace Belle2 {
27  class SVDEndringsTypePar: public TObject {
28 
29  public:
31  SVDEndringsTypePar(const std::string& name, double z, double baseRadius, double innerRadius, double outerRadius,
32  double horizontalBarWidth, double verticalBarWidth):
33  m_name(name), m_z(z), m_baseRadius(baseRadius), m_innerRadius(innerRadius), m_outerRadius(outerRadius),
34  m_horizontalBarWidth(horizontalBarWidth), m_verticalBarWidth(verticalBarWidth)
35  {}
40  {}
41 
43  const std::string& getName() const { return m_name; }
45  double getZ() const { return m_z; }
47  double getBaseRadius() const { return m_baseRadius; }
49  double getInnerRadius() const { return m_innerRadius; }
51  double getOuterRadius() const { return m_outerRadius; }
53  double getHorizontalBarWidth() const { return m_horizontalBarWidth; }
55  double getVerticalBarWidth() const { return m_verticalBarWidth; }
56 
57  private:
58 
59  std::string m_name;
60  double m_z;
61  double m_baseRadius;
62  double m_innerRadius;
63  double m_outerRadius;
64  double m_horizontalBarWidth;
65  double m_verticalBarWidth;
68  };
69 
74  class SVDEndringsPar: public TObject {
75 
76  public:
78  SVDEndringsPar(const std::string& material, double length, double gapWidth, double baseThickness):
79  m_material(material), m_length(length), m_gapWidth(gapWidth), m_baseThickness(baseThickness)
80  {}
84  {}
85 
87  const std::string& getMaterial() const { return m_material; }
89  double getLength() const { return m_length; }
91  double getGapWidth() const { return m_gapWidth; }
93  double getBaseThickness() const { return m_baseThickness; }
95  const std::vector<SVDEndringsTypePar>& getTypes() const { return m_types; }
97  std::vector<SVDEndringsTypePar>& getTypes() { return m_types; }
98 
99  private:
100 
101  std::string m_material;
102  double m_length;
103  double m_gapWidth;
104  double m_baseThickness;
106  std::vector<SVDEndringsTypePar> m_types;
109  };
110 
111 
113 } // end of namespace Belle2
114 
Belle2::SVDEndringsPar::m_gapWidth
double m_gapWidth
gap width
Definition: SVDEndringsPar.h:111
Belle2::SVDEndringsTypePar::getVerticalBarWidth
double getVerticalBarWidth() const
get vertical bar width
Definition: SVDEndringsPar.h:63
Belle2::SVDEndringsPar::getBaseThickness
double getBaseThickness() const
get base thickness
Definition: SVDEndringsPar.h:101
Belle2::SVDEndringsPar::m_length
double m_length
length
Definition: SVDEndringsPar.h:110
Belle2::SVDEndringsTypePar::m_z
double m_z
z
Definition: SVDEndringsPar.h:68
Belle2::SVDEndringsPar::getGapWidth
double getGapWidth() const
get gap width
Definition: SVDEndringsPar.h:99
Belle2::SVDEndringsTypePar::m_verticalBarWidth
double m_verticalBarWidth
vertical bar width
Definition: SVDEndringsPar.h:73
Belle2::SVDEndringsTypePar::SVDEndringsTypePar
SVDEndringsTypePar()
Constructor.
Definition: SVDEndringsPar.h:45
Belle2::SVDEndringsTypePar::getOuterRadius
double getOuterRadius() const
get outer radius
Definition: SVDEndringsPar.h:59
Belle2::SVDEndringsPar::m_types
std::vector< SVDEndringsTypePar > m_types
vector of types
Definition: SVDEndringsPar.h:114
Belle2::SVDEndringsPar::m_material
std::string m_material
material name
Definition: SVDEndringsPar.h:109
Belle2::SVDEndringsTypePar::getName
const std::string & getName() const
get name
Definition: SVDEndringsPar.h:51
Belle2::SVDEndringsTypePar::m_outerRadius
double m_outerRadius
outer radius
Definition: SVDEndringsPar.h:71
Belle2::SVDEndringsPar::m_baseThickness
double m_baseThickness
base thickness
Definition: SVDEndringsPar.h:112
Belle2::SVDEndringsTypePar::getInnerRadius
double getInnerRadius() const
get inner radius
Definition: SVDEndringsPar.h:57
Belle2::SVDEndringsTypePar::getHorizontalBarWidth
double getHorizontalBarWidth() const
get horizontal bar width
Definition: SVDEndringsPar.h:61
Belle2::SVDEndringsTypePar
The Class for SVD Endring Type.
Definition: SVDEndringsPar.h:35
Belle2::SVDEndringsTypePar::getZ
double getZ() const
get z
Definition: SVDEndringsPar.h:53
Belle2::SVDEndringsPar
The Class for SVD Endring.
Definition: SVDEndringsPar.h:82
Belle2::SVDEndringsPar::ClassDef
ClassDef(SVDEndringsPar, 5)
ClassDef, must be the last term before the closing {}.
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::SVDEndringsTypePar::m_innerRadius
double m_innerRadius
inner radius
Definition: SVDEndringsPar.h:70
Belle2::SVDEndringsTypePar::m_name
std::string m_name
name
Definition: SVDEndringsPar.h:67
Belle2::SVDEndringsTypePar::ClassDef
ClassDef(SVDEndringsTypePar, 5)
ClassDef, must be the last term before the closing {}.
Belle2::SVDEndringsPar::getLength
double getLength() const
get length
Definition: SVDEndringsPar.h:97
Belle2::SVDEndringsPar::getMaterial
const std::string & getMaterial() const
get material
Definition: SVDEndringsPar.h:95
Belle2::SVDEndringsTypePar::m_horizontalBarWidth
double m_horizontalBarWidth
horizontal bar width
Definition: SVDEndringsPar.h:72
Belle2::SVDEndringsTypePar::m_baseRadius
double m_baseRadius
base radius
Definition: SVDEndringsPar.h:69
Belle2::SVDEndringsPar::getTypes
const std::vector< SVDEndringsTypePar > & getTypes() const
get types (forward/backward)
Definition: SVDEndringsPar.h:103
Belle2::SVDEndringsPar::SVDEndringsPar
SVDEndringsPar()
Constructor.
Definition: SVDEndringsPar.h:90
Belle2::SVDEndringsTypePar::getBaseRadius
double getBaseRadius() const
get base radius
Definition: SVDEndringsPar.h:55