ATLAS Offline Software
Loading...
Searching...
No Matches
PadPattern.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef PADPATTERN_H
5#define PADPATTERN_H
6
7#include <array>
8#include <cstdint>
9
17
18namespace NSWL1 {
19
20 class PadPattern {
21
22 public:
23 PadPattern(const uint32_t bandid, const uint32_t phiid, const std::array<uint32_t,8>& pfebs, const std::array<uint32_t,8>& padchans, const bool isLarge);
24 ~PadPattern() = default;
25
26 const std::array<uint32_t,8>& getPfebs() const { return m_pfebs; };
27 const std::array<uint32_t,8>& getPadChannels() const { return m_padchans; };
28 uint32_t getBandid() const { return m_bandid; };
29 uint32_t getPhiid(bool flip=false) const { return flip ? m_phiid_flip : m_phiid; };
30 bool isLarge() const { return m_isLarge; };
31 bool isSmall() const { return not isLarge(); };
32 uint32_t flipPhiIdSign() const;
33
34 private:
35 const uint32_t m_bandid;
36 const uint32_t m_phiid;
37 const uint32_t m_phiid_flip;
38 const std::array<uint32_t,8> m_pfebs; // Fixed size 8, i.e. one per layer
39 const std::array<uint32_t,8> m_padchans;
40 const bool m_isLarge;
41 };
42}
43#endif
const uint32_t m_phiid
Definition PadPattern.h:36
const std::array< uint32_t, 8 > & getPadChannels() const
Definition PadPattern.h:27
const std::array< uint32_t, 8 > m_pfebs
Definition PadPattern.h:38
const std::array< uint32_t, 8 > m_padchans
Definition PadPattern.h:39
~PadPattern()=default
const bool m_isLarge
Definition PadPattern.h:40
const uint32_t m_bandid
Definition PadPattern.h:35
bool isSmall() const
Definition PadPattern.h:31
uint32_t getPhiid(bool flip=false) const
Definition PadPattern.h:29
uint32_t getBandid() const
Definition PadPattern.h:28
bool isLarge() const
Definition PadPattern.h:30
const std::array< uint32_t, 8 > & getPfebs() const
Definition PadPattern.h:26
const uint32_t m_phiid_flip
Definition PadPattern.h:37
uint32_t flipPhiIdSign() const
PadPattern(const uint32_t bandid, const uint32_t phiid, const std::array< uint32_t, 8 > &pfebs, const std::array< uint32_t, 8 > &padchans, const bool isLarge)
Definition PadPattern.cxx:8
PadEmulatorCoincidences.