ATLAS Offline Software
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGT1CALO_JEMTOBROI_H
5 #define TRIGT1CALO_JEMTOBROI_H
6 
7 #include <stdint.h>
8 
9 namespace LVL1 {
10 
19 class JEMTobRoI {
20 
21  public:
22 
23  JEMTobRoI();
25  JEMTobRoI(int crate, int jem, int frame, int location, int energyLarge,
26  int energySmall);
27 
28  ~JEMTobRoI();
29 
31  int crate() const;
33  int jem() const;
35  int frame() const;
37  int location() const;
39  int energyLarge() const;
41  int energySmall() const;
42 
44  uint32_t roiWord() const;
47 
48  private:
49 
51  static const int s_wordIdVal = 0;
52  // Data locations
53  static const int s_wordIdBit = 29;
54  static const int s_crateBit = 28;
55  static const int s_jemBit = 24;
56  static const int s_frameBit = 21;
57  static const int s_locationBit = 19;
58  static const int s_energySmallBit = 10;
59  static const int s_energyLargeBit = 0;
60  // Data masks
61  static const int s_wordIdMask = 0x7;
62  static const int s_crateMask = 0x1;
63  static const int s_jemMask = 0xf;
64  static const int s_frameMask = 0x7;
65  static const int s_locationMask = 0x3;
66  static const int s_energySmallMask = 0x1ff;
67  static const int s_energyLargeMask = 0x3ff;
68 
71 
72 };
73 
74 inline int JEMTobRoI::crate() const
75 {
76  return (m_roiWord >> s_crateBit) & s_crateMask;
77 }
78 
79 inline int JEMTobRoI::jem() const
80 {
81  return (m_roiWord >> s_jemBit) & s_jemMask;
82 }
83 
84 inline int JEMTobRoI::frame() const
85 {
86  return (m_roiWord >> s_frameBit) & s_frameMask;
87 }
88 
89 inline int JEMTobRoI::location() const
90 {
92 }
93 
94 inline int JEMTobRoI::energyLarge() const
95 {
97 }
98 
99 inline int JEMTobRoI::energySmall() const
100 {
102 }
103 
105 {
106  return m_roiWord;
107 }
108 
109 } // end namespace
110 
111 #ifndef JEMTobRoI_ClassDEF_H
113 #endif
114 
115 #endif
LVL1::JEMTobRoI::s_jemMask
static const int s_jemMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:63
LVL1::JEMTobRoI::location
int location() const
Return location (RoI local coords) (0-3)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:89
LVL1::JEMTobRoI::s_energyLargeBit
static const int s_energyLargeBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:59
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
LVL1::JEMTobRoI::~JEMTobRoI
~JEMTobRoI()
Definition: JEMTobRoI.cxx:49
LVL1::JEMTobRoI::frame
int frame() const
Return RoI frame number (0-7)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:84
LVL1::JEMTobRoI::setRoiWord
bool setRoiWord(uint32_t roiWord)
Set RoI word with ID check.
Definition: JEMTobRoI.cxx:55
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::JEMTobRoI::s_crateBit
static const int s_crateBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:54
LVL1::JEMTobRoI::s_wordIdBit
static const int s_wordIdBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:53
LVL1::JEMTobRoI::s_frameBit
static const int s_frameBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:56
LVL1::JEMTobRoI::roiWord
uint32_t roiWord() const
Return packed RoI word.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:104
LVL1::JEMTobRoI::s_energySmallMask
static const int s_energySmallMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:66
LVL1::JEMTobRoI::s_crateMask
static const int s_crateMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:62
JEMTobRoI_ClassDEF.h
LVL1::JEMTobRoI::s_energyLargeMask
static const int s_energyLargeMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:67
LVL1::JEMTobRoI::energySmall
int energySmall() const
Return energy small window size.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:99
LVL1::JEMTobRoI
JEM RoI data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:19
LVL1::JEMTobRoI::s_jemBit
static const int s_jemBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:55
LVL1::JEMTobRoI::m_roiWord
uint32_t m_roiWord
RoI word.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:70
LVL1::JEMTobRoI::s_frameMask
static const int s_frameMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:64
LVL1::JEMTobRoI::s_locationBit
static const int s_locationBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:57
LVL1::JEMTobRoI::s_wordIdMask
static const int s_wordIdMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:61
LVL1::JEMTobRoI::s_wordIdVal
static const int s_wordIdVal
RoI word ID.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:51
LVL1::JEMTobRoI::jem
int jem() const
Return JEM number (0-15)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:79
LVL1::JEMTobRoI::energyLarge
int energyLarge() const
Return energy large window size.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:94
LVL1::JEMTobRoI::crate
int crate() const
Return crate number (0-1)
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:74
LVL1::JEMTobRoI::JEMTobRoI
JEMTobRoI()
Definition: JEMTobRoI.cxx:29
LVL1::JEMTobRoI::s_locationMask
static const int s_locationMask
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:65
LVL1::JEMTobRoI::s_energySmallBit
static const int s_energySmallBit
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/JEMTobRoI.h:58