ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
L1CaloFEX
L1CaloFEXByteStream
src
bytestreamDecoder
src
L1CaloRdoRodInfo.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
#include "
bytestreamDecoder/L1CaloRdoRodInfo.h
"
5
6
#include <iostream>
7
8
// Class mainly intended to hold information from the ROD fragment header.
9
// It also contains error codes from the L1Calo ROD fragment status block
10
// for the legacy Run 1 and Run 2 system.
11
// Many of these are no longer relevant for Run 3 FEX/Topo ROD fragments.
12
// But it still seems worth having a common ROD info class and other error
13
// bits from these might be added?
14
15
L1CaloRdoRodInfo::L1CaloRdoRodInfo
(
int
system,
int
rod,
int
run
,
int
bcnum,
int
triggerType,
int
detType,
int
version )
16
:
m_system
( system )
17
,
m_rod
( rod )
18
,
m_run
(
run
)
19
,
m_bcnum
( bcnum )
20
,
m_triggerType
( triggerType )
21
,
m_detType
( detType )
22
,
m_lvl1
( 0 )
23
,
m_size
( 0 )
24
,
m_status1
( 0 )
25
,
m_status2
( 0 )
26
,
m_version
( version )
27
,
m_status
( 16, 0 )
28
{
29
}
30
31
std::string
32
L1CaloRdoRodInfo::getType
( )
const
33
{
34
return
std::string(
"RodInfo"
);
35
}
36
37
void
38
L1CaloRdoRodInfo::info
( )
const
39
{
40
std::cout <<
"RDO Object Type: "
<<
getType
();
41
std::cout << std::hex;
42
std::cout <<
" System Id: "
<<
getSystemId
();
43
std::cout <<
" ROD Id: "
<<
getRodId
() << std::endl <<
" "
;
44
std::cout <<
" Run Num: "
<<
getRunNumber
();
45
std::cout <<
" Level-1 Id: "
<<
getLevel1Id
();
46
std::cout <<
" Bc Number: "
<<
getBcNumber
();
47
std::cout <<
" Trig Type: "
<<
getTriggerType
();
48
std::cout <<
" Step Number: "
<<
getStepNumber
();
49
std::cout <<
" Data Size: "
<<
getDataSize
();
50
std::cout <<
" Minor Ver: "
<<
getMinorVersion
();
51
std::cout << std::endl;
52
std::cout << std::dec;
53
}
54
55
int
56
L1CaloRdoRodInfo::getMinorVersion
( )
const
57
{
58
return
(
m_version
& 0xffff );
59
}
60
61
bool
62
L1CaloRdoRodInfo::getIsRun1
( )
const
63
{
64
return
( (
unsigned
int
)this->
getMinorVersion
() <
s_minRun2Version
);
65
}
66
67
bool
68
L1CaloRdoRodInfo::getIsRun2
( )
const
69
{
70
return
( this->
getIsRun3
() || (
unsigned
int
)this->
getMinorVersion
() >=
s_minRun2Version
);
71
}
72
73
bool
74
L1CaloRdoRodInfo::getIsRun3
( )
const
75
{
76
// Run3 fragments have some of bits 12-15 set.
77
return
( ( this->
getRodId
() & 0xf000 ) != 0 );
78
}
79
80
int
81
L1CaloRdoRodInfo::getSystemId
( )
const
82
{
83
return
m_system
;
84
}
85
86
int
87
L1CaloRdoRodInfo::getRodId
( )
const
88
{
89
return
m_rod
;
90
}
91
92
int
93
L1CaloRdoRodInfo::getSourceId
( )
const
94
{
95
return
( (
m_system
<<16) |
m_rod
);
96
}
97
98
int
99
L1CaloRdoRodInfo::getRunNumber
( )
const
100
{
101
return
m_run
;
102
}
103
104
int
105
L1CaloRdoRodInfo::getBcNumber
( )
const
106
{
107
return
m_bcnum
;
108
}
109
110
int
111
L1CaloRdoRodInfo::getTriggerType
( )
const
112
{
113
return
m_triggerType
;
114
}
115
116
int
117
L1CaloRdoRodInfo::getLevel1Id
( )
const
118
{
119
return
m_lvl1
;
120
}
121
122
int
123
L1CaloRdoRodInfo::getDataSize
( )
const
124
{
125
return
m_size
;
126
}
127
128
int
129
L1CaloRdoRodInfo::getStepNumber
( )
const
130
{
131
return
( (
m_detType
>>4) & 0xfff);
132
}
133
134
int
135
L1CaloRdoRodInfo::getOrbitCount
( )
const
136
{
137
return
( (
m_detType
>>16) & 0xffff);
138
}
139
140
bool
141
L1CaloRdoRodInfo::getBcnumMismatch
( )
const
142
{
143
return
(
m_status1
& 0x1 );
144
}
145
146
bool
147
L1CaloRdoRodInfo::getGlinkTimeout
( )
const
148
{
149
return
(
m_status1
& 0x4 );
150
}
151
152
bool
153
L1CaloRdoRodInfo::getDataTransportError
( )
const
154
{
155
return
(
m_status1
& 0x8 );
156
}
157
158
bool
159
L1CaloRdoRodInfo::getRodOverflow
( )
const
160
{
161
return
(
m_status1
& 0x10 );
162
}
163
164
bool
165
L1CaloRdoRodInfo::getModuleLinkError
( )
const
166
{
167
return
(
m_status1
& 0x10000 );
168
}
169
170
bool
171
L1CaloRdoRodInfo::getCmmParityError
( )
const
172
{
173
return
(
m_status1
& 0x20000 );
174
}
175
176
bool
177
L1CaloRdoRodInfo::getGlinkError
( )
const
178
{
179
return
(
m_status1
& 0x40000 );
180
}
181
182
bool
183
L1CaloRdoRodInfo::getRoiOverflow
( )
const
184
{
185
return
(
m_status2
& 0x2 );
186
}
187
188
bool
189
L1CaloRdoRodInfo::getTriggerTypeTimeout
( )
const
190
{
191
return
(
m_status2
& 0x10000 );
192
}
193
194
int
195
L1CaloRdoRodInfo::getModuleStatus
(
const
int
module )
const
196
{
197
if
( (module < 0) || (module > 15) )
198
return
0;
199
return
m_status
[module];
200
}
201
202
void
203
L1CaloRdoRodInfo::setLvl1Id
(
int
lvl1 )
204
{
205
m_lvl1
= lvl1;
206
}
207
208
void
209
L1CaloRdoRodInfo::setSize
(
int
size
)
210
{
211
m_size
=
size
;
212
}
213
214
void
215
L1CaloRdoRodInfo::setStatus1
(
int
status )
216
{
217
m_status1
= status;
218
}
219
220
void
221
L1CaloRdoRodInfo::setStatus2
(
int
status )
222
{
223
m_status2
= status;
224
}
225
226
void
227
L1CaloRdoRodInfo::setModuleStatus
(
int
module,
int
status )
228
{
229
m_status
[module] = status;
230
}
231
L1CaloRdoRodInfo.h
size
size_t size() const
Number of registered mappings.
L1CaloRdoRodInfo::getCmmParityError
bool getCmmParityError() const
Definition
L1CaloRdoRodInfo.cxx:171
L1CaloRdoRodInfo::getModuleStatus
int getModuleStatus(const int module) const
Definition
L1CaloRdoRodInfo.cxx:195
L1CaloRdoRodInfo::getRunNumber
int getRunNumber() const
Definition
L1CaloRdoRodInfo.cxx:99
L1CaloRdoRodInfo::getOrbitCount
int getOrbitCount() const
Definition
L1CaloRdoRodInfo.cxx:135
L1CaloRdoRodInfo::getRodOverflow
bool getRodOverflow() const
Definition
L1CaloRdoRodInfo.cxx:159
L1CaloRdoRodInfo::getDataTransportError
bool getDataTransportError() const
Definition
L1CaloRdoRodInfo.cxx:153
L1CaloRdoRodInfo::getSystemId
int getSystemId() const
Definition
L1CaloRdoRodInfo.cxx:81
L1CaloRdoRodInfo::setStatus2
void setStatus2(int status)
Definition
L1CaloRdoRodInfo.cxx:221
L1CaloRdoRodInfo::m_status
std::vector< int > m_status
Definition
L1CaloRdoRodInfo.h:69
L1CaloRdoRodInfo::m_bcnum
int m_bcnum
Definition
L1CaloRdoRodInfo.h:61
L1CaloRdoRodInfo::m_run
int m_run
Definition
L1CaloRdoRodInfo.h:60
L1CaloRdoRodInfo::m_triggerType
int m_triggerType
Definition
L1CaloRdoRodInfo.h:62
L1CaloRdoRodInfo::getBcnumMismatch
bool getBcnumMismatch() const
Definition
L1CaloRdoRodInfo.cxx:141
L1CaloRdoRodInfo::getRodId
int getRodId() const
Definition
L1CaloRdoRodInfo.cxx:87
L1CaloRdoRodInfo::setStatus1
void setStatus1(int status)
Definition
L1CaloRdoRodInfo.cxx:215
L1CaloRdoRodInfo::m_detType
int m_detType
Definition
L1CaloRdoRodInfo.h:63
L1CaloRdoRodInfo::getGlinkError
bool getGlinkError() const
Definition
L1CaloRdoRodInfo.cxx:177
L1CaloRdoRodInfo::getTriggerType
int getTriggerType() const
Definition
L1CaloRdoRodInfo.cxx:111
L1CaloRdoRodInfo::s_minRun2Version
static const unsigned int s_minRun2Version
Definition
L1CaloRdoRodInfo.h:55
L1CaloRdoRodInfo::m_rod
int m_rod
Definition
L1CaloRdoRodInfo.h:59
L1CaloRdoRodInfo::getIsRun2
bool getIsRun2() const
Definition
L1CaloRdoRodInfo.cxx:68
L1CaloRdoRodInfo::setSize
void setSize(int size)
Definition
L1CaloRdoRodInfo.cxx:209
L1CaloRdoRodInfo::m_system
int m_system
Definition
L1CaloRdoRodInfo.h:58
L1CaloRdoRodInfo::info
void info() const
Definition
L1CaloRdoRodInfo.cxx:38
L1CaloRdoRodInfo::getBcNumber
int getBcNumber() const
Definition
L1CaloRdoRodInfo.cxx:105
L1CaloRdoRodInfo::getStepNumber
int getStepNumber() const
Definition
L1CaloRdoRodInfo.cxx:129
L1CaloRdoRodInfo::getTriggerTypeTimeout
bool getTriggerTypeTimeout() const
Definition
L1CaloRdoRodInfo.cxx:189
L1CaloRdoRodInfo::setModuleStatus
void setModuleStatus(int module, int status)
Definition
L1CaloRdoRodInfo.cxx:227
L1CaloRdoRodInfo::setLvl1Id
void setLvl1Id(int lvl1)
Definition
L1CaloRdoRodInfo.cxx:203
L1CaloRdoRodInfo::getModuleLinkError
bool getModuleLinkError() const
Definition
L1CaloRdoRodInfo.cxx:165
L1CaloRdoRodInfo::getIsRun1
bool getIsRun1() const
Definition
L1CaloRdoRodInfo.cxx:62
L1CaloRdoRodInfo::m_version
int m_version
Definition
L1CaloRdoRodInfo.h:68
L1CaloRdoRodInfo::m_lvl1
int m_lvl1
Definition
L1CaloRdoRodInfo.h:64
L1CaloRdoRodInfo::getType
std::string getType() const
Definition
L1CaloRdoRodInfo.cxx:32
L1CaloRdoRodInfo::getGlinkTimeout
bool getGlinkTimeout() const
Definition
L1CaloRdoRodInfo.cxx:147
L1CaloRdoRodInfo::L1CaloRdoRodInfo
L1CaloRdoRodInfo(int system, int rod, int run, int bcnum, int triggerType, int detType, int version)
Definition
L1CaloRdoRodInfo.cxx:15
L1CaloRdoRodInfo::m_status1
int m_status1
Definition
L1CaloRdoRodInfo.h:66
L1CaloRdoRodInfo::getSourceId
int getSourceId() const
Definition
L1CaloRdoRodInfo.cxx:93
L1CaloRdoRodInfo::m_size
int m_size
Definition
L1CaloRdoRodInfo.h:65
L1CaloRdoRodInfo::getMinorVersion
int getMinorVersion() const
Definition
L1CaloRdoRodInfo.cxx:56
L1CaloRdoRodInfo::getLevel1Id
int getLevel1Id() const
Definition
L1CaloRdoRodInfo.cxx:117
L1CaloRdoRodInfo::getRoiOverflow
bool getRoiOverflow() const
Definition
L1CaloRdoRodInfo.cxx:183
L1CaloRdoRodInfo::m_status2
int m_status2
Definition
L1CaloRdoRodInfo.h:67
L1CaloRdoRodInfo::getIsRun3
bool getIsRun3() const
Definition
L1CaloRdoRodInfo.cxx:74
L1CaloRdoRodInfo::getDataSize
int getDataSize() const
Definition
L1CaloRdoRodInfo.cxx:123
run
int run(int argc, char *argv[])
Definition
ttree2hdf5.cxx:28
Generated on
for ATLAS Offline Software by
1.17.0