Belle II Software  release-05-01-25
BKLMAlignment.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Kirill Chilikin *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 /* KLM headers. */
14 #include <klm/dbobjects/KLMAlignmentData.h>
15 
16 /* ROOT headers. */
17 #include <TObject.h>
18 
19 /* C++ headers. */
20 #include <cstdint>
21 #include <map>
22 
23 namespace Belle2 {
32  class BKLMAlignment : public TObject {
33 
34  public:
35 
39  BKLMAlignment();
40 
45 
51  void setModuleAlignment(uint16_t module, KLMAlignmentData* dat);
52 
57  const KLMAlignmentData* getModuleAlignment(uint16_t module) const;
58 
59  /* Interface to global Millepede calibration. */
60 
65  static unsigned short getGlobalUniqueID()
66  {
67  return 30;
68  }
69 
76  double getGlobalParam(unsigned short element, unsigned short param) const;
77 
84  void setGlobalParam(double value, unsigned short element,
85  unsigned short param);
89  std::vector<std::pair<unsigned short, unsigned short>> listGlobalParams();
90 
91  private:
92 
94  std::map<uint16_t, KLMAlignmentData> m_ModuleAlignment;
95 
98 
99  };
100 
102 }
Belle2::BKLMAlignment::getGlobalParam
double getGlobalParam(unsigned short element, unsigned short param) const
Get global parameter.
Definition: BKLMAlignment.cc:47
Belle2::BKLMAlignment::getGlobalUniqueID
static unsigned short getGlobalUniqueID()
Get global unique identifier.
Definition: BKLMAlignment.h:73
Belle2::BKLMAlignment::~BKLMAlignment
~BKLMAlignment()
Destructor.
Definition: BKLMAlignment.cc:20
Belle2::BKLMAlignment::setGlobalParam
void setGlobalParam(double value, unsigned short element, unsigned short param)
Set global parameter.
Definition: BKLMAlignment.cc:57
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BKLMAlignment::BKLMAlignment
BKLMAlignment()
Constructor.
Definition: BKLMAlignment.cc:16
Belle2::BKLMAlignment::m_ModuleAlignment
std::map< uint16_t, KLMAlignmentData > m_ModuleAlignment
Module alignment.
Definition: BKLMAlignment.h:102
Belle2::BKLMAlignment::setModuleAlignment
void setModuleAlignment(uint16_t module, KLMAlignmentData *dat)
Set module alignment data.
Definition: BKLMAlignment.cc:24
Belle2::BKLMAlignment
Class to store BKLM alignment data in the database.
Definition: BKLMAlignment.h:40
Belle2::BKLMAlignment::listGlobalParams
std::vector< std::pair< unsigned short, unsigned short > > listGlobalParams()
Get a list of stored global parameters.
Definition: BKLMAlignment.cc:80
Belle2::KLMAlignmentData
KLM Alignment data.
Definition: KLMAlignmentData.h:33
Belle2::BKLMAlignment::getModuleAlignment
const KLMAlignmentData * getModuleAlignment(uint16_t module) const
Get module alignment data.
Definition: BKLMAlignment.cc:37
Belle2::BKLMAlignment::ClassDef
ClassDef(Belle2::BKLMAlignment, 3)
Class version.