Belle II Software  release-08-01-10
KLMElectronicsMap.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/KLMElectronicsChannel.h>
14 
15 /* C++ headers. */
16 #include <map>
17 
18 namespace Belle2 {
27  class KLMElectronicsMap: public TObject {
28 
29  public:
30 
35 
40 
47  KLMElectronicsChannel* electronicsChannel) const;
48 
55  KLMChannelNumber detectorChannel) const;
56 
66  void addChannel(KLMChannelNumber detectorChannel, int copper, int slot,
67  int lane, int axis, int channel);
68 
69  private:
70 
72  std::map<KLMChannelNumber, KLMElectronicsChannel> m_MapDetectorElectronics;
73 
75  std::map<KLMElectronicsChannel, KLMChannelNumber> m_MapElectronicsDetector;
76 
79 
80  };
81 
83 }
BKLM electronics channel.
BKLM electronics map.
ClassDef(Belle2::KLMElectronicsMap, 1)
Class version.
const KLMElectronicsChannel * getElectronicsChannel(KLMChannelNumber detectorChannel) const
Get electronics channel by detector channel.
std::map< KLMChannelNumber, KLMElectronicsChannel > m_MapDetectorElectronics
Detector channel - electronics channel map.
const KLMChannelNumber * getDetectorChannel(KLMElectronicsChannel *electronicsChannel) const
Get detector channel by electronics channel.
void addChannel(KLMChannelNumber detectorChannel, int copper, int slot, int lane, int axis, int channel)
Add channel.
std::map< KLMElectronicsChannel, KLMChannelNumber > m_MapElectronicsDetector
Electronics channel - detector channel map.
uint16_t KLMChannelNumber
Channel number.
Abstract base class for different kinds of events.