ATLAS Offline Software
MuonHoughDataNtuple.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef HOUGHIDITESTER_H
5 #define HOUGHIDITESTER_H
6 
7 // Framework includes
10 
11 // EDM includes
14 
18 
19 // Muon includes
26 
32 public:
33  MuonHoughDataNtuple(const std::string& name, ISvcLocator* pSvcLocator);
34  virtual ~MuonHoughDataNtuple() override;
35 
36  virtual StatusCode initialize() override;
37  virtual StatusCode execute() override;
38  virtual StatusCode finalize() override;
39 
40 private:
41  int channel(const Identifier& measId) const;
42  int gasGap(const Identifier& measId) const;
43  // truth info from xAOD
45  this, "MuonTruthParticlesKey", "MuonTruthParticles"};
47  this, "MuonTruthSegmentsKey", "MuonTruthSegments"};
48  // Hough Data
50  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
51 
52  // eta hit output tree
53  MuonVal::MuonTesterTree m_eta_hit_tree{"EtaHitHoughData","MuonHoughDataNtuple"};
54  // hough maximum eta hit info
59  // station index/eta/phi
63 
64  // eta hit info from hough maximum
69  // eta hit debug info
71 
72  // local position info from associated PrepRawData
75 
76  // record info from identifier and do truth matching
83 
90 
92 
93  // phi hit output tree
94  MuonVal::MuonTesterTree m_phi_hit_tree{"PhiHitHoughData","MuonHoughDataNtuple"};
95  // hough maximum phi hit info
98  // station index/eta/phi
102 
103  // phi hit info from hough maximum
108  // phi hit debug info
110 
111  // local position info from associated PrepRawData
114 
115  // record info from identifier and do truth matching
122 
129 
131 
132  // truth output tree
133  MuonVal::MuonTesterTree m_truth_tree{"TruthHoughData","MuonHoughDataNtuple"};
134  // muon truth info
136  MuonVal::ScalarBranch<int>& m_truth_barcode{m_truth_tree.newScalar<int>("barcode", -999)}; // FIXME barcode-based
137 
141 
142  // muon truth segment info
145 
149 };
150 
151 #endif // HOUGHIDITESTER_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
MuonHoughDataNtuple::m_maxHit_z0
MuonVal::ScalarBranch< float > & m_maxHit_z0
Definition: MuonHoughDataNtuple.h:56
MuonVal::TgcIdentifierBranch
Branch to store all information of the TgcIdentifier.
Definition: IdentifierBranch.h:83
MuonHoughDataNtuple::m_maxHit_theta
MuonVal::ScalarBranch< float > & m_maxHit_theta
Definition: MuonHoughDataNtuple.h:57
MuonHoughDataNtuple::m_maxPhiHit_z0
MuonVal::ScalarBranch< float > & m_maxPhiHit_z0
Definition: MuonHoughDataNtuple.h:97
MuonHoughDataNtuple::m_hit_global
MuonVal::ThreeVectorBranch m_hit_global
Definition: MuonHoughDataNtuple.h:74
MuonVal::MdtIdentifierBranch
Branch to store all information of the MDT identifier.
Definition: IdentifierBranch.h:41
MuonHoughDataNtuple::m_maxHit_stationIndex
MuonVal::ScalarBranch< int > & m_maxHit_stationIndex
Definition: MuonHoughDataNtuple.h:60
MuonHoughDataNtuple::m_maxHit_sector
MuonVal::ScalarBranch< float > & m_maxHit_sector
Definition: MuonHoughDataNtuple.h:55
MuonHoughDataNtuple::m_hit_tgcIndex
MuonVal::VectorBranch< int > & m_hit_tgcIndex
Definition: MuonHoughDataNtuple.h:86
MuonHoughDataNtuple::m_truth_seg_nPrecisionHits
MuonVal::VectorBranch< int > & m_truth_seg_nPrecisionHits
Definition: MuonHoughDataNtuple.h:146
MuonHoughDataNtuple::m_phiHit_tgcIndex
MuonVal::VectorBranch< int > & m_phiHit_tgcIndex
Definition: MuonHoughDataNtuple.h:125
MuonHoughDataNtuple::m_hit_local
MuonVal::TwoVectorBranch m_hit_local
Definition: MuonHoughDataNtuple.h:73
TruthParticleContainer.h
MuonHoughDataNtuple::m_hit_w
MuonVal::VectorBranch< float > & m_hit_w
Definition: MuonHoughDataNtuple.h:68
MuonHoughDataNtuple::m_hit_cscId
MuonVal::CscIdentifierBranch m_hit_cscId
Definition: MuonHoughDataNtuple.h:78
MuonHoughDataNtuple::m_hit_mmId
MuonVal::TgcIdentifierBranch m_hit_mmId
Definition: MuonHoughDataNtuple.h:81
MuonHoughDataNtuple::m_truth_seg_p
MuonVal::ThreeVectorBranch m_truth_seg_p
Definition: MuonHoughDataNtuple.h:144
MuonHoughDataNtuple::m_phi_hit_tree
MuonVal::MuonTesterTree m_phi_hit_tree
Definition: MuonHoughDataNtuple.h:94
MuonHoughDataNtuple::m_truthMuonKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthMuonKey
Definition: MuonHoughDataNtuple.h:44
MuonHoughDataNtuple::execute
virtual StatusCode execute() override
Definition: MuonHoughDataNtuple.cxx:58
MuonHoughDataNtuple::m_truth_eta
MuonVal::ScalarBranch< float > & m_truth_eta
Definition: MuonHoughDataNtuple.h:139
EventInfoBranch.h
MuonHoughDataNtuple::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonHoughDataNtuple.h:50
MuonVal::VectorBranch< float >
MuonTesterTree.h
MuonHoughDataNtuple::m_maxPhiHit_stationIndex
MuonVal::ScalarBranch< int > & m_maxPhiHit_stationIndex
Definition: MuonHoughDataNtuple.h:99
MuonHoughDataNtuple::m_hit_stgcId
MuonVal::TgcIdentifierBranch m_hit_stgcId
Definition: MuonHoughDataNtuple.h:82
MuonHoughDataNtuple::m_maxHit_stationEta
MuonVal::ScalarBranch< int > & m_maxHit_stationEta
Definition: MuonHoughDataNtuple.h:61
ThreeVectorBranch.h
SG::ReadHandleKey< xAOD::TruthParticleContainer >
MuonVal::ThreeVectorBranch
Definition: ThreeVectorBranch.h:19
MuonHoughDataNtuple::m_phiHit_x
MuonVal::VectorBranch< float > & m_phiHit_x
Definition: MuonHoughDataNtuple.h:104
MuonHoughDataNtuple::m_phiHit_tgcId
MuonVal::TgcIdentifierBranch m_phiHit_tgcId
Definition: MuonHoughDataNtuple.h:118
MuonHoughDataNtuple::m_houghDataPerSectorVecKey
SG::ReadHandleKey< Muon::HoughDataPerSectorVec > m_houghDataPerSectorVecKey
Definition: MuonHoughDataNtuple.h:49
MuonHoughDataNtuple::m_truth_seg_nTriggerHits
MuonVal::VectorBranch< int > & m_truth_seg_nTriggerHits
Definition: MuonHoughDataNtuple.h:147
MuonSegmentContainer.h
AthHistogramAlgorithm.h
MuonLayerHough.h
MuonHoughDataNtuple::~MuonHoughDataNtuple
virtual ~MuonHoughDataNtuple() override
Definition: MuonHoughDataNtuple.cxx:28
MuonHoughDataNtuple::m_truth_barcode
MuonVal::ScalarBranch< int > & m_truth_barcode
Definition: MuonHoughDataNtuple.h:136
MuonHoughDataNtuple::m_truth_phi
MuonVal::ScalarBranch< float > & m_truth_phi
Definition: MuonHoughDataNtuple.h:140
MuonVal::MuonTesterTree
Definition: MuonTesterTree.h:30
IdentifierBranch.h
MuonHoughDataNtuple::m_phiHit_tech
MuonVal::VectorBranch< int > & m_phiHit_tech
Definition: MuonHoughDataNtuple.h:109
MuonHoughDataNtuple::m_hit_rpcId
MuonVal::RpcIdentifierBranch m_hit_rpcId
Definition: MuonHoughDataNtuple.h:80
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
MuonHoughDataNtuple::m_phiHit_local
MuonVal::TwoVectorBranch m_phiHit_local
Definition: MuonHoughDataNtuple.h:112
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonHoughDataNtuple::m_maxPhiHit_stationPhi
MuonVal::ScalarBranch< int > & m_maxPhiHit_stationPhi
Definition: MuonHoughDataNtuple.h:101
MuonVal::RpcIdentifierBranch
Definition: IdentifierBranch.h:53
MuonHoughDataNtuple
Definition: MuonHoughDataNtuple.py:1
MuonHoughDataNtuple::m_hit_rpcIndex
MuonVal::VectorBranch< int > & m_hit_rpcIndex
Definition: MuonHoughDataNtuple.h:87
MuonHoughDataNtuple::m_hit_stgcIndex
MuonVal::VectorBranch< int > & m_hit_stgcIndex
Definition: MuonHoughDataNtuple.h:89
MuonHoughDataNtuple::m_hit_ymax
MuonVal::VectorBranch< float > & m_hit_ymax
Definition: MuonHoughDataNtuple.h:67
MuonHoughDataNtuple::m_maxPhiHit_sector
MuonVal::ScalarBranch< float > & m_maxPhiHit_sector
Definition: MuonHoughDataNtuple.h:96
MuonHoughDataNtuple::m_truth_tree
MuonVal::MuonTesterTree m_truth_tree
Definition: MuonHoughDataNtuple.h:133
MuonHoughDataNtuple::m_phiHit_mdtIndex
MuonVal::VectorBranch< int > & m_phiHit_mdtIndex
Definition: MuonHoughDataNtuple.h:123
MuonHoughDataNtuple::m_hit_ymin
MuonVal::VectorBranch< float > & m_hit_ymin
Definition: MuonHoughDataNtuple.h:66
MuonHoughDataNtuple::m_phiHit_mmId
MuonVal::TgcIdentifierBranch m_phiHit_mmId
Definition: MuonHoughDataNtuple.h:120
MuonHoughDataNtuple::m_hit_cscIndex
MuonVal::VectorBranch< int > & m_hit_cscIndex
Definition: MuonHoughDataNtuple.h:85
MuonHoughDataNtuple::m_phiHit_stgcIndex
MuonVal::VectorBranch< int > & m_phiHit_stgcIndex
Definition: MuonHoughDataNtuple.h:128
MuonHoughDataNtuple::m_maxPhiHit_stationEta
MuonVal::ScalarBranch< int > & m_maxPhiHit_stationEta
Definition: MuonHoughDataNtuple.h:100
MuonHoughDataNtuple::m_truthSegmentsKey
SG::ReadHandleKey< xAOD::MuonSegmentContainer > m_truthSegmentsKey
Definition: MuonHoughDataNtuple.h:46
MuonVal::MuonTesterTree::newVector
VectorBranch< T > & newVector(const std::string &name)
Creates new branches and returns their reference.
AthHistogramAlgorithm
Definition: AthHistogramAlgorithm.h:32
MuonHoughDataNtuple::MuonHoughDataNtuple
MuonHoughDataNtuple(const std::string &name, ISvcLocator *pSvcLocator)
Definition: MuonHoughDataNtuple.cxx:25
MuonHoughDataNtuple::m_hit_tgcId
MuonVal::TgcIdentifierBranch m_hit_tgcId
Definition: MuonHoughDataNtuple.h:79
MuonHoughDataNtuple::m_phiHit_rpcIndex
MuonVal::VectorBranch< int > & m_phiHit_rpcIndex
Definition: MuonHoughDataNtuple.h:126
MuonVal::ScalarBranch< float >
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
MuonHoughDataNtuple::m_phiHit_ymax
MuonVal::VectorBranch< float > & m_phiHit_ymax
Definition: MuonHoughDataNtuple.h:106
MuonVal::MuonTesterTree::newScalar
ScalarBranch< T > & newScalar(const std::string &name)
MuonHoughDataNtuple::m_hit_tech
MuonVal::VectorBranch< int > & m_hit_tech
Definition: MuonHoughDataNtuple.h:70
MuonHoughDataNtuple::m_truth_seg_sector
MuonVal::VectorBranch< int > & m_truth_seg_sector
Definition: MuonHoughDataNtuple.h:148
MuonHoughDataNtuple::initialize
virtual StatusCode initialize() override
Definition: MuonHoughDataNtuple.cxx:30
MuonHoughDataNtuple::m_hit_mdtIndex
MuonVal::VectorBranch< int > & m_hit_mdtIndex
Definition: MuonHoughDataNtuple.h:84
MuonHoughDataNtuple::m_phiHit_cscId
MuonVal::CscIdentifierBranch m_phiHit_cscId
Definition: MuonHoughDataNtuple.h:117
MuonHoughDataNtuple::m_truth_pdgId
MuonVal::ScalarBranch< int > & m_truth_pdgId
Definition: MuonHoughDataNtuple.h:135
MuonHoughDataNtuple::m_truth_pt
MuonVal::ScalarBranch< float > & m_truth_pt
Definition: MuonHoughDataNtuple.h:138
MuonHoughDataNtuple::gasGap
int gasGap(const Identifier &measId) const
HoughDataPerSec.h
MuonHoughDataNtuple::m_phiHit_rpcId
MuonVal::RpcIdentifierBranch m_phiHit_rpcId
Definition: MuonHoughDataNtuple.h:119
MuonHoughDataNtuple::m_phiHit_stgcId
MuonVal::TgcIdentifierBranch m_phiHit_stgcId
Definition: MuonHoughDataNtuple.h:121
MuonHoughDataNtuple::m_hit_mmIndex
MuonVal::VectorBranch< int > & m_hit_mmIndex
Definition: MuonHoughDataNtuple.h:88
MuonHoughDataNtuple::m_maxHit_region
MuonVal::ScalarBranch< int > & m_maxHit_region
Definition: MuonHoughDataNtuple.h:58
MuonHoughDataNtuple::m_phiHit_ymin
MuonVal::VectorBranch< float > & m_phiHit_ymin
Definition: MuonHoughDataNtuple.h:105
MuonHoughDataNtuple::m_maxHit_stationPhi
MuonVal::ScalarBranch< int > & m_maxHit_stationPhi
Definition: MuonHoughDataNtuple.h:62
MuonHoughDataNtuple::m_phiHit_global
MuonVal::ThreeVectorBranch m_phiHit_global
Definition: MuonHoughDataNtuple.h:113
MuonHoughDataNtuple::m_eta_hit_tree
MuonVal::MuonTesterTree m_eta_hit_tree
Definition: MuonHoughDataNtuple.h:53
MuonHoughDataNtuple::m_hit_truthMatched
MuonVal::VectorBranch< bool > & m_hit_truthMatched
Definition: MuonHoughDataNtuple.h:91
TwoVectorBranch.h
MuonVal::CscIdentifierBranch
Branch to store all information of the CscIdentifier.
Definition: IdentifierBranch.h:69
MuonHoughDataNtuple::m_phiHit_mmIndex
MuonVal::VectorBranch< int > & m_phiHit_mmIndex
Definition: MuonHoughDataNtuple.h:127
MuonHoughDataNtuple::finalize
virtual StatusCode finalize() override
Definition: MuonHoughDataNtuple.cxx:50
MuonHoughDataNtuple::m_truth_seg_pos
MuonVal::ThreeVectorBranch m_truth_seg_pos
Definition: MuonHoughDataNtuple.h:143
TruthParticle.h
MuonHoughDataNtuple::m_hit_x
MuonVal::VectorBranch< float > & m_hit_x
Definition: MuonHoughDataNtuple.h:65
MuonHoughDataNtuple::m_phiHit_cscIndex
MuonVal::VectorBranch< int > & m_phiHit_cscIndex
Definition: MuonHoughDataNtuple.h:124
MuonHoughDataNtuple::m_hit_mdtId
MuonVal::MdtIdentifierBranch m_hit_mdtId
Definition: MuonHoughDataNtuple.h:77
IMuonIdHelperSvc.h
MuonHoughDataNtuple::channel
int channel(const Identifier &measId) const
MuonHoughDataNtuple::m_phiHit_w
MuonVal::VectorBranch< float > & m_phiHit_w
Definition: MuonHoughDataNtuple.h:107
MuonHoughDataNtuple::m_phiHit_truthMatched
MuonVal::VectorBranch< bool > & m_phiHit_truthMatched
Definition: MuonHoughDataNtuple.h:130
MuonVal::TwoVectorBranch
Definition: TwoVectorBranch.h:15
MuonHoughDataNtuple::m_phiHit_mdtId
MuonVal::MdtIdentifierBranch m_phiHit_mdtId
Definition: MuonHoughDataNtuple.h:116
ServiceHandle< Muon::IMuonIdHelperSvc >