ATLAS Offline Software
Loading...
Searching...
No Matches
ZdcNtuple.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ZdcNtuple_ZdcNtuple_H
6#define ZdcNtuple_ZdcNtuple_H
7
8
11#include <TrigDecisionTool/TrigDecisionTool.h> //template parameter
12
13#include <AsgAnalysisInterfaces/IGoodRunsListSelectionTool.h> //template parameter
14#include "xAODTrigger/TrigDecision.h" //typedef
15#include "xAODTrigger/EnergySumRoI.h" //typedef
16
17//container includes are all typedefs
29
30#include "GeneratorObjects/McEventCollection.h" //template parameter
31#include "ZdcAnalysis/IZdcAnalysisTool.h" //template parameter
32#include "InDetTrackSelectionTool/IInDetTrackSelectionTool.h" //template parameter
33
34#include <TLorentzVector.h> //data member
37#include "xAODEventInfo/EventInfo.h" //typedef
38
39#include <vector>
40#include <cstdint>
41#include <string>
42#include <memory>
43
44class TH1;
45class TTree;
46
48{
49 unsigned int m_lastRunNumber{0};
51
52public:
53 bool slimmed; // assume slimmed output
54 bool useGRL; // use a GRL (used by default)
55 std::string grlFilename;
56 bool enableOutputTree; // enable output TTree
57 bool enableOutputSamples; // write samples into TTree
58 bool enableTrigger; // use trigger info (skip this for laser runs)
59 bool writeOnlyTriggers; // only write passed triggers to ntuple
60 bool enableID; // store ID in ntuple
61 bool enableCalo; // store calorimeter ET in ntuple
62 bool enableClusters; // store topoclusters
63 bool enableTracks; // store tracks
64 bool enableMuons; // store muons in ntuple
65 bool enableElectrons; // store electrons in ntuple
66 bool enablePhotons; // store photons in ntuple
67 bool enableTT; // store trigger towers
68 bool enableTruth; // store truth info
69 bool enableJets; // store jets
70 bool enableTriggerJets; // store trigger jets in ntuple
71 bool zdcCalib; // run calibration file
72 bool zdcLaser; // run laser file
73 bool zdcInj; // ZDC injected-pulse run
74 bool zdcOnly; // process only ZDC+trigger
75 unsigned int zdcLowGainMode; // ZDC LG mode
76 size_t trackLimit; // max tracks for writing tree
78 bool flipDelay; // whether or not to flip un/delay for EM ZDC modules
79 bool reprocZdc; // use ZdcAnalysisTool to reprocess ZDC, otherwise use what is there
80 std::string auxSuffix; // what to add to name the new data, when reprocessing
81 size_t nsamplesZdc; // nsamples expected by ZDC tool
86 bool enableZDC; //
87 bool enableRPD; //
88 bool enableRPDAmp; //
90
92 std::string zdcConfig;
93
94 std::string outputName; // output for tree
95 int outputTreeScaledown; // scaledown factor
96
97public:
98
99 PublicToolHandle<Trig::TrigDecisionTool> m_trigDecisionTool
100 { this, "TrigDecisionTool", "", "Handle to the TrigDecisionTool" };
103 ToolHandle< InDet::IInDetTrackSelectionTool > m_selTool;
104
106 { this, "ZdcModuleContainerName", "ZdcModules", "" };
108 { this, "ZdcSumContainerName", "ZdcSums", "" };
110 {this, "MCEventCollectionName", "TruthEvent", ""};
111
113
114 // Containers
128
129 std::shared_ptr<ZdcInjPulserAmpMap> m_zdcInjPulserAmpMap;
130
133 bool m_isMC;
136 std::vector<const Trig::ChainGroup*> m_chainGroups;
137 std::vector<const Trig::ChainGroup*> m_rerunChainGroups;
138
139 float t_L1ET;
140 float t_L1ET24;
141
142 // Histograms
143 void setupTriggerHistos();
146
148 uint32_t t_runNumber;
150 uint32_t t_lumiBlock;
151 uint32_t t_bcid;
152 float t_vInj;
154 uint32_t t_passBits;
156 uint32_t t_timeStamp;
162
165
166 uint64_t t_trigger;
168 //std::vector<uint16_t> t_decisions;
169 //std::vector<float> t_prescales;
170 float t_prescales[200];
171 bool t_decisions[200];
173
174 float t_mbts_in_e[2][8];
175 float t_mbts_out_e[2][4];
176 float t_mbts_in_t[2][8];
177 float t_mbts_out_t[2][4];
178
179 float t_T2mbts_in_e[2][8];
180 float t_T2mbts_out_e[2][4];
181 float t_T2mbts_in_t[2][8];
182 float t_T2mbts_out_t[2][4];
183
184 uint32_t t_tav[16];
185 uint32_t t_tbp[16];
186
187 float t_ZdcAmp[2];
188 float t_ZdcAmpErr[2];
189 float t_ZdcEnergy[2];
193 float t_ZdcTime[2];
194 short t_ZdcStatus[2];
195 unsigned int t_ZdcModuleMask;
196 float t_ZdcTrigEff[2];
197 unsigned short t_ZdcLucrodTriggerSideAmp[2];
201 float t_ZdcTruthEM[2];
204 std::vector< float > t_ZdcTruthParticlePosx;
205 std::vector< float > t_ZdcTruthParticlePosy;
206 std::vector< float > t_ZdcTruthParticlePosz;
207 std::vector< float > t_ZdcTruthParticleTime;
208 std::vector< float > t_ZdcTruthParticlePx;
209 std::vector< float > t_ZdcTruthParticlePy;
210 std::vector< float > t_ZdcTruthParticlePz;
211 std::vector< float > t_ZdcTruthParticleEnergy;
212 std::vector< int > t_ZdcTruthParticlePid;
213 std::vector< int > t_ZdcTruthParticleStatus;
214
215 float t_ZdcModuleAmp[2][4];
216 float t_ZdcModuleTime[2][4];
217 float t_ZdcModuleFitAmp[2][4];
218 float t_ZdcModuleFitT0[2][4];
219 float t_ZdcModuleChisq[2][4];
220 unsigned int t_ZdcModuleStatus[2][4];
228 unsigned short t_ZdcLucrodTriggerAmp[2][4];
229 unsigned short t_ZdcLucrodTriggerAmpLG[2][4];
230 float t_ZdcModuleMaxADC[2][4];
240
246 unsigned int t_ZdcModuleTruthNphotons[2][7];
247
257 float t_RpdChannelMaxADC[2][16];
259 unsigned int t_RpdChannelMaxSample[2][16];
260 unsigned int t_RpdChannelStatus[2][16];
262 unsigned int t_RpdSideStatus[2];
263 unsigned int t_RpdModuleTruthNphotons[2][16];
264
267 unsigned int t_centroidStatus[2];
274 float t_xCentroid[2];
275 float t_yCentroid[2];
276 float t_xRowCentroid[2][4];
277 float t_yColCentroid[2][4];
280
281 int t_nvx;
282 float t_vx[3];
284 std::vector<int> t_vx_trk_index;
287 float t_vxcov[6];
289 float t_puvxz;
296
298 std::vector<int8_t> t_vtx_type;
299 std::vector<float> t_vtx_x;
300 std::vector<float> t_vtx_y;
301 std::vector<float> t_vtx_z;
302 std::vector<int16_t> t_vtx_ntrk_all;
303 std::vector<float> t_vtx_sumpt2_all;
304 std::vector<int16_t> t_vtx_ntrk;
305 std::vector<float> t_vtx_sumpt2;
306 std::vector< std::vector<int16_t> > t_vtx_trk_index;
307
308 // FCal
309 float t_fcalEt;
316
321
322 // gaps
326
327 float m_gapThresholds[98] =
328 {4.7426,5.11018,5.07498,5.0969,5.10695,5.04098,5.07106,4.98087,5.11647,5.08988,5.16267,
329 5.17202,5.23803,5.25314,5.29551,5.35092,5.40863,5.44375,5.38075,5.25022,5.37933,5.25459,5.37719,5.25169,5.73985,
330 5.79174,5.79266,5.79588,5.7963,5.81949,5.82273,5.85658,5.85442,5.84779,5.77679,5.83323,5.84524,5.84439,5.84488,
331 5.84744,5.84683,5.84524,5.84594,5.84656,5.84639,5.84461,5.84515,5.84206,5.8396,5.84497,5.84801,5.84608,5.84608,
332 5.84783,5.84726,5.84844,5.8477,5.84796,5.84757,5.84822,5.84814,5.84617,5.83451,5.77658,5.84309,5.85496,5.85761,
333 5.82555,5.82206,5.78982,5.78482,5.7778,5.78327,5.74898,5.25459,5.37503,5.25459,5.37283,5.25169,5.37862,5.44473,
334 5.41041,5.34498,5.29551,5.25602,5.2283,5.17428,5.14504,5.09342,5.12256,4.98721,5.07106,5.02642,5.10031,5.11018,
335 5.05447,5.10031,4.7426};
337
338 // mbts
344
347
348 uint16_t t_raw7[2][4][2][2][7];
349 uint16_t t_raw15[2][4][2][2][15];
350 uint16_t t_raw24[2][4][2][2][24];
351 uint16_t t_raw32[2][4][2][2][32];
352 uint16_t t_raw40[2][4][2][2][40];
353
354 uint16_t t_rpdRaw[2][16][24];
355 uint16_t t_rpdRaw32[2][16][32];
356 uint16_t t_rpdRaw40[2][16][40];
357
358 // tracks
359 uint32_t t_ntrk;
360 std::vector<float> t_trk_pt;
361 std::vector<float> t_trk_eta;
362 std::vector<float> t_trk_phi;
363 std::vector<float> t_trk_e;
364 std::vector<float> t_trk_theta;
365 std::vector<float> t_trk_d0;
366 std::vector<float> t_trk_z0;
367 std::vector<float> t_trk_vz;
368 std::vector<float> t_trk_vtxz;
369 std::vector<int8_t> t_trk_charge;
370 std::vector<int16_t> t_trk_quality;
371 std::vector<int> t_trk_index;
372 std::vector<uint8_t> t_trk_nPixHits;
373 std::vector<uint8_t> t_trk_nSctHits;
374 std::vector<uint8_t> t_trk_nPixDead;
375 std::vector<uint8_t> t_trk_nSctDead;
376 std::vector<uint8_t> t_trk_nPixHoles;
377 std::vector<uint8_t> t_trk_nSctHoles;
378 std::vector<uint8_t> t_trk_nTrtHits;
379 std::vector<uint8_t> t_trk_nTrtOutliers;
380 std::vector<uint8_t> t_trk_inPixHits;
381 std::vector<uint8_t> t_trk_exPixHits;
382 std::vector<uint8_t> t_trk_ninPixHits;
383 std::vector<uint8_t> t_trk_nexPixHits;
384 std::vector<float> t_trk_pixeldEdx;
385
386 // clusters
387 uint32_t t_nclus;
388 std::vector<float> t_cc_pt;
389 std::vector<float> t_cc_eta;
390 std::vector<float> t_cc_phi;
391 std::vector<float> t_cc_e;
392 std::vector<float> t_cc_sig;
393 std::vector<int> t_cc_layer;
394 std::vector<float> t_cc_raw_m;
395 std::vector<float> t_cc_raw_eta;
396 std::vector<float> t_cc_raw_phi;
397 std::vector<float> t_cc_raw_e;
398 std::vector<std::vector<float>> t_cc_raw_samp;
399
400 float t_clusEt;
404
405 // AFP protons
406
408 std::vector<double> proton_pt;
409 std::vector<double> proton_eta;
410 std::vector<double> proton_phi;
411 std::vector<double> proton_e;
412 std::vector<int> proton_side;
413 std::vector<double> proton_eLoss;
414 std::vector<double> proton_t;
415 std::vector<std::vector<int>> proton_track_stationID;
416 std::vector<std::vector<float>> proton_track_xLocal;
417 std::vector<std::vector<float>> proton_track_yLocal;
418 std::vector<std::vector<float>> proton_track_zLocal;
419 std::vector<std::vector<float>> proton_track_xSlope;
420 std::vector<std::vector<float>> proton_track_ySlope;
421 std::vector<std::vector<int>> proton_track_nClusters;
422
423 TLorentzVector p_beam;
424 TLorentzVector p_scat;
425
426 // end of Histograms
427
428 // this is a standard constructor
429 ZdcNtuple (const std::string& name, ISvcLocator* pSvcLocator);
430
431 void processEventInfo();
432 void processVInjInfo();
434 uint32_t acceptEvent();
435 void processZdcNtupleFromModules(); // new version directly from output of ZdcAnalysisTool - which is much cleaner
437 void processFCal();
438 void processMBTS();
439 void processInDet();
440 void writeTrack(const xAOD::TrackParticle*, const xAOD::Vertex* vertex, int );
441 int trackQuality(const xAOD::TrackParticle* tp, const xAOD::Vertex* vertex);
442 void processClusters();
443 void reprocessZdcModule(const xAOD::ZdcModule* zdcMod, bool flipdelay=0);
445 void processGaps();
446 void processProtons();
447
448 double dR(const double eta1, const double phi1, const double eta2, const double phi2);
449
450
451 virtual StatusCode initialize () override;
452 virtual StatusCode execute () override;
453 virtual StatusCode finalize () override;
454};
455
456#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
the (new) base class for EventLoop algorithms
Property holding a SG store/key/clid from which a ReadHandle is made.
std::vector< float > t_cc_raw_phi
Definition ZdcNtuple.h:396
const xAOD::VertexContainer * m_primaryVertices
Definition ZdcNtuple.h:121
float m_gapThresholds[98]
Definition ZdcNtuple.h:327
float t_yCentroidPreGeomCorPreAvgSubtr[2]
Definition ZdcNtuple.h:271
float t_cosDeltaReactionPlaneAngle
Definition ZdcNtuple.h:279
bool reprocZdc
Definition ZdcNtuple.h:79
float t_mbts_timeDiff
Definition ZdcNtuple.h:343
std::vector< double > proton_t
Definition ZdcNtuple.h:414
float t_ZdcModuleFitT0[2][4]
Definition ZdcNtuple.h:218
std::vector< const Trig::ChainGroup * > m_rerunChainGroups
Definition ZdcNtuple.h:137
float t_yCentroid[2]
Definition ZdcNtuple.h:275
std::vector< float > t_cc_pt
Definition ZdcNtuple.h:388
TLorentzVector p_scat
Definition ZdcNtuple.h:424
std::string outputName
Definition ZdcNtuple.h:94
bool enableTriggerJets
Definition ZdcNtuple.h:70
const xAOD::MBTSModuleContainer * m_mbtsModules
Definition ZdcNtuple.h:119
void reprocessZdcModule(const xAOD::ZdcModule *zdcMod, bool flipdelay=0)
float t_RpdChannelPileupStretchedExpFitParamErrs[2][16][3]
Definition ZdcNtuple.h:252
SG::ReadHandleKey< McEventCollection > m_mcEventCollectionName
Definition ZdcNtuple.h:110
short t_ZdcStatus[2]
Definition ZdcNtuple.h:194
std::vector< float > t_ZdcTruthParticlePy
Definition ZdcNtuple.h:209
float t_RpdChannelAmplitudeCalib[2][16]
Definition ZdcNtuple.h:256
uint32_t t_ntrk
Definition ZdcNtuple.h:359
float t_ZdcTruthEM[2]
Definition ZdcNtuple.h:201
float t_totalEt
Definition ZdcNtuple.h:317
unsigned int m_lastRunNumber
Definition ZdcNtuple.h:49
ZdcInjPulserAmpMap::Token m_injMapRunToken
Definition ZdcNtuple.h:50
float t_RPDSubtrAmpSum[2]
Definition ZdcNtuple.h:269
unsigned int t_RpdSideStatus[2]
Definition ZdcNtuple.h:262
float t_ZdcModuleChisqLGRefit[2][4]
Definition ZdcNtuple.h:239
bool enableOutputTree
Definition ZdcNtuple.h:56
float t_clusphiMax
Definition ZdcNtuple.h:403
float t_ZdcModuleT0SubLGRefit[2][4]
Definition ZdcNtuple.h:238
bool pbpb2023
Definition ZdcNtuple.h:85
bool flipDelay
Definition ZdcNtuple.h:78
const xAOD::TriggerTowerContainer * m_TTcontainer
Definition ZdcNtuple.h:126
unsigned short t_ZdcLucrodTriggerAmpLG[2][4]
Definition ZdcNtuple.h:229
bool zdcLaser
Definition ZdcNtuple.h:72
float t_RpdChannelAmplitude[2][16]
Definition ZdcNtuple.h:255
std::vector< uint8_t > t_trk_nPixHoles
Definition ZdcNtuple.h:376
float t_puvxz
Definition ZdcNtuple.h:289
std::vector< uint8_t > t_trk_nSctHoles
Definition ZdcNtuple.h:377
bool trackLimitReject
Definition ZdcNtuple.h:77
uint16_t t_mbts_countA
Definition ZdcNtuple.h:339
float t_fcalEtC
Definition ZdcNtuple.h:311
void processMCEventCollection()
bool lhcf2022afp
Definition ZdcNtuple.h:84
unsigned short t_ZdcLucrodTriggerSideAmp[2]
Definition ZdcNtuple.h:197
unsigned int t_RpdModuleTruthNphotons[2][16]
Definition ZdcNtuple.h:263
const xAOD::ForwardEventInfoContainer * m_mbtsInfo
Definition ZdcNtuple.h:118
bool enableCalo
Definition ZdcNtuple.h:61
bool doZdcCalib
Definition ZdcNtuple.h:91
std::vector< int > t_vx_trk_index
Definition ZdcNtuple.h:284
double dR(const double eta1, const double phi1, const double eta2, const double phi2)
float t_reactionPlaneAngle[2]
Definition ZdcNtuple.h:278
std::vector< std::vector< float > > proton_track_ySlope
Definition ZdcNtuple.h:420
void processZdcNtupleFromModules()
unsigned int t_ZdcModuleMask
Definition ZdcNtuple.h:195
std::vector< float > t_trk_vz
Definition ZdcNtuple.h:367
void processInDet()
std::vector< float > t_trk_pt
Definition ZdcNtuple.h:360
uint32_t t_eventNumber
Definition ZdcNtuple.h:149
float t_RpdChannelPileupExpFitParams[2][16][2]
Definition ZdcNtuple.h:249
bool lhcf2022zdc
Definition ZdcNtuple.h:83
float t_totalEt24
Definition ZdcNtuple.h:319
uint16_t t_raw32[2][4][2][2][32]
Definition ZdcNtuple.h:351
const xAOD::EventInfo * m_eventInfo
Definition ZdcNtuple.h:112
bool enableTruth
Definition ZdcNtuple.h:68
float t_RpdChannelMaxADCCalib[2][16]
Definition ZdcNtuple.h:258
std::vector< int > t_trk_index
Definition ZdcNtuple.h:371
bool enableID
Definition ZdcNtuple.h:60
float t_clusEtMax
Definition ZdcNtuple.h:401
std::vector< std::vector< float > > proton_track_xLocal
Definition ZdcNtuple.h:416
TH1 * h_zdcTriggersTBP
Definition ZdcNtuple.h:145
float t_T2mbts_in_e[2][8]
Definition ZdcNtuple.h:179
uint16_t t_raw7[2][4][2][2][7]
Definition ZdcNtuple.h:348
float t_vInj
Definition ZdcNtuple.h:152
void processClusters()
bool slimmed
Definition ZdcNtuple.h:53
std::vector< const Trig::ChainGroup * > m_chainGroups
Definition ZdcNtuple.h:136
std::vector< float > t_cc_raw_e
Definition ZdcNtuple.h:397
float t_mbts_in_t[2][8]
Definition ZdcNtuple.h:176
std::vector< int16_t > t_vtx_ntrk
Definition ZdcNtuple.h:304
float t_ZdcAmpErr[2]
Definition ZdcNtuple.h:188
int m_scaledownCounter
Definition ZdcNtuple.h:135
float t_vxcov[6]
Definition ZdcNtuple.h:287
float t_RpdChannelMaxADC[2][16]
Definition ZdcNtuple.h:257
float t_ZdcModuleCalibTime[2][4]
Definition ZdcNtuple.h:222
const xAOD::TruthParticleContainer * m_truthParticleContainer
Definition ZdcNtuple.h:125
int m_eventCounter
Definition ZdcNtuple.h:132
uint32_t acceptEvent()
float t_ZdcModulePresample[2][4]
Definition ZdcNtuple.h:226
float t_ZdcNLEnergy[2]
Definition ZdcNtuple.h:191
std::vector< float > t_vtx_sumpt2_all
Definition ZdcNtuple.h:303
const xAOD::HIEventShapeContainer * m_caloSums
Definition ZdcNtuple.h:116
std::vector< int16_t > t_vtx_ntrk_all
Definition ZdcNtuple.h:302
float t_xRowCentroid[2][4]
Definition ZdcNtuple.h:276
unsigned int t_RpdChannelMaxSample[2][16]
Definition ZdcNtuple.h:259
std::vector< float > t_cc_raw_eta
Definition ZdcNtuple.h:395
float t_actIntPerCrossing
Definition ZdcNtuple.h:159
uint64_t t_trigger
Definition ZdcNtuple.h:166
bool t_centroidDecorationsAvailable
Definition ZdcNtuple.h:265
std::vector< std::vector< int16_t > > t_vtx_trk_index
Definition ZdcNtuple.h:306
std::string grlFilename
Definition ZdcNtuple.h:55
std::vector< float > t_trk_eta
Definition ZdcNtuple.h:361
bool enablePhotons
Definition ZdcNtuple.h:66
int t_puvxntrk
Definition ZdcNtuple.h:290
TLorentzVector p_beam
Definition ZdcNtuple.h:423
uint16_t t_raw15[2][4][2][2][15]
Definition ZdcNtuple.h:349
bool lhcf2022
Definition ZdcNtuple.h:82
std::vector< float > t_cc_eta
Definition ZdcNtuple.h:389
TH1 * h_TCSigCut
Definition ZdcNtuple.h:336
uint16_t t_T2mbts_countCin
Definition ZdcNtuple.h:346
virtual StatusCode execute() override
float t_xCentroidPreAvgSubtr[2]
Definition ZdcNtuple.h:272
float t_ZdcTrigEff[2]
Definition ZdcNtuple.h:196
float t_ZdcModuleMinDeriv2nd[2][4]
Definition ZdcNtuple.h:225
std::vector< float > t_trk_vtxz
Definition ZdcNtuple.h:368
float t_RPDChannelSubtrAmp[2][16]
Definition ZdcNtuple.h:268
float t_ZdcNLEnergyErr[2]
Definition ZdcNtuple.h:192
uint32_t t_passBits
Definition ZdcNtuple.h:154
float t_ZdcModuleChisq[2][4]
Definition ZdcNtuple.h:219
std::vector< int8_t > t_vtx_type
Definition ZdcNtuple.h:298
float t_T2mbts_out_e[2][4]
Definition ZdcNtuple.h:180
const xAOD::CaloClusterContainer * m_caloClusters
Definition ZdcNtuple.h:122
std::vector< int > t_cc_layer
Definition ZdcNtuple.h:393
uint8_t t_rpdDecodingError
Definition ZdcNtuple.h:164
float t_ZdcModuleAmpError[2][4]
Definition ZdcNtuple.h:223
bool enableElectrons
Definition ZdcNtuple.h:65
float t_ZdcModuleTime[2][4]
Definition ZdcNtuple.h:216
ToolHandle< InDet::IInDetTrackSelectionTool > m_selTool
Definition ZdcNtuple.h:103
PublicToolHandle< Trig::TrigDecisionTool > m_trigDecisionTool
Definition ZdcNtuple.h:100
TH1 * h_zdcTriggers
Definition ZdcNtuple.h:144
int t_nstrong
Definition ZdcNtuple.h:292
bool enableMuons
Definition ZdcNtuple.h:64
std::vector< float > t_trk_theta
Definition ZdcNtuple.h:364
std::vector< uint8_t > t_trk_ninPixHits
Definition ZdcNtuple.h:382
uint16_t t_T2mbts_countAin
Definition ZdcNtuple.h:345
float t_fcalEtA_TTsum
Definition ZdcNtuple.h:314
bool m_setupTrigHist
Definition ZdcNtuple.h:134
uint32_t t_tav[16]
Definition ZdcNtuple.h:184
std::string zdcConfig
Definition ZdcNtuple.h:92
std::vector< float > t_cc_e
Definition ZdcNtuple.h:391
bool zdcOnly
Definition ZdcNtuple.h:74
float t_mbts_timeC
Definition ZdcNtuple.h:342
float t_ZdcModuleAmpCorrLGRefit[2][4]
Definition ZdcNtuple.h:236
std::vector< float > t_cc_phi
Definition ZdcNtuple.h:390
uint32_t t_nclus
Definition ZdcNtuple.h:387
uint32_t t_tbp[16]
Definition ZdcNtuple.h:185
void processMBTS()
uint16_t t_rpdRaw[2][16][24]
Definition ZdcNtuple.h:354
std::vector< std::vector< int > > proton_track_nClusters
Definition ZdcNtuple.h:421
std::vector< int > proton_side
Definition ZdcNtuple.h:412
uint32_t t_timeStamp
Definition ZdcNtuple.h:156
float t_ZdcModuleTruthTotal[2][7]
Definition ZdcNtuple.h:241
float t_xCentroidPreGeomCorPreAvgSubtr[2]
Definition ZdcNtuple.h:270
float t_ZdcTruthInvis[2]
Definition ZdcNtuple.h:200
float t_ZdcModuleCalibAmp[2][4]
Definition ZdcNtuple.h:221
float t_ZdcModuleFitAmp[2][4]
Definition ZdcNtuple.h:217
float t_fcalEtA
Definition ZdcNtuple.h:310
float t_ZdcModuleAmpLGRefit[2][4]
Definition ZdcNtuple.h:235
float t_vx[3]
Definition ZdcNtuple.h:282
float t_ZdcModulePeakADCLG[2][4]
Definition ZdcNtuple.h:234
unsigned int t_ZdcModuleStatus[2][4]
Definition ZdcNtuple.h:220
float t_mbts_out_t[2][4]
Definition ZdcNtuple.h:177
float t_L1ET24
Definition ZdcNtuple.h:140
float t_ZdcModuleT0LGRefit[2][4]
Definition ZdcNtuple.h:237
void processGaps()
bool enableZDC
Definition ZdcNtuple.h:86
std::vector< uint8_t > t_trk_nPixDead
Definition ZdcNtuple.h:374
std::vector< int8_t > t_trk_charge
Definition ZdcNtuple.h:369
float t_ZdcModuleTruthNonEM[2][7]
Definition ZdcNtuple.h:244
int t_vxnminbias
Definition ZdcNtuple.h:294
float t_ZdcModuleAmp[2][4]
Definition ZdcNtuple.h:215
float t_fcalEtC_TT
Definition ZdcNtuple.h:313
uint32_t t_zdcEventInfoErrorWord
Definition ZdcNtuple.h:161
bool enableTrigger
Definition ZdcNtuple.h:58
float t_ZdcEnergy[2]
Definition ZdcNtuple.h:189
std::vector< std::vector< float > > t_cc_raw_samp
Definition ZdcNtuple.h:398
float t_RpdChannelPileupFrac[2][16]
Definition ZdcNtuple.h:261
bool enableRPDAmp
Definition ZdcNtuple.h:88
std::vector< float > t_ZdcTruthParticlePosy
Definition ZdcNtuple.h:205
std::vector< int16_t > t_trk_quality
Definition ZdcNtuple.h:370
bool enableTracks
Definition ZdcNtuple.h:63
std::vector< uint8_t > t_trk_nSctHits
Definition ZdcNtuple.h:373
uint16_t t_rpdRaw32[2][16][32]
Definition ZdcNtuple.h:355
float t_clusEt
Definition ZdcNtuple.h:400
std::vector< float > t_cc_raw_m
Definition ZdcNtuple.h:394
const xAOD::TrigT2MbtsBitsContainer * m_trigT2MbtsBits
Definition ZdcNtuple.h:120
std::vector< float > t_trk_d0
Definition ZdcNtuple.h:365
size_t nsamplesZdc
Definition ZdcNtuple.h:81
const xAOD::AFPProtonContainer * m_afpProtons
Definition ZdcNtuple.h:127
void writeTrack(const xAOD::TrackParticle *, const xAOD::Vertex *vertex, int)
std::vector< std::vector< float > > proton_track_zLocal
Definition ZdcNtuple.h:418
void processEventInfo()
float t_RpdChannelPileupExpFitParamErrs[2][16][2]
Definition ZdcNtuple.h:251
void processFCal()
std::vector< float > t_trk_z0
Definition ZdcNtuple.h:366
bool t_rerunDecisions[200]
Definition ZdcNtuple.h:172
float t_avgIntPerCrossing
Definition ZdcNtuple.h:158
std::vector< float > t_vtx_x
Definition ZdcNtuple.h:299
float t_ZdcTruthTotal[2]
Definition ZdcNtuple.h:199
const xAOD::TrackParticleContainer * m_trackParticles
Definition ZdcNtuple.h:123
float t_prescales[200]
Definition ZdcNtuple.h:170
bool processTriggerDecision()
float t_ZdcTime[2]
Definition ZdcNtuple.h:193
float t_T2mbts_in_t[2][8]
Definition ZdcNtuple.h:181
std::vector< float > t_vtx_y
Definition ZdcNtuple.h:300
uint32_t t_timeStampNSOffset
Definition ZdcNtuple.h:157
std::vector< float > t_vtx_z
Definition ZdcNtuple.h:301
std::vector< uint8_t > t_trk_nTrtHits
Definition ZdcNtuple.h:378
std::vector< double > proton_pt
Definition ZdcNtuple.h:408
int t_vxtype
Definition ZdcNtuple.h:285
std::vector< int > t_ZdcTruthParticlePid
Definition ZdcNtuple.h:212
SG::ReadHandleKey< xAOD::ZdcModuleContainer > m_zdcSumContainerName
Definition ZdcNtuple.h:108
unsigned short t_ZdcLucrodTriggerAmp[2][4]
Definition ZdcNtuple.h:228
void processVInjInfo()
float t_ZdcModuleBkgdMaxFraction[2][4]
Definition ZdcNtuple.h:224
asg::AnaToolHandle< IGoodRunsListSelectionTool > m_grl
Definition ZdcNtuple.h:101
unsigned int t_ZdcModuleTruthNphotons[2][7]
Definition ZdcNtuple.h:246
int nProtons
Definition ZdcNtuple.h:407
std::vector< std::vector< float > > proton_track_yLocal
Definition ZdcNtuple.h:417
std::vector< float > t_vtx_sumpt2
Definition ZdcNtuple.h:305
const xAOD::TrigDecision * m_trigDecision
Definition ZdcNtuple.h:115
std::vector< uint8_t > t_trk_nSctDead
Definition ZdcNtuple.h:375
float t_RpdChannelPileupStretchedExpFitMSE[2][16]
Definition ZdcNtuple.h:254
void processProtons()
std::vector< float > t_trk_pixeldEdx
Definition ZdcNtuple.h:384
float t_yCentroidPreAvgSubtr[2]
Definition ZdcNtuple.h:273
float t_xCentroid[2]
Definition ZdcNtuple.h:274
int t_pvindex
Definition ZdcNtuple.h:286
float t_puvxsumpt
Definition ZdcNtuple.h:291
std::vector< double > proton_eta
Definition ZdcNtuple.h:409
ZdcNtuple(const std::string &name, ISvcLocator *pSvcLocator)
Definition ZdcNtuple.cxx:25
float t_RpdChannelBaseline[2][16]
Definition ZdcNtuple.h:248
float t_fcalEtC_TTsum
Definition ZdcNtuple.h:315
std::vector< float > t_ZdcTruthParticlePx
Definition ZdcNtuple.h:208
std::vector< float > t_trk_phi
Definition ZdcNtuple.h:362
bool enableOutputSamples
Definition ZdcNtuple.h:57
float t_mbts_in_e[2][8]
Definition ZdcNtuple.h:174
std::vector< double > proton_eLoss
Definition ZdcNtuple.h:413
uint16_t t_raw24[2][4][2][2][24]
Definition ZdcNtuple.h:350
bool enableCentroid
Definition ZdcNtuple.h:89
float t_ZdcModulePreSampleAmp[2][4]
Definition ZdcNtuple.h:227
float t_mbts_timeA
Definition ZdcNtuple.h:341
uint16_t t_mbts_countC
Definition ZdcNtuple.h:340
unsigned int t_centroidStatus[2]
Definition ZdcNtuple.h:267
float t_clusetaMax
Definition ZdcNtuple.h:402
float t_ZdcTruthNonEM[2]
Definition ZdcNtuple.h:202
uint8_t t_bunchGroup
Definition ZdcNtuple.h:153
uint32_t t_runNumber
Definition ZdcNtuple.h:148
unsigned int zdcLowGainMode
Definition ZdcNtuple.h:75
float t_edgeGapC
Definition ZdcNtuple.h:324
int t_vxnlooseprimary
Definition ZdcNtuple.h:293
bool enableRPD
Definition ZdcNtuple.h:87
float t_ZdcAmp[2]
Definition ZdcNtuple.h:187
int t_vxngoodmuon
Definition ZdcNtuple.h:295
TTree * m_outputTree
Definition ZdcNtuple.h:147
bool zdcInj
Definition ZdcNtuple.h:73
size_t trackLimit
Definition ZdcNtuple.h:76
const xAOD::EnergySumRoI * m_lvl1EnergySumRoI
Definition ZdcNtuple.h:124
float t_RpdChannelPileupExpFitMSE[2][16]
Definition ZdcNtuple.h:253
std::vector< std::vector< int > > proton_track_stationID
Definition ZdcNtuple.h:415
SG::ReadHandleKey< xAOD::ZdcModuleContainer > m_zdcModuleContainerName
Definition ZdcNtuple.h:106
float t_totalEt24_TTsum
Definition ZdcNtuple.h:320
float t_ZdcTruthEscaped[2]
Definition ZdcNtuple.h:203
float t_ZdcModulePeakADCHG[2][4]
Definition ZdcNtuple.h:233
std::shared_ptr< ZdcInjPulserAmpMap > m_zdcInjPulserAmpMap
Definition ZdcNtuple.h:129
std::vector< float > t_ZdcTruthParticleEnergy
Definition ZdcNtuple.h:211
std::vector< double > proton_e
Definition ZdcNtuple.h:411
bool useGRL
Definition ZdcNtuple.h:54
int m_nTriggers
Definition ZdcNtuple.h:131
float t_fcalEtA_TT
Definition ZdcNtuple.h:312
float t_vxsumpt2
Definition ZdcNtuple.h:288
uint32_t t_bcid
Definition ZdcNtuple.h:151
float t_ZdcEnergyErr[2]
Definition ZdcNtuple.h:190
float t_ZdcModuleTruthEM[2][7]
Definition ZdcNtuple.h:243
std::vector< float > t_ZdcTruthParticleTime
Definition ZdcNtuple.h:207
std::vector< uint8_t > t_trk_nPixHits
Definition ZdcNtuple.h:372
uint32_t t_extendedLevel1ID
Definition ZdcNtuple.h:155
unsigned short t_ZdcLucrodTriggerSideAmpLG[2]
Definition ZdcNtuple.h:198
unsigned int t_RpdChannelStatus[2][16]
Definition ZdcNtuple.h:260
float t_L1ET
Definition ZdcNtuple.h:139
uint16_t t_raw40[2][4][2][2][40]
Definition ZdcNtuple.h:352
std::string auxSuffix
Definition ZdcNtuple.h:80
bool writeOnlyTriggers
Definition ZdcNtuple.h:59
std::vector< float > t_ZdcTruthParticlePosz
Definition ZdcNtuple.h:206
char t_centroidEventValid
Definition ZdcNtuple.h:266
bool t_decisions[200]
Definition ZdcNtuple.h:171
bool enableClusters
Definition ZdcNtuple.h:62
asg::AnaToolHandle< ZDC::IZdcAnalysisTool > m_zdcAnalysisTool
Definition ZdcNtuple.h:102
float t_totalEt_TTsum
Definition ZdcNtuple.h:318
std::vector< float > t_ZdcTruthParticlePz
Definition ZdcNtuple.h:210
uint16_t t_rpdRaw40[2][16][40]
Definition ZdcNtuple.h:356
uint32_t t_trigger_TBP
Definition ZdcNtuple.h:167
std::vector< std::vector< float > > proton_track_xSlope
Definition ZdcNtuple.h:419
int t_vxntrk
Definition ZdcNtuple.h:283
bool m_isMC
Definition ZdcNtuple.h:133
void setupTriggerHistos()
std::vector< float > t_ZdcTruthParticlePosx
Definition ZdcNtuple.h:204
int trackQuality(const xAOD::TrackParticle *tp, const xAOD::Vertex *vertex)
float t_yColCentroid[2][4]
Definition ZdcNtuple.h:277
float t_ZdcModuleTruthInvis[2][7]
Definition ZdcNtuple.h:242
std::vector< uint8_t > t_trk_nexPixHits
Definition ZdcNtuple.h:383
float m_gapPtMin
Definition ZdcNtuple.h:325
float t_ZdcModuleMaxADCHG[2][4]
Definition ZdcNtuple.h:231
std::vector< float > t_cc_sig
Definition ZdcNtuple.h:392
std::vector< double > proton_phi
Definition ZdcNtuple.h:410
std::vector< uint8_t > t_trk_inPixHits
Definition ZdcNtuple.h:380
float t_T2mbts_out_t[2][4]
Definition ZdcNtuple.h:182
int outputTreeScaledown
Definition ZdcNtuple.h:95
virtual StatusCode initialize() override
Definition ZdcNtuple.cxx:99
float t_fcalEt
Definition ZdcNtuple.h:309
uint8_t t_zdcEventInfoError
Definition ZdcNtuple.h:160
std::vector< int > t_ZdcTruthParticleStatus
Definition ZdcNtuple.h:213
bool enableTT
Definition ZdcNtuple.h:67
float t_RpdChannelPileupStretchedExpFitParams[2][16][3]
Definition ZdcNtuple.h:250
float t_ZdcModuleMaxADCLG[2][4]
Definition ZdcNtuple.h:232
std::vector< uint8_t > t_trk_nTrtOutliers
Definition ZdcNtuple.h:379
uint32_t t_lumiBlock
Definition ZdcNtuple.h:150
float t_edgeGapA
Definition ZdcNtuple.h:323
bool zdcCalib
Definition ZdcNtuple.h:71
std::vector< float > t_trk_e
Definition ZdcNtuple.h:363
bool enableJets
Definition ZdcNtuple.h:69
const xAOD::HIEventShapeContainer * m_eventShapes
Definition ZdcNtuple.h:117
void processTriggerTowers()
std::vector< uint8_t > t_trk_exPixHits
Definition ZdcNtuple.h:381
float t_ZdcModuleMaxADC[2][4]
Definition ZdcNtuple.h:230
float t_ZdcModuleTruthEscaped[2][7]
Definition ZdcNtuple.h:245
uint8_t t_zdcDecodingError
Definition ZdcNtuple.h:163
virtual StatusCode finalize() override
float t_mbts_out_e[2][4]
Definition ZdcNtuple.h:175
a modified tool handle that allows its owner to configure new tools from the C++ side
AFPProtonContainer_v1 AFPProtonContainer
EventInfo_v1 EventInfo
Definition of the latest event info version.
ZdcModule_v1 ZdcModule
Definition ZdcModule.h:15
TrackParticle_v1 TrackParticle
Reference the current persistent version:
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
Vertex_v1 Vertex
Define the latest version of the vertex class.
TrigDecision_v1 TrigDecision
Define the latest version of the trigger decision class.
ForwardEventInfoContainer_v1 ForwardEventInfoContainer
TriggerTowerContainer_v2 TriggerTowerContainer
Define the latest version of the TriggerTower container.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
HIEventShapeContainer_v2 HIEventShapeContainer
Define the latest version of the container.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.
EnergySumRoI_v2 EnergySumRoI
TruthParticleContainer_v1 TruthParticleContainer
Declare the latest version of the truth particle container.
MBTSModuleContainer_v1 MBTSModuleContainer