12#include <klm/dataobjects/bklm/BKLMElementNumbers.h>
13#include <klm/dataobjects/eklm/EKLMElementNumbers.h>
60 int plane,
int strip)
const;
136 int* layer,
int* plane,
int* strip)
const;
147 int layer,
int plane)
const;
281 std::string
getSectorDAQName(
int subdetector,
int section,
int sector)
const;
static constexpr int getMaximalLayerGlobalNumber()
Get maximal layer global number.
static constexpr int getTotalChannelNumber()
Get total number of channels.
static constexpr int getMaximalLayerNumber()
Get maximal layer number (1-based).
static constexpr int getMaximalPlaneNumber()
Get maximal plane number (0-based).
static constexpr int getTotalChannelNumber()
Get total number of channels.
static constexpr int getMaximalLayerNumber()
Get maximal layer number.
static constexpr int getMaximalSectorGlobalNumber()
Get maximal sector global number.
static constexpr int getMaximalPlaneNumber()
Get maximal plane number.
KLMSectorNumber sectorNumberEKLM(int section, int sector) const
Get sector number for EKLM.
KLMModuleNumber moduleNumberByChannel(KLMChannelNumber channel) const
Get module number by channel number.
static int getExtrapolationLayer(int subdetector, int layer)
Get extrapolation layer number (BKLM - from 1 to 15, EKLM - from 16 to 29).
static constexpr uint16_t m_BKLMOffset
BKLM offset.
KLMChannelNumber channelNumber(int subdetector, int section, int sector, int layer, int plane, int strip) const
Get channel number.
static KLMSectorNumber sectorNumberBKLM(int section, int sector)
Get sector number for BKLM.
const EKLMElementNumbers * m_eklmElementNumbers
EKLM element numbers.
static KLMChannelNumber channelNumberBKLM(int section, int sector, int layer, int plane, int strip)
Get channel number for BKLM.
static const KLMElementNumbers & Instance()
Instantiation.
static constexpr int getTotalChannelNumber()
Get total number of channels.
int localChannelNumberEKLM(KLMChannelNumber channel) const
Get local EKLM channel number.
KLMPlaneNumber planeNumber(int subdetector, int section, int sector, int layer, int plane) const
Get plane number.
static constexpr int getTotalModuleNumber()
Get total number of modules.
static KLMModuleNumber moduleNumberBKLM(int section, int sector, int layer)
Get module number for BKLM.
KLMPlaneNumber planeNumberEKLM(int section, int sector, int layer, int plane) const
Get channel number for EKLM.
Subdetector
Subdetector constants.
static KLMPlaneNumber planeNumberBKLM(int section, int sector, int layer, int plane)
Get plane number for BKLM.
bool isEKLMChannel(KLMChannelNumber channel) const
Determine whether a given channel is in EKLM.
void channelNumberToElementNumbers(KLMChannelNumber channel, int *subdetector, int *section, int *sector, int *layer, int *plane, int *strip) const
Get element numbers by channel number.
unsigned int getNChannelsModule(KLMModuleNumber module) const
Get number of channels in module.
void moduleNumberToElementNumbers(KLMModuleNumber module, int *subdetector, int *section, int *sector, int *layer) const
Get element numbers by module number.
~KLMElementNumbers()
Destructor.
KLMModuleNumber moduleNumber(int subdetector, int section, int sector, int layer) const
Get module number.
std::string getSectorDAQName(int subdetector, int section, int sector) const
Get DAQ name for a given sector.
static constexpr int getMaximalExtrapolationLayer()
Get maximal extrapolation layer.
KLMModuleNumber moduleNumberEKLM(int section, int sector, int layer) const
Get module number for EKLM.
bool isBKLMChannel(KLMChannelNumber channel) const
Determine whether a given channel is in BKLM.
static constexpr int getMaximalPlaneNumber()
Get maximal plane number.
static int getMinimalPlaneNumber(int subdetector)
Get minimal plane number.
int localChannelNumberBKLM(KLMChannelNumber channel) const
Get local BKLM channel number.
KLMElementNumbers()
Constructor.
KLMChannelNumber channelNumberEKLM(int section, int sector, int layer, int plane, int strip) const
Get channel number for EKLM.
uint16_t KLMSectorNumber
Sector number.
uint16_t KLMChannelNumber
Channel number.
uint16_t KLMModuleNumber
Module number.
uint16_t KLMPlaneNumber
Plane number.
Abstract base class for different kinds of events.