ATLAS Offline Software
TileMuonFillerTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 /*
6  * File: TileMuonFillerTool.cxx
7  * Author: Marco van Woerden <mvanwoer@cern.ch>
8  * Date: September 2012
9  *
10  */
11 
12 #ifndef TILEMUONFILLERTOOL_H
13 #define TILEMUONFILLERTOOL_H
14 
15 // INCLUDE HEADER FILES
16 // D3PD INCLUDES
18 
19 // TRACK TOOL INCLUDES
20 #include "TrackTools.h"
22 
23 
24 // MONTE CARLO (TRUTH) INFORMATION
26 
27 // xAOD Muon
28 #include "xAODMuon/MuonContainer.h"
29 
30 
31 
32 // ADD TILEMUONTRACKFILLERTOOL TO D3PD NAMESPACE
33 namespace D3PD {
34 //=========================================================================
35 class TileMuonFillerTool:public D3PD::BlockFillerTool<xAOD::Muon>{
36 //=========================================================================
37 
38  public:
39  // CONSTRUCTOR
40  TileMuonFillerTool(const std::string& type,const std::string& name,const IInterface* parent);
42 
43  // FUNCTIONS
44  virtual StatusCode initialize();
45  virtual StatusCode book();
46  virtual StatusCode fill (const xAOD::Muon &p);
47 
48  private:
49  virtual StatusCode book2();
50 
51  // DATA MEMBERS
52  float m_defaultValue; // DEFAULT PARAMETER VALUE
53  std::string m_standalone;
54 
55  // LEVEL OF DETAILS
57  short m_trackType;
58 
59  short * m_muonAuthor;
60  short * m_muonType;
61  short * m_muonQuality;
62 
63  unsigned short *m_numberOfBLayerHits;
64  unsigned short *m_numberOfPixelHits;
65  unsigned short *m_numberOfSCTHits;
66  unsigned short *m_numberOfTRTHits;
68  unsigned short *m_numberOfBLayerSharedHits;
69  unsigned short *m_numberOfPixelSharedHits;
70  unsigned short *m_numberOfPixelHoles;
71  unsigned short *m_numberOfSCTSharedHits;
72  unsigned short *m_numberOfSCTHoles;
73  unsigned short *m_numberOfTRTOutliers;
75  unsigned short *m_numberOfMDTHits;
76  unsigned short *m_numberOfMDTHoles;
77  unsigned short *m_numberOfCSCEtaHits;
78  unsigned short *m_numberOfCSCEtaHoles;
79  unsigned short *m_numberOfCSCPhiHits;
80  unsigned short *m_numberOfCSCPhiHoles;
81  unsigned short *m_numberOfRPCEtaHits;
82  unsigned short *m_numberOfRPCEtaHoles;
83  unsigned short *m_numberOfRPCPhiHits;
84  unsigned short *m_numberOfRPCPhiHoles;
85  unsigned short *m_numberOfTGCEtaHits;
86  unsigned short *m_numberOfTGCEtaHoles;
87  unsigned short *m_numberOfTGCPhiHits;
88  unsigned short *m_numberOfTGCPhiHoles;
89  unsigned short *m_numberOfGangedPixels;
90  unsigned short *m_numberOfOutliersOnTrack;
91  unsigned short *m_numberOfTrackSummaryTypes;
92  unsigned short *m_numberOfPixelDeadSensors;
93  unsigned short *m_numberOfSCTDeadSensors;
94 
95 
96 
97  // MUON TRACK PARAMETERS
98  float *m_pT;
99  float *m_p;
100  float *m_charge;
101  float *m_eta;
102  float *m_phi;
103 
104  // MUON QUALITY INFORMATION
105  float *m_matchChi2;
108  float *m_fitChi2;
111  bool *m_bestMatch;
113 
114  float *m_nucone10;
115  float *m_nucone20;
116  float *m_nucone30;
117  float *m_nucone40;
118  float *m_etcone10;
119  float *m_etcone20;
120  float *m_etcone30;
121  float *m_etcone40;
122  float *m_ptcone10;
123  float *m_ptcone20;
124  float *m_ptcone30;
125  float *m_ptcone40;
126  float *m_vtxX;
127  float *m_vtxY;
128  float *m_vtxZ;
129  float *m_d0;
130  float *m_z0;
131  float *m_phi0;
132  float *m_theta;
133  float *m_qOverP;
134 
135  // MONTE CARLO TRUTH VARIABLES
138  float *m_truth_vtxX;
139  float *m_truth_vtxY;
140  float *m_truth_vtxZ;
141  float *m_truth_eta;
142  float *m_truth_phi;
143  float *m_truth_p;
144  float *m_truth_pT;
146  float *m_truth_mass;
147 
148  // TOOLHANDLES
149  ToolHandle<ITrackTools> m_trackInCalo;
150  ToolHandle<Reco::ITrackToVertex> m_trackToVertexTool;
151  std::string m_calocellContainerName; // INPUT CELL CONTAINER
152  std::string m_MCeventCollection;
154 
155 }; // class TrkTrackParametersAtBLFillerTool
156 
157 } // namespace D3PD
158 
159 #endif // not TRACKD3PDMAKER_TRKTRACKPARAMETERSATBLFILLERTOOL_H
D3PD::TileMuonFillerTool::m_vtxX
float * m_vtxX
Definition: TileMuonFillerTool.h:126
D3PD::TileMuonFillerTool::m_charge
float * m_charge
Definition: TileMuonFillerTool.h:100
D3PD::TileMuonFillerTool::m_truth_deltaR
float * m_truth_deltaR
Definition: TileMuonFillerTool.h:137
D3PD::TileMuonFillerTool::m_numberOfTGCPhiHoles
unsigned short * m_numberOfTGCPhiHoles
Definition: TileMuonFillerTool.h:88
D3PD::TileMuonFillerTool::m_numberOfBLayerHits
unsigned short * m_numberOfBLayerHits
Definition: TileMuonFillerTool.h:63
D3PD::TileMuonFillerTool::m_nucone10
float * m_nucone10
Definition: TileMuonFillerTool.h:114
D3PD::TileMuonFillerTool::m_fitNumberDoF
float * m_fitNumberDoF
Definition: TileMuonFillerTool.h:109
D3PD::TileMuonFillerTool::m_numberOfTRTHits
unsigned short * m_numberOfTRTHits
Definition: TileMuonFillerTool.h:66
D3PD::TileMuonFillerTool::m_MCtruth
const McEventCollection * m_MCtruth
Definition: TileMuonFillerTool.h:153
D3PD::TileMuonFillerTool::m_numberOfOutliersOnTrack
unsigned short * m_numberOfOutliersOnTrack
Definition: TileMuonFillerTool.h:90
D3PD::TileMuonFillerTool::m_etcone30
float * m_etcone30
Definition: TileMuonFillerTool.h:120
D3PD::TileMuonFillerTool::m_truth_pT
float * m_truth_pT
Definition: TileMuonFillerTool.h:144
D3PD::TileMuonFillerTool::m_MCeventCollection
std::string m_MCeventCollection
Definition: TileMuonFillerTool.h:152
D3PD::TileMuonFillerTool::m_etcone10
float * m_etcone10
Definition: TileMuonFillerTool.h:118
D3PD::TileMuonFillerTool::m_numberOfMDTHoles
unsigned short * m_numberOfMDTHoles
Definition: TileMuonFillerTool.h:76
D3PD::TileMuonFillerTool::m_vtxY
float * m_vtxY
Definition: TileMuonFillerTool.h:127
D3PD::TileMuonFillerTool::m_numberOfPixelHits
unsigned short * m_numberOfPixelHits
Definition: TileMuonFillerTool.h:64
D3PD::TileMuonFillerTool::m_d0
float * m_d0
Definition: TileMuonFillerTool.h:129
D3PD::TileMuonFillerTool::initialize
virtual StatusCode initialize()
Definition: TileMuonFillerTool.cxx:57
D3PD::TileMuonFillerTool::m_matchChi2
float * m_matchChi2
Definition: TileMuonFillerTool.h:105
D3PD::TileMuonFillerTool::m_numberOfTGCEtaHits
unsigned short * m_numberOfTGCEtaHits
Definition: TileMuonFillerTool.h:85
D3PD::TileMuonFillerTool::m_numberOfPixelDeadSensors
unsigned short * m_numberOfPixelDeadSensors
Definition: TileMuonFillerTool.h:92
TrackTools.h
D3PD::TileMuonFillerTool::m_truth_phi
float * m_truth_phi
Definition: TileMuonFillerTool.h:142
D3PD::TileMuonFillerTool::m_numberOfTrackSummaryTypes
unsigned short * m_numberOfTrackSummaryTypes
Definition: TileMuonFillerTool.h:91
D3PD::TileMuonFillerTool::m_numberOfGangedPixels
unsigned short * m_numberOfGangedPixels
Definition: TileMuonFillerTool.h:89
D3PD::TileMuonFillerTool::m_truth_eta
float * m_truth_eta
Definition: TileMuonFillerTool.h:141
D3PD::TileMuonFillerTool::m_truth_charge
float * m_truth_charge
Definition: TileMuonFillerTool.h:145
D3PD::TileMuonFillerTool::m_muonQuality
short * m_muonQuality
Definition: TileMuonFillerTool.h:61
D3PD::TileMuonFillerTool::m_numberOfRPCEtaHits
unsigned short * m_numberOfRPCEtaHits
Definition: TileMuonFillerTool.h:81
D3PD::TileMuonFillerTool::m_numberOfRPCEtaHoles
unsigned short * m_numberOfRPCEtaHoles
Definition: TileMuonFillerTool.h:82
D3PD::TileMuonFillerTool::m_vtxZ
float * m_vtxZ
Definition: TileMuonFillerTool.h:128
D3PD::TileMuonFillerTool::m_numberOfCSCEtaHits
unsigned short * m_numberOfCSCEtaHits
Definition: TileMuonFillerTool.h:77
D3PD::TileMuonFillerTool::m_etcone20
float * m_etcone20
Definition: TileMuonFillerTool.h:119
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
D3PD::TileMuonFillerTool::m_numberOfTRTOutliers
unsigned short * m_numberOfTRTOutliers
Definition: TileMuonFillerTool.h:73
D3PD::TileMuonFillerTool::m_nucone20
float * m_nucone20
Definition: TileMuonFillerTool.h:115
D3PD::TileMuonFillerTool::m_truth_p
float * m_truth_p
Definition: TileMuonFillerTool.h:143
D3PD::TileMuonFillerTool::m_nucone30
float * m_nucone30
Definition: TileMuonFillerTool.h:116
BlockFillerTool.h
Type-safe wrapper for block filler tools.
D3PD::TileMuonFillerTool::m_matchChi2OverDoF
float * m_matchChi2OverDoF
Definition: TileMuonFillerTool.h:106
D3PD::TileMuonFillerTool::m_phi
float * m_phi
Definition: TileMuonFillerTool.h:102
D3PD::TileMuonFillerTool::m_numberOfPixelSharedHits
unsigned short * m_numberOfPixelSharedHits
Definition: TileMuonFillerTool.h:69
D3PD::TileMuonFillerTool::m_numberOfCSCEtaHoles
unsigned short * m_numberOfCSCEtaHoles
Definition: TileMuonFillerTool.h:78
D3PD::TileMuonFillerTool::m_numberOfSCTSharedHits
unsigned short * m_numberOfSCTSharedHits
Definition: TileMuonFillerTool.h:71
D3PD
Block filler tool for noisy FEB information.
Definition: CaloCellDetailsFillerTool.cxx:29
D3PD::TileMuonFillerTool::book
virtual StatusCode book()
Declare tuple variables.
Definition: TileMuonFillerTool.cxx:85
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
D3PD::TileMuonFillerTool::m_trackType
short m_trackType
Definition: TileMuonFillerTool.h:57
D3PD::TileMuonFillerTool::m_trackToVertexTool
ToolHandle< Reco::ITrackToVertex > m_trackToVertexTool
Definition: TileMuonFillerTool.h:150
D3PD::TileMuonFillerTool::m_etcone40
float * m_etcone40
Definition: TileMuonFillerTool.h:121
D3PD::TileMuonFillerTool::m_matchNumberDoF
short * m_matchNumberDoF
Definition: TileMuonFillerTool.h:107
D3PD::TileMuonFillerTool::m_LevelOfDetails
short m_LevelOfDetails
Definition: TileMuonFillerTool.h:56
McEventCollection.h
D3PD::TileMuonFillerTool::m_ptcone40
float * m_ptcone40
Definition: TileMuonFillerTool.h:125
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
D3PD::TileMuonFillerTool::m_truth_vtxX
float * m_truth_vtxX
Definition: TileMuonFillerTool.h:138
D3PD::TileMuonFillerTool::m_ptcone30
float * m_ptcone30
Definition: TileMuonFillerTool.h:124
D3PD::TileMuonFillerTool::m_numberOfTRTHighThresholdHits
unsigned short * m_numberOfTRTHighThresholdHits
Definition: TileMuonFillerTool.h:67
D3PD::TileMuonFillerTool::m_trackInCalo
ToolHandle< ITrackTools > m_trackInCalo
Definition: TileMuonFillerTool.h:149
D3PD::TileMuonFillerTool::m_numberOfTGCPhiHits
unsigned short * m_numberOfTGCPhiHits
Definition: TileMuonFillerTool.h:87
D3PD::TileMuonFillerTool::m_eta
float * m_eta
Definition: TileMuonFillerTool.h:101
D3PD::TileMuonFillerTool::m_z0
float * m_z0
Definition: TileMuonFillerTool.h:130
test_pyathena.parent
parent
Definition: test_pyathena.py:15
D3PD::TileMuonFillerTool::m_numberOfTGCEtaHoles
unsigned short * m_numberOfTGCEtaHoles
Definition: TileMuonFillerTool.h:86
D3PD::TileMuonFillerTool::m_fitChi2
float * m_fitChi2
Definition: TileMuonFillerTool.h:108
D3PD::BlockFillerTool
Type-safe wrapper for block filler tools.
Definition: BlockFillerTool.h:65
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
Definition: McEventCollection.h:33
D3PD::TileMuonFillerTool::m_ptcone10
float * m_ptcone10
Definition: TileMuonFillerTool.h:122
D3PD::TileMuonFillerTool::m_truth_mass
float * m_truth_mass
Definition: TileMuonFillerTool.h:146
D3PD::TileMuonFillerTool::m_p
float * m_p
Definition: TileMuonFillerTool.h:99
ITrackToVertex.h
D3PD::TileMuonFillerTool::m_muonType
short * m_muonType
Definition: TileMuonFillerTool.h:60
D3PD::TileMuonFillerTool::TileMuonFillerTool
TileMuonFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TileMuonFillerTool.cxx:34
D3PD::TileMuonFillerTool::m_fitChi2OverDoF
float * m_fitChi2OverDoF
Definition: TileMuonFillerTool.h:110
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
D3PD::TileMuonFillerTool::m_muonAuthor
short * m_muonAuthor
Definition: TileMuonFillerTool.h:59
D3PD::TileMuonFillerTool::fill
virtual StatusCode fill(const xAOD::Muon &p)
Fill one block — type-safe version.
Definition: TileMuonFillerTool.cxx:200
D3PD::TileMuonFillerTool::m_truth_vtxZ
float * m_truth_vtxZ
Definition: TileMuonFillerTool.h:140
D3PD::TileMuonFillerTool::m_numberOfBLayerSharedHits
unsigned short * m_numberOfBLayerSharedHits
Definition: TileMuonFillerTool.h:68
D3PD::TileMuonFillerTool::m_numberOfRPCPhiHoles
unsigned short * m_numberOfRPCPhiHoles
Definition: TileMuonFillerTool.h:84
D3PD::TileMuonFillerTool::m_calocellContainerName
std::string m_calocellContainerName
Definition: TileMuonFillerTool.h:151
D3PD::TileMuonFillerTool::m_theta
float * m_theta
Definition: TileMuonFillerTool.h:132
D3PD::TileMuonFillerTool::m_numberOfRPCPhiHits
unsigned short * m_numberOfRPCPhiHits
Definition: TileMuonFillerTool.h:83
D3PD::TileMuonFillerTool::m_numberOfCSCPhiHoles
unsigned short * m_numberOfCSCPhiHoles
Definition: TileMuonFillerTool.h:80
D3PD::TileMuonFillerTool::m_qOverP
float * m_qOverP
Definition: TileMuonFillerTool.h:133
D3PD::TileMuonFillerTool::m_bestMatch
bool * m_bestMatch
Definition: TileMuonFillerTool.h:111
MuonContainer.h
D3PD::TileMuonFillerTool::m_truthRetrieved
StatusCode m_truthRetrieved
Definition: TileMuonFillerTool.h:136
D3PD::TileMuonFillerTool::m_ptcone20
float * m_ptcone20
Definition: TileMuonFillerTool.h:123
D3PD::TileMuonFillerTool::m_truth_vtxY
float * m_truth_vtxY
Definition: TileMuonFillerTool.h:139
D3PD::TileMuonFillerTool::m_numberOfSCTHoles
unsigned short * m_numberOfSCTHoles
Definition: TileMuonFillerTool.h:72
D3PD::TileMuonFillerTool::m_numberOfSCTHits
unsigned short * m_numberOfSCTHits
Definition: TileMuonFillerTool.h:65
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
D3PD::TileMuonFillerTool::m_numberOfTRTHighThresholdOutliers
unsigned short * m_numberOfTRTHighThresholdOutliers
Definition: TileMuonFillerTool.h:74
D3PD::TileMuonFillerTool::book2
virtual StatusCode book2()
Definition: TileMuonFillerTool.cxx:142
D3PD::TileMuonFillerTool
Definition: TileMuonFillerTool.h:35
D3PD::TileMuonFillerTool::~TileMuonFillerTool
~TileMuonFillerTool()
Definition: TileMuonFillerTool.h:41
D3PD::TileMuonFillerTool::m_numberOfCSCPhiHits
unsigned short * m_numberOfCSCPhiHits
Definition: TileMuonFillerTool.h:79
D3PD::TileMuonFillerTool::m_numberOfPixelHoles
unsigned short * m_numberOfPixelHoles
Definition: TileMuonFillerTool.h:70
D3PD::TileMuonFillerTool::m_standalone
std::string m_standalone
Definition: TileMuonFillerTool.h:53
D3PD::TileMuonFillerTool::m_numberOfMDTHits
unsigned short * m_numberOfMDTHits
Definition: TileMuonFillerTool.h:75
D3PD::TileMuonFillerTool::m_phi0
float * m_phi0
Definition: TileMuonFillerTool.h:131
D3PD::TileMuonFillerTool::m_defaultValue
float m_defaultValue
Definition: TileMuonFillerTool.h:52
D3PD::TileMuonFillerTool::m_nucone40
float * m_nucone40
Definition: TileMuonFillerTool.h:117
D3PD::TileMuonFillerTool::m_pT
float * m_pT
Definition: TileMuonFillerTool.h:98
D3PD::TileMuonFillerTool::m_isCorrected
bool * m_isCorrected
Definition: TileMuonFillerTool.h:112
D3PD::TileMuonFillerTool::m_numberOfSCTDeadSensors
unsigned short * m_numberOfSCTDeadSensors
Definition: TileMuonFillerTool.h:93