ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/CMXCPTob.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 CMXCPTob_H
7 #define CMXCPTob_H
8
10
11
12 #ifndef TRIGGERSPACE
14 #else
15 #include "Coordinate.h"
16 #endif
17 namespace LVL1 {
18
22
23 class CMXCPTob {
24 public:
25
27 CMXCPTob() = default;
28 CMXCPTob(int crate, int cmx, int cpm, int chip, int loc);
29 CMXCPTob(int crate, int cmx, int cpm, int chip, int loc,
30 const std::vector<int>& energy,
31 const std::vector<int>& isolation,
32 const std::vector<int>& error,
33 const std::vector<unsigned int>& presenceMap,
34 int peak);
35
36
38 void setPeak(int peak);
40 void addTob(const std::vector<int>& energy,
41 const std::vector<int>& isolation,
42 const std::vector<int>& error,
43 const std::vector<unsigned int>& presenceMap);
44
46 int crate() const;
47 int cmx() const;
48 int cpm() const;
49 int chip() const;
50 int location() const;
52 int energy() const;
53 int isolation() const;
54 int error() const;
55 unsigned int presenceMap() const; // filled for neutral format data only
57 const std::vector<int>& energyVec() const;
58 const std::vector<int>& isolationVec() const;
59 const std::vector<int>& errorVec() const;
60 const std::vector<unsigned int>& presenceMapVec() const;
61 int peak() const;
62
64 private:
65 int m_crate{};
66 int m_cmx{};
67 int m_cpm{};
68 int m_chip{};
70 int m_peak{};
71 std::vector<int> m_energy{0};
72 std::vector<int> m_isolation{0};
73 std::vector<int> m_error{0};
74 std::vector<unsigned int> m_presenceMap{0};
75
76 };
77
79 inline int CMXCPTob::crate() const{
80 return m_crate;
81 }
82 // <<== CHECK
84 inline int CMXCPTob::cmx() const{
85 return m_cmx;
86 }
87
89 inline int CMXCPTob::cpm() const{
90 return m_cpm;
91 }
92
94 inline int CMXCPTob::chip() const{
95 return m_chip;
96 }
97
99 inline int CMXCPTob::location() const{
100 return m_location;
101 }
102
104 inline int CMXCPTob::energy() const{
105 return m_energy[m_peak];
106 }
107
109 inline int CMXCPTob::isolation() const{
110 return m_isolation[m_peak];
111 }
112
114 inline int CMXCPTob::error() const{
115 return m_error[m_peak];
116 }
117
119 inline unsigned int CMXCPTob::presenceMap() const{
120 return m_presenceMap[m_peak];
121 }
122
124 inline const std::vector<int>& CMXCPTob::energyVec() const{
125 return m_energy;
126 }
127
129 inline const std::vector<int>& CMXCPTob::isolationVec() const{
130 return m_isolation;
131 }
132
134 inline const std::vector<int>& CMXCPTob::errorVec() const{
135 return m_error;
136 }
137
139 inline const std::vector<unsigned int>& CMXCPTob::presenceMapVec() const{
140 return m_presenceMap;
141 }
142
144 inline void CMXCPTob::addTob(const std::vector<int>& energy,
145 const std::vector<int>& isolation,
146 const std::vector<int>& error,
147 const std::vector<unsigned int>& presenceMap) {
150 m_error = error;
152 }
153
155 inline void CMXCPTob::setPeak(int peak) {
156 m_peak = peak;
157 }
158
160 inline int CMXCPTob::peak() const{
161 return m_peak;
162 }
163
164} // end of namespace
165
166#ifndef CMXCPTob_ClassDEF_H
168#endif
169
170#endif
macros to associate a CLID to a type
Coordinate policies.
void setPeak(int peak)
For multi-slice readout, need to indicate position of triggered BC.
int isolation() const
returns isolation for peak sample
const std::vector< int > & isolationVec() const
returns isolation
const std::vector< int > & errorVec() const
returns error
const std::vector< int > & energyVec() const
For multi-slice readout.
int chip() const
returns chip number (3 or 4 bits?)
unsigned int presenceMap() const
returns presence map for peak sample
void addTob(const std::vector< int > &energy, const std::vector< int > &isolation, const std::vector< int > &error, const std::vector< unsigned int > &presenceMap)
Add data to existing object.
int cmx() const
returns CMX number (0/1)==(Left/Right)==(Tau/Em)
const std::vector< unsigned int > & presenceMapVec() const
returns presence maps
int location() const
returns location (3 or 2 bits?)
CMXCPTob()=default
Constructors.
int error() const
returns error for peak sample
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...