Belle II Software development
SVDEndringsPar.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#pragma once
9
10#include <TObject.h>
11#include <string>
12
13
14namespace Belle2 {
25 class SVDEndringsTypePar: public TObject {
26
27 public:
29 SVDEndringsTypePar(const std::string& name, double z, double baseRadius, double innerRadius, double outerRadius,
30 double horizontalBarWidth, double verticalBarWidth):
31 m_name(name), m_z(z), m_baseRadius(baseRadius), m_innerRadius(innerRadius), m_outerRadius(outerRadius),
32 m_horizontalBarWidth(horizontalBarWidth), m_verticalBarWidth(verticalBarWidth)
33 {}
38 {}
39
41 const std::string& getName() const { return m_name; }
43 double getZ() const { return m_z; }
45 double getBaseRadius() const { return m_baseRadius; }
47 double getInnerRadius() const { return m_innerRadius; }
49 double getOuterRadius() const { return m_outerRadius; }
53 double getVerticalBarWidth() const { return m_verticalBarWidth; }
54
55 private:
56
57 std::string m_name;
58 double m_z;
59 double m_baseRadius;
66 };
67
72 class SVDEndringsPar: public TObject {
73
74 public:
76 SVDEndringsPar(const std::string& material, double length, double gapWidth, double baseThickness):
77 m_material(material), m_length(length), m_gapWidth(gapWidth), m_baseThickness(baseThickness)
78 {}
82 {}
83
85 const std::string& getMaterial() const { return m_material; }
87 double getLength() const { return m_length; }
89 double getGapWidth() const { return m_gapWidth; }
91 double getBaseThickness() const { return m_baseThickness; }
93 const std::vector<SVDEndringsTypePar>& getTypes() const { return m_types; }
95 std::vector<SVDEndringsTypePar>& getTypes() { return m_types; }
96
97 private:
98
99 std::string m_material;
100 double m_length;
101 double m_gapWidth;
104 std::vector<SVDEndringsTypePar> m_types;
107 };
108
109
111} // end of namespace Belle2
112
The Class for SVD Endring.
std::vector< SVDEndringsTypePar > & getTypes()
get types (forward/backward)
SVDEndringsPar()
Constructor.
std::string m_material
material name
SVDEndringsPar(const std::string &material, double length, double gapWidth, double baseThickness)
Constructor.
std::vector< SVDEndringsTypePar > m_types
vector of types
double m_baseThickness
base thickness
double getGapWidth() const
get gap width
double getBaseThickness() const
get base thickness
const std::string & getMaterial() const
get material
const std::vector< SVDEndringsTypePar > & getTypes() const
get types (forward/backward)
double m_gapWidth
gap width
ClassDef(SVDEndringsPar, 5)
ClassDef, must be the last term before the closing {}.
double getLength() const
get length
The Class for SVD Endring Type.
double m_innerRadius
inner radius
double getBaseRadius() const
get base radius
double getHorizontalBarWidth() const
get horizontal bar width
const std::string & getName() const
get name
ClassDef(SVDEndringsTypePar, 5)
ClassDef, must be the last term before the closing {}.
SVDEndringsTypePar(const std::string &name, double z, double baseRadius, double innerRadius, double outerRadius, double horizontalBarWidth, double verticalBarWidth)
Constructor.
double getOuterRadius() const
get outer radius
double getInnerRadius() const
get inner radius
double m_horizontalBarWidth
horizontal bar width
double getZ() const
get z
double m_baseRadius
base radius
double getVerticalBarWidth() const
get vertical bar width
SVDEndringsTypePar()
Constructor.
double m_outerRadius
outer radius
double m_verticalBarWidth
vertical bar width
Abstract base class for different kinds of events.