ATLAS Offline Software
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 //***************************************************************************
5 
6  #ifndef CMXJetHits_H
7  #define CMXJetHits_H
8 
9  #include "AthenaKernel/CLASS_DEF.h"
10 
11 
12  #ifndef TRIGGERSPACE
14  #else
15  #include "Coordinate.h"
16  #endif
17  namespace LVL1 {
18 
23  class CMXJetHits {
24  public:
25 
26  enum Sources {
36  MAX_SOURCE = 15
37  };
38 
40  CMXJetHits() = default;
41  CMXJetHits(int crate, int source);
42  CMXJetHits(int crate, int source,
43  const std::vector<unsigned int>& hits0,
44  const std::vector<unsigned int>& hits1,
45  const std::vector<int>& error0,
46  const std::vector<int>& error1,
47  int peak);
48 
49 
51  void setPeak(int peak);
53  void addHits(const std::vector<unsigned int>& hits0,
54  const std::vector<unsigned int>& hits1,
55  const std::vector<int>& error0,
56  const std::vector<int>& error1);
57 
59  int crate() const;
60  int source() const;
62  unsigned int hits0() const;
63  unsigned int hits1() const;
64  int error0() const;
65  int error1() const;
67  const std::vector<unsigned int>& hitsVec0() const;
68  const std::vector<unsigned int>& hitsVec1() const;
69  const std::vector<int>& errorVec0() const;
70  const std::vector<int>& errorVec1() const;
71  int peak() const;
72 
74  private:
75  int m_crate{};
76  int m_source{};
77  int m_peak{};
78  std::vector<unsigned int> m_hits0{0};
79  std::vector<unsigned int> m_hits1{0};
80  std::vector<int> m_error0{0};
81  std::vector<int> m_error1{0};
82 
83  };
84 
86  inline int CMXJetHits::crate() const{
87  return m_crate;
88  }
89 
91  inline int CMXJetHits::source() const{
92  return m_source;
93  }
94 
96  inline unsigned int CMXJetHits::hits0() const{
97  return m_peak < (int)m_hits0.size()? m_hits0[m_peak]: 0;
98  }
99 
101  inline unsigned int CMXJetHits::hits1() const{
102  return m_peak < (int)m_hits1.size()? m_hits1[m_peak]: 0;
103  }
104 
106  inline int CMXJetHits::error0() const{
107  return m_peak < (int)m_error0.size()? m_error0[m_peak]: 0;
108  }
109 
111  inline int CMXJetHits::error1() const{
112  return m_peak < (int)m_error1.size()? m_error1[m_peak]: 0;
113  }
114 
116  inline const std::vector<unsigned int>& CMXJetHits::hitsVec0() const{
117  return m_hits0;
118  }
119 
121  inline const std::vector<unsigned int>& CMXJetHits::hitsVec1() const{
122  return m_hits1;
123  }
124 
126  inline const std::vector<int>& CMXJetHits::errorVec0() const{
127  return m_error0;
128  }
129 
131  inline const std::vector<int>& CMXJetHits::errorVec1() const{
132  return m_error1;
133  }
134 
136  inline void CMXJetHits::addHits(const std::vector<unsigned int>& hits0,
137  const std::vector<unsigned int>& hits1,
138  const std::vector<int>& error0,
139  const std::vector<int>& error1) {
140  m_hits0 = hits0;
141  m_hits1 = hits1;
142  m_error0 = error0;
143  m_error1 = error1;
144  }
145 
147  inline void CMXJetHits::setPeak(int peak) {
148  m_peak = peak;
149  }
150 
152  inline int CMXJetHits::peak() const{
153  return m_peak;
154  }
155 
156 } // end of namespace
157 
158 #ifndef CMXJetHits_ClassDEF_H
160 #endif
161 
162 #endif
LVL1::CMXJetHits::REMOTE_MAIN
@ REMOTE_MAIN
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:27
LVL1::CMXJetHits::LOCAL_FORWARD
@ LOCAL_FORWARD
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:31
LVL1::CMXJetHits::TOTAL_FORWARD
@ TOTAL_FORWARD
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:32
LVL1::CMXJetHits::m_peak
int m_peak
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:77
LVL1::CMXJetHits::TOTAL_MAIN
@ TOTAL_MAIN
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:29
LVL1::CMXJetHits::hits1
unsigned int hits1() const
returns hits1 for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:101
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::CMXJetHits::hitsVec1
const std::vector< unsigned int > & hitsVec1() const
returns hits1
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:121
LVL1::CMXJetHits::REMOTE_FORWARD
@ REMOTE_FORWARD
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:30
LVL1::CMXJetHits::error1
int error1() const
returns error1 for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:111
CMXJetHits_ClassDEF.h
LVL1::CMXJetHits::hitsVec0
const std::vector< unsigned int > & hitsVec0() const
For multi-slice readout.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:116
LVL1::CMXJetHits::peak
int peak() const
returns peak slice number
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:152
LVL1::CMXJetHits::m_error0
std::vector< int > m_error0
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:80
LVL1::CMXJetHits::MAX_SOURCE
@ MAX_SOURCE
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:36
LVL1::CMXJetHits::Sources
Sources
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:26
LVL1::CMXJetHits::setPeak
void setPeak(int peak)
For multi-slice readout, need to indicate position of triggered BC.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:147
LVL1::CMXJetHits::m_hits1
std::vector< unsigned int > m_hits1
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:79
LVL1::CMXJetHits::CMXJetHits
CMXJetHits()=default
Constructors.
LVL1::CMXJetHits::m_source
int m_source
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:76
LVL1::CMXJetHits::m_crate
int m_crate
Internal data.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:75
LVL1::CMXJetHits::errorVec1
const std::vector< int > & errorVec1() const
returns error1
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:131
Coordinate.h
Coordinate policies.
LVL1::CMXJetHits::source
int source() const
returns source of data
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:91
LVL1::CMXJetHits::errorVec0
const std::vector< int > & errorVec0() const
returns error0
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:126
Coordinate.h
LVL1::CMXJetHits::error0
int error0() const
returns error0 for peak sample
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:106
LVL1::CMXJetHits::addHits
void addHits(const std::vector< unsigned int > &hits0, const std::vector< unsigned int > &hits1, const std::vector< int > &error0, const std::vector< int > &error1)
Add data to existing object.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:136
LVL1::CMXJetHits::TOPO_OCCUPANCY_COUNTS
@ TOPO_OCCUPANCY_COUNTS
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:35
LVL1::CMXJetHits::m_hits0
std::vector< unsigned int > m_hits0
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:78
LVL1::CMXJetHits::TOPO_OCCUPANCY_MAP
@ TOPO_OCCUPANCY_MAP
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:34
python.CaloAddPedShiftConfig.int
int
Definition: CaloAddPedShiftConfig.py:45
LVL1::CMXJetHits::hits0
unsigned int hits0() const
For triggered time slice.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:96
LVL1::CMXJetHits::m_error1
std::vector< int > m_error1
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:81
LVL1::CMXJetHits::LOCAL_MAIN
@ LOCAL_MAIN
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:28
LVL1::CMXJetHits::crate
int crate() const
Data accessors.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:86
CLASS_DEF.h
macros to associate a CLID to a type
LVL1::CMXJetHits::TOPO_CHECKSUM
@ TOPO_CHECKSUM
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:33
LVL1::CMXJetHits
Summary of JEP (Jet) hits produced by the merger modules.
Definition: Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXJetHits.h:23