Belle II Software  release-08-01-10
TOPGeoSideRails.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 <top/dbobjects/TOPGeoBase.h>
12 #include <string>
13 
14 namespace Belle2 {
24  class TOPGeoSideRails: public TOPGeoBase {
25  public:
26 
31  {}
32 
41  TOPGeoSideRails(double thickness, double reducedThickness, double height,
42  const std::string& material,
43  const std::string& name = "TOPSideRail"): TOPGeoBase(name),
44  m_thickness(thickness), m_reducedThickness(reducedThickness),
45  m_height(height), m_material(material)
46  {}
47 
52  double getThickness() const {return m_thickness / s_unit;}
53 
58  double getReducedThickness() const {return m_reducedThickness / s_unit;}
59 
64  double getHeight() const {return m_height / s_unit;}
65 
70  const std::string& getMaterial() const {return m_material;}
71 
76  bool isConsistent() const override;
77 
82  virtual void print(const std::string& title = "QBB side rails geometry parameters") const override;
83 
84  private:
85 
86  float m_thickness = 0;
87  float m_reducedThickness = 0;
88  float m_height = 0;
89  std::string m_material;
93  };
94 
96 } // namespace Belle2
Base class for geometry parameters.
Definition: TOPGeoBase.h:25
Geometry parameters of side rails (simplified)
double getHeight() const
Returns height.
std::string m_material
material name
ClassDefOverride(TOPGeoSideRails, 1)
ClassDef.
TOPGeoSideRails()
Default constructor.
float m_reducedThickness
thickness at prism enclosure
double getThickness() const
Returns thickness.
TOPGeoSideRails(double thickness, double reducedThickness, double height, const std::string &material, const std::string &name="TOPSideRail")
Full constructor.
float m_thickness
thickness
const std::string & getMaterial() const
Returns material name.
double getReducedThickness() const
Returns thickness at prism enclosure.
bool isConsistent() const override
Check for consistency of data members.
static double s_unit
conversion unit for length
Definition: TOPGeoBase.h:86
virtual void print(const std::string &title="QBB side rails geometry parameters") const override
Print the content of the class.
Abstract base class for different kinds of events.