Belle II Software  release-05-02-19
CDCChannelMap.h
1 /**************************************************************************
2 * BASF2 (Belle Analysis Framework 2) *
3 * Copyright(C) 2010 - Belle II Collaboration *
4 * *
5 * Author: The Belle II Collaboration *
6 * Contributors: Makoto Uchida *
7 * *
8 * This software is provided "as is" without any warranty. *
9 **************************************************************************/
10 #pragma once
11 
12 #include <TObject.h>
13 #include <cdc/dataobjects/WireID.h>
14 
15 namespace Belle2 {
24  class CDCChannelMap: public TObject {
25  public:
26 
30  CDCChannelMap():
31  m_wire(65535), m_board(0), m_channel(0)
32  {}
33 
37  CDCChannelMap(unsigned short slayer, unsigned short layer,
38  unsigned short wire,
39  unsigned short board, unsigned short channel):
40  m_wire(WireID(slayer, layer, wire).getEWire()),
41  m_board(board), m_channel(channel)
42  {
43 
44  }
45 
49  unsigned getBoardID() const {return m_board;}
50 
54  unsigned getBoardChannel() const {return m_channel;}
55 
59  unsigned short getISuperLayer() const
60  {
61  return (m_wire / 4096);
62  }
63 
67  unsigned short getILayer() const
68  {
69  return ((m_wire % 4096) / 512);
70  }
71 
75  unsigned short getIWire() const
76  {
77  return (m_wire % 512);
78  }
79 
80  private:
81  unsigned short m_wire;
82  unsigned short m_board;
83  unsigned short m_channel;
87  };
88 
90 } // end namespace Belle2
Belle2::CDCChannelMap::CDCChannelMap
CDCChannelMap()
Default constructor.
Definition: CDCChannelMap.h:38
Belle2::WireID
Class to identify a wire inside the CDC.
Definition: WireID.h:44
Belle2::CDCChannelMap::m_board
unsigned short m_board
Board ID.
Definition: CDCChannelMap.h:90
Belle2::CDCChannelMap
Database object of CDC channel map.
Definition: CDCChannelMap.h:32
Belle2::CDCChannelMap::getBoardID
unsigned getBoardID() const
Get Board ID.
Definition: CDCChannelMap.h:57
Belle2::CDCChannelMap::m_channel
unsigned short m_channel
Channel ID.
Definition: CDCChannelMap.h:91
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::CDCChannelMap::getIWire
unsigned short getIWire() const
Get wire ID.
Definition: CDCChannelMap.h:83
Belle2::CDCChannelMap::ClassDef
ClassDef(CDCChannelMap, 2)
ClassDef.
Belle2::CDCChannelMap::getISuperLayer
unsigned short getISuperLayer() const
Get super layer ID.
Definition: CDCChannelMap.h:67
Belle2::CDCChannelMap::m_wire
unsigned short m_wire
Wire ID.
Definition: CDCChannelMap.h:89
Belle2::CDCChannelMap::getBoardChannel
unsigned getBoardChannel() const
Get channel.
Definition: CDCChannelMap.h:62
Belle2::CDCChannelMap::getILayer
unsigned short getILayer() const
Get layer ID.
Definition: CDCChannelMap.h:75