Belle II Software  release-05-01-25
ARICHAeroTilesAlignment.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2016 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Luka Santelj *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <arich/dbobjects/ARICHGeoBase.h>
14 #include <arich/dbobjects/ARICHPositionElement.h>
15 
16 namespace Belle2 {
25  class ARICHAeroTilesAlignment: public ARICHGeoBase {
26  public:
27 
32  {}
33 
39  void setAlignmentElement(int id, const ARICHPositionElement& pars)
40  {
41  m_elements[id - 1] = pars;
42  }
43 
48  const ARICHPositionElement& getAlignmentElement(int mirrorID) const
49  {
50  return m_elements[mirrorID - 1];
51  }
52 
56  void print(const std::string& title = "Aerogel tilesAlignment Parameters") const
57  {
58  ARICHGeoBase::print(title);
59  int i = 1;
60  for (auto el : m_elements) { std::cout << "Aerogel tile slot " << i++ << std::endl; el.print(); std::cout << std::endl;}
61  }
62 
63 
64  private:
65 
66  std::vector<ARICHPositionElement> m_elements{std::vector<ARICHPositionElement>(124)};
69  };
70 
72 } // end namespace Belle2
Belle2::ARICHPositionElement
Position element for ARICH.
Definition: ARICHPositionElement.h:36
Belle2::ARICHAeroTilesAlignment::print
void print(const std::string &title="Aerogel tilesAlignment Parameters") const
Prints parameters of aerogel tiles alignment.
Definition: ARICHAeroTilesAlignment.h:64
Belle2::ARICHGeoBase::print
virtual void print(const std::string &title) const
Print the content of the class.
Definition: ARICHGeoBase.cc:22
Belle2::ARICHAeroTilesAlignment::getAlignmentElement
const ARICHPositionElement & getAlignmentElement(int mirrorID) const
Returns alignment parameters for given aerogel tile.
Definition: ARICHAeroTilesAlignment.h:56
Belle2::ARICHAeroTilesAlignment
Alignment parameters for aerogel tiles.
Definition: ARICHAeroTilesAlignment.h:33
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHAeroTilesAlignment::m_elements
std::vector< ARICHPositionElement > m_elements
vector of position elements for alignment
Definition: ARICHAeroTilesAlignment.h:74
Belle2::ARICHAeroTilesAlignment::ClassDef
ClassDef(ARICHAeroTilesAlignment, 1)
ClassDef.
Belle2::ARICHAeroTilesAlignment::ARICHAeroTilesAlignment
ARICHAeroTilesAlignment()
Default constructor.
Definition: ARICHAeroTilesAlignment.h:39
Belle2::ARICHAeroTilesAlignment::setAlignmentElement
void setAlignmentElement(int id, const ARICHPositionElement &pars)
Sets Alignment parameters (element) for aerogel tile.
Definition: ARICHAeroTilesAlignment.h:47