ATLAS Offline Software
Loading...
Searching...
No Matches
PixelNNMonitorAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
11
12#ifndef PIXELNNMONITORING_PIXELNNMONITORALG_H
13#define PIXELNNMONITORING_PIXELNNMONITORALG_H
14
16
24
28
29#include <vector>
30
31class PixelID;
32namespace InDetDD { class SiDetectorElement; }
33
34namespace InDet {
35
48public:
49 PixelNNMonitorAlg(const std::string& name, ISvcLocator* pSvcLocator);
50 virtual ~PixelNNMonitorAlg() = default;
51
52 virtual StatusCode initialize() override;
53 virtual StatusCode fillHistograms(const EventContext& ctx) const override;
54
55private:
58 std::vector<Amg::Vector2D> truthPositions(
59 const InDet::PixelCluster& cluster,
60 const InDetDD::SiDetectorElement& element,
61 const std::vector<std::vector<const SiHit*>>& siHitsByHash) const;
62
63 ToolHandle<NnClusterizationFactory> m_nnFactory{
64 this, "NnClusterizationFactory", "InDet::NnClusterizationFactory/NnClusterizationFactory",
65 "NN clusterization factory"};
66
68 this, "PixelClusterContainer", "PixelClusters", "Pixel cluster container"};
69
71 this, "TrackCollection", "CombinedInDetTracks", "Track collection (position-net input only)"};
72
74 this, "BeamSpotKey", "BeamSpotData", "Beam spot data"};
75
77 this, "SiHitCollection", "ITkPixelHits", "Pixel Geant4 hits for truth positions"};
78
80 this, "ClusterSplitProbContainer", "",
81 "Reco cluster split-probability container (isSplit); empty = disabled"};
82
83 ToolHandle<ISiLorentzAngleTool> m_lorentzTool{
84 this, "PixelLorentzAngleTool", "SiLorentzAngleTool/PixelLorentzAngleTool",
85 "Lorentz angle tool, to reproduce the with-track NN incidence angle"};
86
87 const PixelID* m_pixelID{nullptr};
88
89 Gaudi::Property<bool> m_doTruth{this, "doTruth", true,
90 "Use Geant4 SiHit truth for number-net confusion and position residuals/pulls"};
91
92};
93
94} // namespace InDet
95
96#endif
Property holding a SG store/key/clid from which a ReadHandle is made.
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Class to hold geometrical description of a silicon detector element.
virtual StatusCode initialize() override
initialize
virtual ~PixelNNMonitorAlg()=default
std::vector< Amg::Vector2D > truthPositions(const InDet::PixelCluster &cluster, const InDetDD::SiDetectorElement &element, const std::vector< std::vector< const SiHit * > > &siHitsByHash) const
True particle positions (local mm) in the cluster, one per particle, from the matching Geant4 SiHits ...
ToolHandle< NnClusterizationFactory > m_nnFactory
ToolHandle< ISiLorentzAngleTool > m_lorentzTool
Gaudi::Property< bool > m_doTruth
SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
SG::ReadHandleKey< Trk::ClusterSplitProbabilityContainer > m_splitProbKey
SG::ReadHandleKey< InDet::PixelClusterContainer > m_pixelClusterKey
SG::ReadHandleKey< SiHitCollection > m_siHitKey
SG::ReadHandleKey< TrackCollection > m_trackCollectionKey
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
PixelNNMonitorAlg(const std::string &name, ISvcLocator *pSvcLocator)
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:69
Property holding a SG store/key/clid from which a ReadHandle is made.
Message Stream Member.
Primary Vertex Finder.