ATLAS Offline Software
Trigger
TrigT1
TrigT1CaloEvent
TrigT1CaloEvent
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.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_RODHEADER_H
5
#define TRIGT1CALO_RODHEADER_H
6
7
#include <stdint.h>
8
#include <vector>
9
10
namespace
LVL1
{
11
17
class
RODHeader
{
18
19
public
:
20
21
RODHeader
();
22
RODHeader
(
uint32_t
version
,
uint32_t
sourceId,
uint32_t
run
,
23
uint32_t
lvl1Id,
uint32_t
bcId
,
uint32_t
trigType,
24
uint32_t
detType,
const
std::vector<uint32_t>&
statusWords
,
25
uint32_t
nData);
26
27
~RODHeader
();
28
29
// Header data
30
int
version
()
const
;
31
int
majorVersion
()
const
;
32
int
minorVersion
()
const
;
33
int
sourceID
()
const
;
34
int
subDetectorID
()
const
;
35
int
moduleID
()
const
;
36
int
crate
()
const
;
37
int
sLink
()
const
;
38
int
dataType
()
const
;
39
int
run
()
const
;
40
int
runType
()
const
;
41
int
runNumber
()
const
;
42
int
extendedL1ID
()
const
;
43
int
ecrID
()
const
;
44
int
l1ID
()
const
;
45
int
bunchCrossing
()
const
;
46
int
l1TriggerType
()
const
;
47
int
detEventType
()
const
;
48
int
orbitCount
()
const
;
49
int
stepNumber
()
const
;
50
int
stepType
()
const
;
51
52
// Status bits - word 1
53
bool
bcnMismatch
()
const
;
54
bool
gLinkTimeout
()
const
;
55
bool
dataTransportError
()
const
;
56
bool
rodFifoOverflow
()
const
;
57
bool
lvdsLinkError
()
const
;
58
bool
cmmParityError
()
const
;
59
bool
gLinkError
()
const
;
60
// Status bits - word 2
61
bool
limitedRoISet
()
const
;
62
bool
triggerTypeTimeout
()
const
;
63
64
// Status words
65
const
std::vector<uint32_t>&
statusWords
()
const
;
66
67
// Payload
68
int
payloadSize
()
const
;
69
70
private
:
71
72
uint32_t
m_version
;
73
uint32_t
m_sourceId
;
74
uint32_t
m_run
;
75
uint32_t
m_lvl1Id
;
76
uint32_t
m_bcId
;
77
uint32_t
m_trigType
;
78
uint32_t
m_detType
;
79
std::vector<uint32_t>
m_statusWords
;
80
uint32_t
m_payloadSize
;
81
82
};
83
84
inline
int
RODHeader::version
()
const
85
{
86
return
m_version
;
87
}
88
89
inline
int
RODHeader::majorVersion
()
const
90
{
91
return
(
m_version
>> 16) & 0xffff;
92
}
93
94
inline
int
RODHeader::minorVersion
()
const
95
{
96
return
m_version
& 0xffff;
97
}
98
99
inline
int
RODHeader::sourceID
()
const
100
{
101
return
m_sourceId
;
102
}
103
104
inline
int
RODHeader::subDetectorID
()
const
105
{
106
return
(
m_sourceId
>> 16) & 0xff;
107
}
108
109
inline
int
RODHeader::moduleID
()
const
110
{
111
return
m_sourceId
& 0xffff;
112
}
113
114
inline
int
RODHeader::crate
()
const
115
{
116
return
m_sourceId
& 0xf;
117
}
118
119
inline
int
RODHeader::sLink
()
const
120
{
121
return
(
m_sourceId
>> 4) & 0x3;
122
}
123
124
inline
int
RODHeader::dataType
()
const
125
{
126
return
(
m_sourceId
>> 7) & 0x1;
127
}
128
129
inline
int
RODHeader::run
()
const
130
{
131
return
m_run
;
132
}
133
134
inline
int
RODHeader::runType
()
const
135
{
136
return
(
m_run
>> 24) & 0xff;
137
}
138
139
inline
int
RODHeader::runNumber
()
const
140
{
141
return
m_run
& 0xffffff;
142
}
143
144
inline
int
RODHeader::extendedL1ID
()
const
145
{
146
return
m_lvl1Id
;
147
}
148
149
inline
int
RODHeader::ecrID
()
const
150
{
151
return
(
m_lvl1Id
>> 24) & 0xff;
152
}
153
154
inline
int
RODHeader::l1ID
()
const
155
{
156
return
m_lvl1Id
& 0xffffff;
157
}
158
159
inline
int
RODHeader::bunchCrossing
()
const
160
{
161
return
m_bcId
;
162
}
163
164
inline
int
RODHeader::l1TriggerType
()
const
165
{
166
return
m_trigType
;
167
}
168
169
inline
int
RODHeader::detEventType
()
const
170
{
171
return
m_detType
;
172
}
173
174
inline
int
RODHeader::orbitCount
()
const
175
{
176
return
(
m_detType
>> 16) & 0xffff;
177
}
178
179
inline
int
RODHeader::stepNumber
()
const
180
{
181
return
(
m_detType
>> 4) & 0xfff;
182
}
183
184
inline
int
RODHeader::stepType
()
const
185
{
186
return
m_detType
& 0xf;
187
}
188
189
inline
bool
RODHeader::bcnMismatch
()
const
190
{
191
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x1;
192
}
193
194
inline
bool
RODHeader::gLinkTimeout
()
const
195
{
196
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x4;
197
}
198
199
inline
bool
RODHeader::dataTransportError
()
const
200
{
201
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x8;
202
}
203
204
inline
bool
RODHeader::rodFifoOverflow
()
const
205
{
206
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x10;
207
}
208
209
inline
bool
RODHeader::lvdsLinkError
()
const
210
{
211
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x10000;
212
}
213
214
inline
bool
RODHeader::cmmParityError
()
const
215
{
216
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x20000;
217
}
218
219
inline
bool
RODHeader::gLinkError
()
const
220
{
221
return
(
m_statusWords
.empty()) ? false :
m_statusWords
[0] & 0x40000;
222
}
223
224
inline
bool
RODHeader::limitedRoISet
()
const
225
{
226
return
(
m_statusWords
.size() < 2) ? false :
m_statusWords
[1] & 0x2;
227
}
228
229
inline
bool
RODHeader::triggerTypeTimeout
()
const
230
{
231
return
(
m_statusWords
.size() < 2) ? false :
m_statusWords
[1] & 0x10000;
232
}
233
234
inline
const
std::vector<uint32_t>&
RODHeader::statusWords
()
const
235
{
236
return
m_statusWords
;
237
}
238
239
inline
int
RODHeader::payloadSize
()
const
240
{
241
return
m_payloadSize
;
242
}
243
244
}
// end namespace
245
246
#ifndef RODHeader_ClassDEF_H
247
#include "
TrigT1CaloEvent/RODHeader_ClassDEF.h
"
248
#endif
249
250
#endif
LVL1::RODHeader::dataTransportError
bool dataTransportError() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:199
LVL1::RODHeader::ecrID
int ecrID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:149
LVL1::RODHeader::m_run
uint32_t m_run
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:74
LVL1::RODHeader::moduleID
int moduleID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:109
xAOD::uint32_t
setEventNumber uint32_t
Definition:
EventInfo_v1.cxx:127
LVL1::RODHeader::l1ID
int l1ID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:154
LVL1::RODHeader::m_bcId
uint32_t m_bcId
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:76
LVL1::RODHeader::statusWords
const std::vector< uint32_t > & statusWords() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:234
LVL1::RODHeader::lvdsLinkError
bool lvdsLinkError() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:209
LVL1::RODHeader::detEventType
int detEventType() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:169
LVL1::RODHeader
ROD Header data and status words.
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:17
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition:
ICMMCPHitsCnvTool.h:18
LVL1::RODHeader::m_payloadSize
uint32_t m_payloadSize
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:80
LVL1::RODHeader::runType
int runType() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:134
LVL1::RODHeader::~RODHeader
~RODHeader()
Definition:
RODHeader.cxx:26
LVL1::RODHeader::runNumber
int runNumber() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:139
LVL1::RODHeader::l1TriggerType
int l1TriggerType() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:164
LVL1::RODHeader::stepNumber
int stepNumber() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:179
LVL1::RODHeader::payloadSize
int payloadSize() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:239
LVL1::RODHeader::m_trigType
uint32_t m_trigType
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:77
LVL1::RODHeader::m_statusWords
std::vector< uint32_t > m_statusWords
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:79
LVL1::RODHeader::triggerTypeTimeout
bool triggerTypeTimeout() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:229
LVL1::RODHeader::limitedRoISet
bool limitedRoISet() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:224
LVL1::RODHeader::bunchCrossing
int bunchCrossing() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:159
run
Definition:
run.py:1
LVL1::RODHeader::minorVersion
int minorVersion() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:94
LVL1::RODHeader::m_detType
uint32_t m_detType
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:78
LVL1::RODHeader::stepType
int stepType() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:184
LVL1::RODHeader::cmmParityError
bool cmmParityError() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:214
RODHeader_ClassDEF.h
bcId
uint16_t bcId(uint32_t data)
Definition:
TgcByteStreamData.h:329
LVL1::RODHeader::m_lvl1Id
uint32_t m_lvl1Id
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:75
LVL1::RODHeader::m_version
uint32_t m_version
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:72
LVL1::RODHeader::orbitCount
int orbitCount() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:174
LVL1::RODHeader::crate
int crate() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:114
LVL1::RODHeader::gLinkError
bool gLinkError() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:219
LVL1::RODHeader::run
int run() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:129
LVL1::RODHeader::sLink
int sLink() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:119
LVL1::RODHeader::RODHeader
RODHeader()
Definition:
RODHeader.cxx:9
LVL1::RODHeader::sourceID
int sourceID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:99
LVL1::RODHeader::version
int version() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:84
LVL1::RODHeader::extendedL1ID
int extendedL1ID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:144
LVL1::RODHeader::bcnMismatch
bool bcnMismatch() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:189
LVL1::RODHeader::m_sourceId
uint32_t m_sourceId
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:73
LVL1::RODHeader::dataType
int dataType() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:124
LVL1::RODHeader::rodFifoOverflow
bool rodFifoOverflow() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:204
LVL1::RODHeader::majorVersion
int majorVersion() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:89
LVL1::RODHeader::subDetectorID
int subDetectorID() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:104
LVL1::RODHeader::gLinkTimeout
bool gLinkTimeout() const
Definition:
Trigger/TrigT1/TrigT1CaloEvent/TrigT1CaloEvent/RODHeader.h:194
Generated on Sun Jun 30 2024 21:25:28 for ATLAS Offline Software by
1.8.18