Belle II Software  release-08-01-10
ARICHMirrorAlignment.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 <arich/dbobjects/ARICHGeoBase.h>
12 #include <arich/dbobjects/ARICHPositionElement.h>
13 
14 namespace Belle2 {
24  public:
25 
30  {}
31 
33  {}
34 
40  void setAlignmentElement(int id, const ARICHPositionElement& pars)
41  {
42  m_elements[id - 1] = pars;
43  }
44 
49  const ARICHPositionElement& getAlignmentElement(int mirrorID) const
50  {
51  return m_elements[mirrorID - 1];
52  }
53 
54  void print(const std::string& title = "Mirror Alignment Parameters") const
55  {
56  ARICHGeoBase::print(title);
57  int i = 1;
58  for (auto el : m_elements) { std::cout << "Mirror plate " << i++ << std::endl; el.print(); std::cout << std::endl;}
59  }
60 
61 
62  private:
63 
64  std::vector<ARICHPositionElement> m_elements{std::vector<ARICHPositionElement>(18)};
67  };
68 
70 } // end namespace Belle2
Base class for geometry parameters.
Definition: ARICHGeoBase.h:24
virtual void print(const std::string &title) const
Print the content of the class.
Definition: ARICHGeoBase.cc:20
Mirror alignment parameters for ARICH.
ARICHMirrorAlignment()
Default constructor.
const ARICHPositionElement & getAlignmentElement(int mirrorID) const
Returns alignment parameters for given mirror plate.
void setAlignmentElement(int id, const ARICHPositionElement &pars)
Sets Alignment parameters (element) for mirror plate.
void print(const std::string &title="Mirror Alignment Parameters") const
Print the content of the class.
std::vector< ARICHPositionElement > m_elements
vector of position elements for alignment
ClassDef(ARICHMirrorAlignment, 1)
ClassDef.
Position element for ARICH.
Abstract base class for different kinds of events.