ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDMaker
TileD3PDMaker
src
TileEventFillerTool.cxx
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
* File: TileEventFillerTool.cxx
7
* Author: Marco van Woerden <mvanwoer@cern.ch>
8
* Date: September 2012
9
*
10
*/
11
25
26
// INCLUDE HEADER FILE
27
#include "
TileEventFillerTool.h
"
28
29
30
// ADD TILEMUONTRACKFILLERTOOL TO D3PD NAMESPACE
31
namespace
D3PD
{
32
//=========================================================================
33
TileEventFillerTool::TileEventFillerTool
(
const
std::string&
type
,
34
const
std::string& name,
35
const
IInterface* parent)
36
:
D3PD
::
BlockFillerTool
<
xAOD
::
EventInfo
>(
type
,name,parent)
37
{
38
//=========================================================================
39
// CONSTRUCTOR
40
declareProperty(
"LevelOfDetails"
,
m_LevelOfDetails
);
41
declareProperty(
"METContainer"
,
m_metContainer
=
"MET_Reference_AntiKt4LCTopo"
);
// 'MET_RefFinal' in r19
42
43
m_trigDec
= 0;
44
m_pVertex
= 0;
45
// PILE-UP
46
m_actualInteractionPerCrossing
= 0;
47
m_averageInteractionPerCrossing
= 0;
48
49
// EVENT TYPE
50
m_is_simulation
= 0;
51
m_is_calibration
= 0;
52
m_is_testbeam
= 0;
53
54
// VERTEXING
55
m_nVtx
= 0;
56
57
// EVENT FILTERS
58
m_EF_2mu10
= 0;
59
m_EF_2mu10_loose
= 0;
60
m_EF_2mu4
= 0;
61
m_EF_2mu6
= 0;
62
m_EF_3mu4
= 0;
63
m_EF_3mu6
= 0;
64
m_EF_4mu4
= 0;
65
m_EF_mu10
= 0;
66
m_EF_mu10_loose
= 0;
67
m_EF_mu10i_loose
= 0;
68
m_EF_mu13
= 0;
69
m_EF_mu15
= 0;
70
m_EF_mu15i
= 0;
71
m_EF_mu15i_medium
= 0;
72
m_EF_mu18
= 0;
73
m_EF_mu18_medium
= 0;
74
m_EF_mu20
= 0;
75
m_EF_mu20_medium
= 0;
76
m_EF_mu20i
= 0;
77
m_EF_mu20i_medium
= 0;
78
m_EF_mu22
= 0;
79
m_EF_mu22_medium
= 0;
80
m_EF_mu24_medium
= 0;
81
m_EF_mu24_tight
= 0;
82
m_EF_mu30_medium
= 0;
83
m_EF_mu30_tight
= 0;
84
m_EF_mu4
= 0;
85
m_EF_mu4_mu6
= 0;
86
m_EF_mu40_slow
= 0;
87
m_EF_mu6
= 0;
88
89
// LEVEL 1 TRIGGERS
90
m_L1_MU0_EMPTY
= 0;
91
m_L1_MU0
= 0;
92
m_L1_MU4
= 0;
93
m_L1_MU6
= 0;
94
m_L1_MU10
= 0;
95
m_L1_MU11
= 0;
96
m_L1_MU15
= 0;
97
m_L1_MU20
= 0;
98
m_L1_MU40
= 0;
99
m_L1_MU0_COMM
= 0;
100
m_L1_2MU0
= 0;
101
m_L1_2MU4
= 0;
102
m_L1_2MU6
= 0;
103
m_L1_2MU10
= 0;
104
m_L1_2MU11
= 0;
105
m_L1_2MU15
= 0;
106
m_L1_2MU20
= 0;
107
m_L1_3MU0
= 0;
108
m_L1_3MU4
= 0;
109
m_L1_3MU6
= 0;
110
m_L1_4MU0
= 0;
111
112
113
// EVENT FLAGS
114
m_run_number
= 0;
115
m_event_number
= 0;
116
m_timestamp
= 0;
117
m_timestamp_ns
= 0;
118
m_lbn
= 0;
119
m_bcid
= 0;
120
m_detmask0
= 0;
121
m_detmask1
= 0;
122
123
// MISSING ENERGY VARIABLES
124
m_isMissingEtAvailable
=
true
;
125
126
m_MET_Ref_FinalClus_Ex
= 0;
127
m_MET_Ref_FinalClus_Ey
= 0;
128
m_MET_Ref_FinalClus_EtSum
= 0;
129
130
m_MET_Ref_FinalTrk_Ex
= 0;
131
m_MET_Ref_FinalTrk_Ey
= 0;
132
m_MET_Ref_FinalTrk_EtSum
= 0;
133
134
//size of Muons container
135
m_N_mu
= 0;
136
137
138
}
// TILEMUONEVENTFILLERTOOL
139
140
//===============================================
141
StatusCode
TileEventFillerTool::initialize
(){
142
//===============================================
143
// RETRIEVES NECESSARY SERVICES AND TOOLS, INSTANTIATES GLOBAL VARIABLES
144
145
// CHECK WHETHER BLOCKFILLERTOOL HAS BEEN INITIALIZED
146
CHECK
(
D3PD::BlockFillerTool<xAOD::EventInfo>::initialize
() );
147
148
// OUTPUT MESSAGING SERVICE
149
150
ATH_MSG_DEBUG
(
" NOW IN TILEMUONEVENTFILLERTOOL::INITIALIZE() "
);
151
152
// RETRIEVE TRIGGER DECISION TOOL
153
if
(
m_LevelOfDetails
> 4){
154
if
( ! evtStore()->retrieve(
m_trigDec
,
"xTrigDecision"
).isSuccess() ){
155
ATH_MSG_WARNING
(
"TRIGGER DECISIONS ARE NOT LOADED PROPERLY."
);
156
return
StatusCode::FAILURE;
157
}
158
}
// IF
159
160
return
StatusCode::SUCCESS;
161
}
// TILEMUONEVENTFILLERTOOL::INITIALIZE
162
163
//=========================================
164
StatusCode
TileEventFillerTool::book
(){
165
//=========================================
166
// ADDS VARIABLES TO THE D3PD TREE
167
168
// OUTPUT MESSAGING SERVICE
169
170
ATH_MSG_DEBUG
(
" NOW IN TileEventFillerTool::book() "
);
171
172
// EVENT FLAGS AND VARIABLES
173
if
(
m_LevelOfDetails
> 0){
174
CHECK
(
addVariable
(
"run_number"
,
m_run_number
) );
175
CHECK
(
addVariable
(
"event_number"
,
m_event_number
) );
176
CHECK
(
addVariable
(
"timestamp"
,
m_timestamp
) );
177
178
CHECK
(
addVariable
(
"actualMu"
,
m_actualInteractionPerCrossing
,
""
, 0 ) );
179
CHECK
(
addVariable
(
"averageMu"
,
m_averageInteractionPerCrossing
,
""
, 0 ) );
180
CHECK
(
addVariable
(
"is_simulation"
,
m_is_simulation
,
""
,
false
) );
181
CHECK
(
addVariable
(
"is_calibration"
,
m_is_calibration
,
""
,
false
) );
182
CHECK
(
addVariable
(
"is_testbeam"
,
m_is_testbeam
,
""
,
false
) );
183
184
CHECK
(
addVariable
(
"lbn"
,
m_lbn
) );
185
186
}
// IF
187
188
// ELABORATE EVENT INFORMATION
189
if
(
m_LevelOfDetails
> 1){
190
CHECK
(
addVariable
(
"timestamp_ns"
,
m_timestamp_ns
) );
191
CHECK
(
addVariable
(
"bcid"
,
m_bcid
) );
192
CHECK
(
addVariable
(
"detmask0"
,
m_detmask0
) );
193
CHECK
(
addVariable
(
"detmask1"
,
m_detmask1
) );
194
}
// IF
195
196
// NUMBER OF MUONS
197
if
(
m_LevelOfDetails
> 2){
198
CHECK
(
addVariable
(
"muon_n"
,
m_N_mu
,
""
, 0 ) );
199
}
// IF
200
201
// BASIC MISSING ENERGY
202
if
(
m_LevelOfDetails
> 3){
203
CHECK
(
addVariable
(
"MET_Ref_FinalClus_Ex"
,
m_MET_Ref_FinalClus_Ex
,
""
, 0.) );
204
CHECK
(
addVariable
(
"MET_Ref_FinalClus_Ey"
,
m_MET_Ref_FinalClus_Ey
,
""
, 0.) );
205
CHECK
(
addVariable
(
"MET_Ref_FinalClus_EtSum"
,
m_MET_Ref_FinalClus_EtSum
,
""
, 0.) );
206
207
CHECK
(
addVariable
(
"MET_Ref_FinalTrk_Ex"
,
m_MET_Ref_FinalTrk_Ex
,
""
, 0.) );
208
CHECK
(
addVariable
(
"MET_Ref_FinalTrk_Ey"
,
m_MET_Ref_FinalTrk_Ey
,
""
, 0.) );
209
CHECK
(
addVariable
(
"MET_Ref_FinalTrk_EtSum"
,
m_MET_Ref_FinalTrk_EtSum
,
""
, 0.) );
210
211
}
// IF
212
213
// TRIGGER DECISIONS
214
if
(
m_LevelOfDetails
> 4){
215
// HIGH LEVEL TRIGGERS (HLT): EVENT FILTERS (EF)
216
CHECK
(
addVariable
(
"EF_2mu10"
,
m_EF_2mu10
,
""
,
false
) );
217
CHECK
(
addVariable
(
"EF_2mu10_loose"
,
m_EF_2mu10_loose
,
""
,
false
) );
218
CHECK
(
addVariable
(
"EF_2mu4"
,
m_EF_2mu4
,
""
,
false
) );
219
CHECK
(
addVariable
(
"EF_2mu6"
,
m_EF_2mu6
,
""
,
false
) );
220
CHECK
(
addVariable
(
"EF_3mu4"
,
m_EF_3mu4
,
""
,
false
) );
221
CHECK
(
addVariable
(
"EF_3mu6"
,
m_EF_3mu6
,
""
,
false
) );
222
CHECK
(
addVariable
(
"EF_4mu4"
,
m_EF_4mu4
,
""
,
false
) );
223
CHECK
(
addVariable
(
"EF_mu10"
,
m_EF_mu10
,
""
,
false
) );
224
CHECK
(
addVariable
(
"EF_mu10_loose"
,
m_EF_mu10_loose
,
""
,
false
) );
225
CHECK
(
addVariable
(
"EF_mu10i_loose"
,
m_EF_mu10i_loose
,
""
,
false
) );
226
CHECK
(
addVariable
(
"EF_mu13"
,
m_EF_mu13
,
""
,
false
) );
227
CHECK
(
addVariable
(
"EF_mu15"
,
m_EF_mu15
,
""
,
false
) );
228
CHECK
(
addVariable
(
"EF_mu15i"
,
m_EF_mu15i
,
""
,
false
) );
229
CHECK
(
addVariable
(
"EF_mu15i_medium"
,
m_EF_mu15i_medium
,
""
,
false
) );
230
CHECK
(
addVariable
(
"EF_mu18"
,
m_EF_mu18
,
""
,
false
) );
231
CHECK
(
addVariable
(
"EF_mu18_medium"
,
m_EF_mu18_medium
,
""
,
false
) );
232
CHECK
(
addVariable
(
"EF_mu20"
,
m_EF_mu20
,
""
,
false
) );
233
CHECK
(
addVariable
(
"EF_mu20_medium"
,
m_EF_mu20_medium
,
""
,
false
) );
234
CHECK
(
addVariable
(
"EF_mu20i"
,
m_EF_mu20i
,
""
,
false
) );
235
CHECK
(
addVariable
(
"EF_mu20i_medium"
,
m_EF_mu20i_medium
,
""
,
false
) );
236
CHECK
(
addVariable
(
"EF_mu22"
,
m_EF_mu22
,
""
,
false
) );
237
CHECK
(
addVariable
(
"EF_mu22_medium"
,
m_EF_mu22_medium
,
""
,
false
) );
238
CHECK
(
addVariable
(
"EF_mu24_medium"
,
m_EF_mu24_medium
,
""
,
false
) );
239
CHECK
(
addVariable
(
"EF_mu24_tight"
,
m_EF_mu24_tight
,
""
,
false
) );
240
CHECK
(
addVariable
(
"EF_mu30_medium"
,
m_EF_mu30_medium
,
""
,
false
) );
241
CHECK
(
addVariable
(
"EF_mu30_tight"
,
m_EF_mu30_tight
,
""
,
false
) );
242
CHECK
(
addVariable
(
"EF_mu4"
,
m_EF_mu4
,
""
,
false
) );
243
CHECK
(
addVariable
(
"EF_mu4_mu6"
,
m_EF_mu4_mu6
,
""
,
false
) );
244
CHECK
(
addVariable
(
"EF_mu40_slow"
,
m_EF_mu40_slow
,
""
,
false
) );
245
CHECK
(
addVariable
(
"EF_mu6"
,
m_EF_mu6
,
""
,
false
) );
246
247
// LEVEL 1 TRIGGERS
248
CHECK
(
addVariable
(
"L1_MU0_EMPTY"
,
m_L1_MU0_EMPTY
,
""
,
false
) );
249
CHECK
(
addVariable
(
"L1_MU0"
,
m_L1_MU0
,
""
,
false
) );
250
CHECK
(
addVariable
(
"L1_MU4"
,
m_L1_MU4
,
""
,
false
) );
251
CHECK
(
addVariable
(
"L1_MU6"
,
m_L1_MU6
,
""
,
false
) );
252
CHECK
(
addVariable
(
"L1_MU10"
,
m_L1_MU10
,
""
,
false
) );
253
CHECK
(
addVariable
(
"L1_MU11"
,
m_L1_MU11
,
""
,
false
) );
254
CHECK
(
addVariable
(
"L1_MU15"
,
m_L1_MU15
,
""
,
false
) );
255
CHECK
(
addVariable
(
"L1_MU20"
,
m_L1_MU20
,
""
,
false
) );
256
CHECK
(
addVariable
(
"L1_MU40"
,
m_L1_MU40
,
""
,
false
) );
257
CHECK
(
addVariable
(
"L1_MU0_COMM"
,
m_L1_MU0_COMM
,
""
,
false
) );
258
CHECK
(
addVariable
(
"L1_2MU0"
,
m_L1_2MU0
,
""
,
false
) );
259
CHECK
(
addVariable
(
"L1_2MU4"
,
m_L1_2MU4
,
""
,
false
) );
260
CHECK
(
addVariable
(
"L1_2MU6"
,
m_L1_2MU6
,
""
,
false
) );
261
CHECK
(
addVariable
(
"L1_2MU10"
,
m_L1_2MU10
,
""
,
false
) );
262
CHECK
(
addVariable
(
"L1_2MU11"
,
m_L1_2MU11
,
""
,
false
) );
263
CHECK
(
addVariable
(
"L1_2MU15"
,
m_L1_2MU15
,
""
,
false
) );
264
CHECK
(
addVariable
(
"L1_2MU20"
,
m_L1_2MU20
,
""
,
false
) );
265
CHECK
(
addVariable
(
"L1_3MU0"
,
m_L1_3MU0
,
""
,
false
) );
266
CHECK
(
addVariable
(
"L1_3MU4"
,
m_L1_3MU4
,
""
,
false
) );
267
CHECK
(
addVariable
(
"L1_3MU6"
,
m_L1_3MU6
,
""
,
false
) );
268
CHECK
(
addVariable
(
"L1_4MU0"
,
m_L1_4MU0
,
""
,
false
) );
269
}
// IF
270
271
// VERTEXING AND PILEUP
272
if
(
m_LevelOfDetails
> 5){
273
CHECK
(
addVariable
(
"nVtx"
,
m_nVtx
,
""
, 0 ) );
274
}
// IF
275
276
return
StatusCode::SUCCESS;
277
}
// TILEMUONEVENTFILLERTOOL::BOOK
278
279
//===========================================================
280
StatusCode
TileEventFillerTool::fill
(
const
xAOD::EventInfo
& p){
281
//===========================================================
282
// FILLS D3PD TREE EVENT-BY-EVENT
283
284
// OUTPUT MESSAGING SERVICE
285
286
ATH_MSG_DEBUG
(
" in TileEventFillerTool::fill "
);
287
288
// GENERAL EVENT IDENTIFICATION INFORMATION
289
if
(
m_LevelOfDetails
> 0){
290
// EVENT ID
291
*
m_run_number
= p.runNumber();
292
*
m_event_number
= p.eventNumber();
293
*
m_timestamp
= p.timeStamp();
294
*
m_is_simulation
= p.eventType(
xAOD::EventInfo::IS_SIMULATION
);
295
*
m_is_calibration
= p.eventType(
xAOD::EventInfo::IS_CALIBRATION
);
296
*
m_is_testbeam
= p.eventType(
xAOD::EventInfo::IS_TESTBEAM
);
297
*
m_lbn
= p.lumiBlock();
298
*
m_actualInteractionPerCrossing
= p.actualInteractionsPerCrossing();
299
*
m_averageInteractionPerCrossing
= p.averageInteractionsPerCrossing();
300
}
// IF
301
302
// ELABORATE EVENT INFORMATION
303
if
(
m_LevelOfDetails
> 1){
304
*
m_timestamp_ns
= p.timeStampNSOffset();
305
*
m_bcid
= p.bcid();
306
*
m_detmask0
= p.detectorMask0();
307
*
m_detmask1
= p.detectorMask1();
308
}
// IF
309
310
// NUMBER OF MUONS
311
if
(
m_LevelOfDetails
> 2){
312
const
xAOD::MuonContainer
*MuonsCont = 0;
313
CHECK
( evtStore()->retrieve( MuonsCont,
"Muons"
) );
314
*
m_N_mu
= MuonsCont->
size
();
315
}
// IF
316
317
//======================//
318
// STORE MISSING ENERGY //
319
//======================//
320
// MISSING ENERGY POINTER RETRIEVAL: EACH TIME IT IS CHECKED WHETHER THE MISSING ENERGY VARIABLE
321
// COULD BE RETRIEVED FROM THE STOREGATE. THEN THE TRANSVERSE ENERGIES IN X AND Y AND THE SUMMED
322
// MISSING ENERGY ARE STORED.
323
if
(
m_LevelOfDetails
> 3 &&
m_isMissingEtAvailable
){
324
// SET WHICH MISSING ENERGY VARIABLES SHOULD BE ADDED TO D3PD
325
const
xAOD::MissingETContainer
* missingEtContainer =
nullptr
;
326
if
(!evtStore()->retrieve(missingEtContainer,
m_metContainer
).isFailure()) {
327
328
const
xAOD::MissingET
* finalClus = (*missingEtContainer)[
"FinalClus"
];
329
if
(!finalClus) {
330
ATH_MSG_WARNING
(
"No total MissingET object found in container with name FinalClus"
);
331
}
else
{
332
*
m_MET_Ref_FinalClus_Ex
= finalClus->
mpx
();
333
*
m_MET_Ref_FinalClus_Ey
= finalClus->
mpy
();
334
*
m_MET_Ref_FinalClus_EtSum
= finalClus->
sumet
();
335
}
336
337
const
xAOD::MissingET
* finalTrk = (*missingEtContainer)[
"FinalTrk"
];
338
if
(!finalTrk) {
339
ATH_MSG_WARNING
(
"No total MissingET object found in container with name FinalTrk"
);
340
}
else
{
341
*
m_MET_Ref_FinalTrk_Ex
= finalTrk->
mpx
();
342
*
m_MET_Ref_FinalTrk_Ey
= finalTrk->
mpy
();
343
*
m_MET_Ref_FinalTrk_EtSum
= finalTrk->
sumet
();
344
}
345
346
}
else
{
347
m_isMissingEtAvailable
=
false
;
348
ATH_MSG_ERROR
(
"COULD NOT RETRIEVE MET!"
);
349
}
350
351
}
// IF
352
353
354
355
if
(
m_LevelOfDetails
> 4){
356
// ACCESS TRIGGER INFORMATION
357
const
std::vector< xAOD::EventInfo::StreamTag > stags = p.streamTags();
358
//std::vector< xAOD::EventInfo::StreamTag >::const_iterator itr = stags.begin();
359
//std::vector< xAOD::EventInfo::StreamTag >::const_iterator end = stags.end();
360
361
/* //THIS NEEDS TO MODIFY TO WORK ON xAODs
362
// CHECK TRIGGER DECISIONS
363
*m_EF_2mu10 = m_trigDec->isPassed("EF_2mu10");
364
*m_EF_2mu10_loose = m_trigDec->isPassed("EF_2mu10_loose");
365
*m_EF_2mu4 = m_trigDec->isPassed("EF_2mu4");
366
*m_EF_2mu6 = m_trigDec->isPassed("EF_2mu6");
367
*m_EF_3mu4 = m_trigDec->isPassed("EF_3mu4");
368
*m_EF_3mu6 = m_trigDec->isPassed("EF_3mu6");
369
*m_EF_4mu4 = m_trigDec->isPassed("EF_4mu4");
370
*m_EF_mu10 = m_trigDec->isPassed("EF_mu10");
371
*m_EF_mu10_loose = m_trigDec->isPassed("EF_mu10_loose");
372
*m_EF_mu10i_loose = m_trigDec->isPassed("EF_mu10i_loose");
373
*m_EF_mu13 = m_trigDec->isPassed("EF_mu13");
374
*m_EF_mu15 = m_trigDec->isPassed("EF_mu15");
375
*m_EF_mu15i = m_trigDec->isPassed("EF_mu15i");
376
*m_EF_mu15i_medium= m_trigDec->isPassed("EF_mu15i_medium");
377
*m_EF_mu18 = m_trigDec->isPassed("EF_mu18");
378
*m_EF_mu18_medium = m_trigDec->isPassed("EF_mu18_medium");
379
*m_EF_mu20 = m_trigDec->isPassed("EF_mu20");
380
*m_EF_mu20_medium = m_trigDec->isPassed("EF_mu20_medium");
381
*m_EF_mu20i = m_trigDec->isPassed("EF_mu20i");
382
*m_EF_mu20i_medium= m_trigDec->isPassed("EF_mu20i_medium");
383
*m_EF_mu22 = m_trigDec->isPassed("EF_mu22");
384
*m_EF_mu22_medium = m_trigDec->isPassed("EF_mu22_medium");
385
*m_EF_mu24_medium = m_trigDec->isPassed("EF_mu24_medium");
386
*m_EF_mu24_tight = m_trigDec->isPassed("EF_mu24_tight");
387
*m_EF_mu30_medium = m_trigDec->isPassed("EF_mu30_medium");
388
*m_EF_mu30_tight = m_trigDec->isPassed("EF_mu30_tight");
389
*m_EF_mu4 = m_trigDec->isPassed("EF_mu4");
390
*m_EF_mu4_mu6 = m_trigDec->isPassed("EF_mu4_mu6");
391
*m_EF_mu40_slow = m_trigDec->isPassed("EF_mu40_slow");
392
*m_EF_mu6 = m_trigDec->isPassed("EF_mu6");
393
394
// LEVEL 1 TRIGGERS
395
*m_L1_MU0_EMPTY = m_trigDec->isPassed("L1_MU0_EMPTY");
396
*m_L1_MU0 = m_trigDec->isPassed("L1_MU0");
397
*m_L1_MU4 = m_trigDec->isPassed("L1_MU4");
398
*m_L1_MU6 = m_trigDec->isPassed("L1_MU6");
399
*m_L1_MU10 = m_trigDec->isPassed("L1_MU10");
400
*m_L1_MU11 = m_trigDec->isPassed("L1_MU11");
401
*m_L1_MU15 = m_trigDec->isPassed("L1_MU15");
402
*m_L1_MU20 = m_trigDec->isPassed("L1_MU20");
403
*m_L1_MU40 = m_trigDec->isPassed("L1_MU40");
404
*m_L1_MU0_COMM = m_trigDec->isPassed("L1_MU0_COMM");
405
*m_L1_2MU0 = m_trigDec->isPassed("L1_2MU0");
406
*m_L1_2MU4 = m_trigDec->isPassed("L1_2MU4");
407
*m_L1_2MU6 = m_trigDec->isPassed("L1_2MU6");
408
*m_L1_2MU10 = m_trigDec->isPassed("L1_2MU10");
409
*m_L1_2MU11 = m_trigDec->isPassed("L1_2MU11");
410
*m_L1_2MU15 = m_trigDec->isPassed("L1_2MU15");
411
*m_L1_2MU20 = m_trigDec->isPassed("L1_2MU20");
412
*m_L1_3MU0 = m_trigDec->isPassed("L1_3MU0");
413
*m_L1_3MU4 = m_trigDec->isPassed("L1_3MU4");
414
*m_L1_3MU6 = m_trigDec->isPassed("L1_3MU6");
415
*m_L1_4MU0 = m_trigDec->isPassed("L1_4MU0");
416
*/
417
}
// IF
418
419
if
(
m_LevelOfDetails
> 5){
420
// STORE NUMBER OF VERTICES
421
// RETRIEVE PRIMARY VERTICES
422
if
(evtStore()->retrieve(
m_pVertex
,
"VxPrimaryCandidate"
).isFailure()){
423
ATH_MSG_WARNING
(
"No VxPrimaryCandidate container found in TES"
);
424
}
// IF
425
*
m_nVtx
=
m_pVertex
?
m_pVertex
->size() : -1;
426
}
// IF
427
428
return
StatusCode::SUCCESS;
429
}
// TILEMUONEVENTFILLERTOOL::FILL
430
}
// NAMESPACE D3PD
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition
AthMsgStreamMacros.h:33
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition
AthMsgStreamMacros.h:32
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition
AthMsgStreamMacros.h:29
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition
Control/AthenaKernel/AthenaKernel/errorcheck.h:422
TileEventFillerTool.h
D3PD::BlockFillerTool< xAOD::EventInfo >::addVariable
virtual StatusCode addVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &docstring="", const void *defval=0)
Definition
AddVariable.cxx:85
D3PD::BlockFillerTool
Type-safe wrapper for block filler tools.
Definition
BlockFillerTool.h:65
D3PD::TileEventFillerTool::m_EF_2mu10_loose
bool * m_EF_2mu10_loose
Definition
TileEventFillerTool.h:97
D3PD::TileEventFillerTool::m_L1_MU40
bool * m_L1_MU40
Definition
TileEventFillerTool.h:136
D3PD::TileEventFillerTool::m_MET_Ref_FinalTrk_Ex
float * m_MET_Ref_FinalTrk_Ex
Definition
TileEventFillerTool.h:168
D3PD::TileEventFillerTool::m_L1_2MU20
bool * m_L1_2MU20
Definition
TileEventFillerTool.h:144
D3PD::TileEventFillerTool::m_L1_3MU0
bool * m_L1_3MU0
Definition
TileEventFillerTool.h:145
D3PD::TileEventFillerTool::m_L1_2MU0
bool * m_L1_2MU0
Definition
TileEventFillerTool.h:138
D3PD::TileEventFillerTool::m_EF_mu15i
bool * m_EF_mu15i
Definition
TileEventFillerTool.h:108
D3PD::TileEventFillerTool::m_L1_3MU6
bool * m_L1_3MU6
Definition
TileEventFillerTool.h:147
D3PD::TileEventFillerTool::m_MET_Ref_FinalClus_EtSum
float * m_MET_Ref_FinalClus_EtSum
Definition
TileEventFillerTool.h:166
D3PD::TileEventFillerTool::m_actualInteractionPerCrossing
float * m_actualInteractionPerCrossing
Definition
TileEventFillerTool.h:83
D3PD::TileEventFillerTool::m_EF_mu30_tight
bool * m_EF_mu30_tight
Definition
TileEventFillerTool.h:121
D3PD::TileEventFillerTool::m_L1_2MU15
bool * m_L1_2MU15
Definition
TileEventFillerTool.h:143
D3PD::TileEventFillerTool::m_L1_2MU10
bool * m_L1_2MU10
Definition
TileEventFillerTool.h:141
D3PD::TileEventFillerTool::m_EF_mu4_mu6
bool * m_EF_mu4_mu6
Definition
TileEventFillerTool.h:123
D3PD::TileEventFillerTool::m_is_testbeam
bool * m_is_testbeam
Definition
TileEventFillerTool.h:89
D3PD::TileEventFillerTool::m_EF_mu13
bool * m_EF_mu13
Definition
TileEventFillerTool.h:106
D3PD::TileEventFillerTool::m_timestamp_ns
uint32_t * m_timestamp_ns
Definition
TileEventFillerTool.h:154
D3PD::TileEventFillerTool::book
virtual StatusCode book()
Declare tuple variables.
Definition
TileEventFillerTool.cxx:164
D3PD::TileEventFillerTool::m_trigDec
const xAOD::TrigDecision * m_trigDec
Definition
TileEventFillerTool.h:77
D3PD::TileEventFillerTool::m_EF_mu30_medium
bool * m_EF_mu30_medium
Definition
TileEventFillerTool.h:120
D3PD::TileEventFillerTool::m_EF_mu20i
bool * m_EF_mu20i
Definition
TileEventFillerTool.h:114
D3PD::TileEventFillerTool::m_N_mu
int * m_N_mu
Definition
TileEventFillerTool.h:173
D3PD::TileEventFillerTool::m_EF_2mu4
bool * m_EF_2mu4
Definition
TileEventFillerTool.h:98
D3PD::TileEventFillerTool::m_EF_mu15
bool * m_EF_mu15
Definition
TileEventFillerTool.h:107
D3PD::TileEventFillerTool::m_pVertex
const VxContainer * m_pVertex
Definition
TileEventFillerTool.h:93
D3PD::TileEventFillerTool::fill
virtual StatusCode fill(const xAOD::EventInfo &ei)
Fill one block.
Definition
TileEventFillerTool.cxx:280
D3PD::TileEventFillerTool::m_EF_3mu4
bool * m_EF_3mu4
Definition
TileEventFillerTool.h:100
D3PD::TileEventFillerTool::m_L1_MU0
bool * m_L1_MU0
Definition
TileEventFillerTool.h:129
D3PD::TileEventFillerTool::m_L1_MU11
bool * m_L1_MU11
Definition
TileEventFillerTool.h:133
D3PD::TileEventFillerTool::m_L1_3MU4
bool * m_L1_3MU4
Definition
TileEventFillerTool.h:146
D3PD::TileEventFillerTool::m_EF_2mu10
bool * m_EF_2mu10
Definition
TileEventFillerTool.h:96
D3PD::TileEventFillerTool::m_EF_mu6
bool * m_EF_mu6
Definition
TileEventFillerTool.h:125
D3PD::TileEventFillerTool::m_L1_MU10
bool * m_L1_MU10
Definition
TileEventFillerTool.h:132
D3PD::TileEventFillerTool::m_EF_4mu4
bool * m_EF_4mu4
Definition
TileEventFillerTool.h:102
D3PD::TileEventFillerTool::m_EF_2mu6
bool * m_EF_2mu6
Definition
TileEventFillerTool.h:99
D3PD::TileEventFillerTool::m_EF_mu20_medium
bool * m_EF_mu20_medium
Definition
TileEventFillerTool.h:113
D3PD::TileEventFillerTool::m_EF_mu20i_medium
bool * m_EF_mu20i_medium
Definition
TileEventFillerTool.h:115
D3PD::TileEventFillerTool::m_is_calibration
bool * m_is_calibration
Definition
TileEventFillerTool.h:88
D3PD::TileEventFillerTool::m_lbn
uint32_t * m_lbn
Definition
TileEventFillerTool.h:155
D3PD::TileEventFillerTool::m_EF_mu22
bool * m_EF_mu22
Definition
TileEventFillerTool.h:116
D3PD::TileEventFillerTool::m_event_number
uint64_t * m_event_number
Definition
TileEventFillerTool.h:152
D3PD::TileEventFillerTool::m_L1_MU6
bool * m_L1_MU6
Definition
TileEventFillerTool.h:131
D3PD::TileEventFillerTool::m_EF_mu40_slow
bool * m_EF_mu40_slow
Definition
TileEventFillerTool.h:124
D3PD::TileEventFillerTool::m_L1_MU20
bool * m_L1_MU20
Definition
TileEventFillerTool.h:135
D3PD::TileEventFillerTool::m_L1_MU4
bool * m_L1_MU4
Definition
TileEventFillerTool.h:130
D3PD::TileEventFillerTool::m_EF_mu20
bool * m_EF_mu20
Definition
TileEventFillerTool.h:112
D3PD::TileEventFillerTool::m_detmask1
uint32_t * m_detmask1
Definition
TileEventFillerTool.h:158
D3PD::TileEventFillerTool::m_L1_4MU0
bool * m_L1_4MU0
Definition
TileEventFillerTool.h:148
D3PD::TileEventFillerTool::m_EF_mu18
bool * m_EF_mu18
Definition
TileEventFillerTool.h:110
D3PD::TileEventFillerTool::initialize
virtual StatusCode initialize()
Definition
TileEventFillerTool.cxx:141
D3PD::TileEventFillerTool::m_EF_mu22_medium
bool * m_EF_mu22_medium
Definition
TileEventFillerTool.h:117
D3PD::TileEventFillerTool::m_averageInteractionPerCrossing
float * m_averageInteractionPerCrossing
Definition
TileEventFillerTool.h:84
D3PD::TileEventFillerTool::m_LevelOfDetails
short m_LevelOfDetails
Definition
TileEventFillerTool.h:80
D3PD::TileEventFillerTool::m_nVtx
int * m_nVtx
Definition
TileEventFillerTool.h:92
D3PD::TileEventFillerTool::m_EF_mu10
bool * m_EF_mu10
Definition
TileEventFillerTool.h:103
D3PD::TileEventFillerTool::m_L1_MU15
bool * m_L1_MU15
Definition
TileEventFillerTool.h:134
D3PD::TileEventFillerTool::m_L1_2MU4
bool * m_L1_2MU4
Definition
TileEventFillerTool.h:139
D3PD::TileEventFillerTool::m_detmask0
uint32_t * m_detmask0
Definition
TileEventFillerTool.h:157
D3PD::TileEventFillerTool::m_MET_Ref_FinalTrk_Ey
float * m_MET_Ref_FinalTrk_Ey
Definition
TileEventFillerTool.h:169
D3PD::TileEventFillerTool::m_L1_2MU6
bool * m_L1_2MU6
Definition
TileEventFillerTool.h:140
D3PD::TileEventFillerTool::m_is_simulation
bool * m_is_simulation
Definition
TileEventFillerTool.h:87
D3PD::TileEventFillerTool::m_EF_mu24_tight
bool * m_EF_mu24_tight
Definition
TileEventFillerTool.h:119
D3PD::TileEventFillerTool::m_isMissingEtAvailable
bool m_isMissingEtAvailable
Definition
TileEventFillerTool.h:163
D3PD::TileEventFillerTool::m_EF_mu4
bool * m_EF_mu4
Definition
TileEventFillerTool.h:122
D3PD::TileEventFillerTool::m_EF_mu18_medium
bool * m_EF_mu18_medium
Definition
TileEventFillerTool.h:111
D3PD::TileEventFillerTool::m_timestamp
uint32_t * m_timestamp
Definition
TileEventFillerTool.h:153
D3PD::TileEventFillerTool::m_EF_3mu6
bool * m_EF_3mu6
Definition
TileEventFillerTool.h:101
D3PD::TileEventFillerTool::m_MET_Ref_FinalTrk_EtSum
float * m_MET_Ref_FinalTrk_EtSum
Definition
TileEventFillerTool.h:170
D3PD::TileEventFillerTool::m_L1_2MU11
bool * m_L1_2MU11
Definition
TileEventFillerTool.h:142
D3PD::TileEventFillerTool::m_run_number
uint32_t * m_run_number
Definition
TileEventFillerTool.h:151
D3PD::TileEventFillerTool::m_L1_MU0_COMM
bool * m_L1_MU0_COMM
Definition
TileEventFillerTool.h:137
D3PD::TileEventFillerTool::m_L1_MU0_EMPTY
bool * m_L1_MU0_EMPTY
Definition
TileEventFillerTool.h:128
D3PD::TileEventFillerTool::m_MET_Ref_FinalClus_Ex
float * m_MET_Ref_FinalClus_Ex
Definition
TileEventFillerTool.h:164
D3PD::TileEventFillerTool::m_EF_mu15i_medium
bool * m_EF_mu15i_medium
Definition
TileEventFillerTool.h:109
D3PD::TileEventFillerTool::m_EF_mu10i_loose
bool * m_EF_mu10i_loose
Definition
TileEventFillerTool.h:105
D3PD::TileEventFillerTool::m_EF_mu10_loose
bool * m_EF_mu10_loose
Definition
TileEventFillerTool.h:104
D3PD::TileEventFillerTool::m_bcid
uint32_t * m_bcid
Definition
TileEventFillerTool.h:156
D3PD::TileEventFillerTool::m_MET_Ref_FinalClus_Ey
float * m_MET_Ref_FinalClus_Ey
Definition
TileEventFillerTool.h:165
D3PD::TileEventFillerTool::m_metContainer
std::string m_metContainer
Definition
TileEventFillerTool.h:161
D3PD::TileEventFillerTool::TileEventFillerTool
TileEventFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition
TileEventFillerTool.cxx:33
D3PD::TileEventFillerTool::m_EF_mu24_medium
bool * m_EF_mu24_medium
Definition
TileEventFillerTool.h:118
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
xAOD::EventInfo_v1::IS_CALIBRATION
@ IS_CALIBRATION
true: calibration, false: physics
Definition
EventInfo_v1.h:155
xAOD::EventInfo_v1::IS_SIMULATION
@ IS_SIMULATION
true: simulation, false: data
Definition
EventInfo_v1.h:151
xAOD::EventInfo_v1::IS_TESTBEAM
@ IS_TESTBEAM
true: testbeam, false: full detector
Definition
EventInfo_v1.h:153
xAOD::MissingET_v1::sumet
float sumet() const
Returns.
xAOD::MissingET_v1::mpx
float mpx() const
Returns .
xAOD::MissingET_v1::mpy
float mpy() const
Returns .
D3PD
Block filler tool for noisy FEB information.
Definition
CaloCellDetailsFillerTool.cxx:29
EventInfo
Definition
EventInfo.py:1
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition
ICaloAffectedTool.h:24
xAOD::EventInfo
EventInfo_v1 EventInfo
Definition of the latest event info version.
Definition
IEventInfoCnvTool.h:16
xAOD::MissingET
MissingET_v1 MissingET
Version control by type defintion.
Definition
Event/xAOD/xAODMissingET/xAODMissingET/MissingET.h:15
xAOD::MissingETContainer
MissingETContainer_v1 MissingETContainer
Definition
Event/xAOD/xAODMissingET/xAODMissingET/MissingETContainer.h:16
xAOD::MuonContainer
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
Definition
Event/xAOD/xAODMuon/xAODMuon/MuonContainer.h:14
type
Generated on
for ATLAS Offline Software by
1.17.0