ATLAS Offline Software
Loading...
Searching...
No Matches
XAODToInDetClusterConversion.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#ifndef INDETRIOMAKER_XAODTOINDETCLUSTERCONVERSION_H
6#define INDETRIOMAKER_XAODTOINDETCLUSTERCONVERSION_H
7
8//STL
9#include <string>
10
11//Gaudi
12#include "GaudiKernel/ToolHandle.h"
13
14// Base class
18
19//InDet
20//can't fwd declare this, needed for typedef to Pixel_RDO_Container
23
26
29
32
35
36class PixelID;
37class SCT_ID;
38class HGTD_ID;
39
40namespace InDet {
41
43 : public AthReentrantAlgorithm {
44 public:
45
47 XAODToInDetClusterConversion(const std::string &name,ISvcLocator *pSvcLocator);
48
49 //@name Usual algorithm methods
51 virtual StatusCode initialize() override;
52 virtual StatusCode execute(const EventContext& ctx) const override;
55
60
61 private:
62 StatusCode convertPixelClusters(const EventContext& ctx) const;
63 StatusCode convertStripClusters(const EventContext& ctx) const;
64 StatusCode convertHgtdClusters(const EventContext& ctx) const;
65
66 private:
67 const PixelID* m_pixelID {};
68 const SCT_ID* m_stripID {};
69 const HGTD_ID* m_hgtdID {};
70
71 ToolHandle<ISiLorentzAngleTool> m_lorentzAngleTool {this, "LorentzAngleTool", "", "Tool to retrieve Lorentz angle of SCT"};
72
73 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_pixelDetEleCollKey {this, "PixelDetEleCollKey", "ITkPixelDetectorElementCollection", "Key of SiDetectorElementCollection for Pixel"};
74 SG::ReadHandleKey<xAOD::PixelClusterContainer> m_inputPixelClusterContainerKey {this, "InputPixelClustersName", "ITkPixelClusters", "name of the input xAOD pixel cluster container"};
75
76 SG::WriteHandleKey<InDet::PixelClusterContainer> m_outputPixelClusterContainerKey {this, "OutputPixelClustersName", "ITkPixelClusters", "name of the output InDet pixel cluster container"};
77 SG::WriteHandleKey< InDet::SiClusterContainer > m_pixelClusterContainerLinkKey {this, "PixelClustersLinkName", "ITkPixelClusters"};
78
79 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_stripDetEleCollKey {this, "StripDetEleCollKey", "ITkStripDetectorElementCollection", "Key of SiDetectorElementCollection for Strip"};
80 SG::ReadHandleKey<xAOD::StripClusterContainer> m_inputStripClusterContainerKey {this, "InputStripClustersName", "ITkStripClusters", "name of the input xAOD strip cluster container"};
81
82 SG::WriteHandleKey<InDet::SCT_ClusterContainer> m_outputStripClusterContainerKey {this, "OutputStripClustersName", "ITkStripClusters", "name of the output InDet pixel cluster container"};
83 SG::WriteHandleKey< InDet::SiClusterContainer > m_stripClusterContainerLinkKey {this, "StripClustersLinkName", "ITkStripClusters"};
84
85 SG::ReadCondHandleKey<InDetDD::HGTD_DetectorElementCollection> m_HGTDDetEleCollKey{this, "HGTDDetEleCollKey", "HGTD_DetectorElementCollection", "Key of HGTD_DetectorElementCollection for HGTD"};
86
87 SG::ReadHandleKey<xAOD::HGTDClusterContainer> m_inputHgtdClusterContainerKey {this, "InputHGTDClustersName", "HGTD_Clusters", "name of the input xAOD hgtd cluster container"};
88 SG::WriteHandleKey<::HGTD_ClusterContainer> m_outputHgtdClusterContainerKey {this, "OutputHGTDClustersName", "HGTD_Clusters", "name of the output InDet hgtd cluster container"};
89
90 Gaudi::Property<bool> m_processPixel {this, "ProcessPixel", false};
91 Gaudi::Property<bool> m_processStrip {this, "ProcessStrip", false};
92 Gaudi::Property<bool> m_processHgtd {this, "ProcessHgtd", false};
93};
94
95}
96
97#endif // INDETRIOMAKER_XAODTOINDETCLUSTERCONVERSION_H
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
This is an Identifier helper class for the HGTD subdetector.
Definition HGTD_ID.h:47
ToolHandle< ISiLorentzAngleTool > m_lorentzAngleTool
SG::ReadHandleKey< xAOD::HGTDClusterContainer > m_inputHgtdClusterContainerKey
XAODToInDetClusterConversion(const XAODToInDetClusterConversion &)=delete
SG::WriteHandleKey< InDet::SCT_ClusterContainer > m_outputStripClusterContainerKey
StatusCode convertHgtdClusters(const EventContext &ctx) const
SG::ReadHandleKey< xAOD::PixelClusterContainer > m_inputPixelClusterContainerKey
SG::WriteHandleKey< InDet::SiClusterContainer > m_stripClusterContainerLinkKey
StatusCode convertPixelClusters(const EventContext &ctx) const
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
virtual StatusCode execute(const EventContext &ctx) const override
SG::ReadCondHandleKey< InDetDD::HGTD_DetectorElementCollection > m_HGTDDetEleCollKey
SG::WriteHandleKey< InDet::SiClusterContainer > m_pixelClusterContainerLinkKey
XAODToInDetClusterConversion(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
SG::WriteHandleKey<::HGTD_ClusterContainer > m_outputHgtdClusterContainerKey
XAODToInDetClusterConversion & operator=(const XAODToInDetClusterConversion &)=delete
StatusCode convertStripClusters(const EventContext &ctx) const
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_stripDetEleCollKey
SG::ReadHandleKey< xAOD::StripClusterContainer > m_inputStripClusterContainerKey
SG::WriteHandleKey< InDet::PixelClusterContainer > m_outputPixelClusterContainerKey
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:67
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Primary Vertex Finder.