Belle II Software development
ARICHGeoBase.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 <TObject.h>
12#include <geometry/dbobjects/GeoOpticalSurface.h>
13#include <string>
14
15namespace Belle2 {
20
24 class ARICHGeoBase: public TObject {
25 public:
26
31
36 explicit ARICHGeoBase(const std::string& name): m_name(name)
37 {}
38
43 void setName(const std::string& name) {m_name = name;}
44
49 const std::string& getName() const {return m_name;}
50
55 virtual bool isConsistent() const {return false;}
56
61 virtual void print(const std::string& title) const;
62
67 virtual void printSurface(const GeoOpticalSurface& surface) const;
68
78 virtual void printPlacement(double x, double y, double z, double rx, double ry, double rz) const;
79
80 protected:
81
82 std::string m_name;
83 static double s_unit;
84 static std::string s_unitName;
85
87
88 };
89
91} // end namespace Belle2
ARICHGeoBase()
Default constructor.
static double s_unit
conversion unit for length
const std::string & getName() const
Returns object name.
ARICHGeoBase(const std::string &name)
Constructor with name.
virtual void printPlacement(double x, double y, double z, double rx, double ry, double rz) const
Print volume positioning parameters.
virtual void printSurface(const GeoOpticalSurface &surface) const
Print the content of optical surface.
virtual bool isConsistent() const
Check for consistency of data members.
void setName(const std::string &name)
Sets object name.
ClassDef(ARICHGeoBase, 2)
ClassDef.
virtual void print(const std::string &title) const
Print the content of the class.
std::string m_name
geometry object name
static std::string s_unitName
conversion unit name
Represent an optical finish of a surface.
Abstract base class for different kinds of events.