Belle II Software  release-06-00-14
BKLMAlignment.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 /* KLM headers. */
12 #include <klm/dataobjects/KLMElementNumberDefinitions.h>
13 #include <klm/dbobjects/KLMAlignmentData.h>
14 
15 /* ROOT headers. */
16 #include <TObject.h>
17 
18 /* C++ headers. */
19 #include <cstdint>
20 #include <map>
21 
22 namespace Belle2 {
31  class BKLMAlignment : public TObject {
32 
33  public:
34 
38  BKLMAlignment();
39 
44 
51 
57 
58  /* Interface to global Millepede calibration. */
59 
64  static unsigned short getGlobalUniqueID()
65  {
66  return 30;
67  }
68 
75  double getGlobalParam(unsigned short element, unsigned short param) const;
76 
83  void setGlobalParam(double value, unsigned short element,
84  unsigned short param);
88  std::vector<std::pair<unsigned short, unsigned short>> listGlobalParams();
89 
90  private:
91 
93  std::map<KLMModuleNumber, KLMAlignmentData> m_ModuleAlignment;
94 
97 
98  };
99 
101 }
Class to store BKLM alignment data in the database.
Definition: BKLMAlignment.h:31
std::vector< std::pair< unsigned short, unsigned short > > listGlobalParams()
Get a list of stored global parameters.
static unsigned short getGlobalUniqueID()
Get global unique identifier.
Definition: BKLMAlignment.h:64
double getGlobalParam(unsigned short element, unsigned short param) const
Get global parameter.
ClassDef(Belle2::BKLMAlignment, 3)
Class version.
void setModuleAlignment(KLMModuleNumber module, KLMAlignmentData *dat)
Set module alignment data.
std::map< KLMModuleNumber, KLMAlignmentData > m_ModuleAlignment
Module alignment.
Definition: BKLMAlignment.h:93
const KLMAlignmentData * getModuleAlignment(KLMModuleNumber module) const
Get module alignment data.
BKLMAlignment()
Constructor.
void setGlobalParam(double value, unsigned short element, unsigned short param)
Set global parameter.
~BKLMAlignment()
Destructor.
KLM Alignment data.
uint16_t KLMModuleNumber
Module number.
Abstract base class for different kinds of events.