ATLAS Offline Software
InDetToXAODClusterConversion.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 
13 #ifndef INDETRIOMAKER_INDETTOXAODCLUSTERCONVERSION_H
14 #define INDETRIOMAKER_INDETTOXAODCLUSTERCONVERSION_H
15 //STL
16 #include <string>
17 
18 //Gaudi
19 #include "GaudiKernel/ToolHandle.h"
20 
21 // Base class
25 
26 //InDet
27 //can't fwd declare this, needed for typedef to Pixel_RDO_Container
34 
37 
38 class PixelID;
39 class SCT_ID;
40 class HGTD_ID;
41 
42 namespace InDet {
43 
45 public:
46 
48  InDetToXAODClusterConversion(const std::string &name,ISvcLocator *pSvcLocator);
49 
50  //@name Usual algorithm methods
52  virtual StatusCode initialize() override;
53  virtual StatusCode execute(const EventContext& ctx) const override;
56 
61 
62 private:
63  StatusCode convertPixelClusters(const EventContext& ctx) const;
64  StatusCode convertStripClusters(const EventContext& ctx) const;
65  StatusCode convertHgtdClusters(const EventContext& ctx) const;
66 
67 private:
68  const PixelID* m_pixelID {};
69  const SCT_ID* m_stripID {};
70  const HGTD_ID* m_hgtdID {};
71 
72  SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_pixelDetEleCollKey{this, "PixelDetEleCollKey", "ITkPixelDetectorElementCollection", "Key of SiDetectorElementCollection for Pixel"};
73  SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_stripDetEleCollKey{this, "StripDetEleCollKey", "ITkStripDetectorElementCollection", "Key of SiDetectorElementCollection for Strip"};
74  SG::ReadCondHandleKey<InDetDD::HGTD_DetectorElementCollection> m_HGTDDetEleCollKey{this, "HGTDDetEleCollKey", "HGTD_DetectorElementCollection", "Key of HGTD_DetectorElementCollection for HGTD"};
75 
76  SG::ReadHandleKey<InDet::PixelClusterContainer> m_inputPixelClusterContainerKey {this, "InputPixelClustersName", "ITkPixelClusters", "name of the input InDet pixel cluster container"};
77  SG::ReadHandleKey<InDet::SCT_ClusterContainer> m_inputStripClusterContainerKey {this, "InputStripClustersName", "ITkStripClusters", "name of the input InDet strip cluster container"};
78 
79  SG::WriteHandleKey<xAOD::PixelClusterContainer> m_outputPixelClusterContainerKey {this, "OutputPixelClustersName", "ITkPixelClusters", "name of the output xAOD pixel cluster container"};
80  SG::WriteHandleKey<xAOD::StripClusterContainer> m_outputStripClusterContainerKey {this, "OutputStripClustersName", "ITkStripClusters", "name of the output xAOD strip cluster container"};
81 
82  SG::ReadHandleKey<::HGTD_ClusterContainer> m_inputHgtdClusterContainerKey {this, "InputHgtdClustersName", "HGTD_Clusters", "name of the input hgtd cluster container"};
83  SG::WriteHandleKey<xAOD::HGTDClusterContainer> m_outputHgtdClusterContainerKey {this, "OutputHgtdClustersName", "HGTD_Clusters", "name of the output xAOD hgtd cluster container"};
84 
85  Gaudi::Property<bool> m_processPixel {this, "ProcessPixel", false};
86  Gaudi::Property<bool> m_processStrip {this, "ProcessStrip", false};
87  Gaudi::Property<bool> m_processHgtd {this, "ProcessHgtd", false};
88 };
89 
90 }
91 
92 #endif // INDETRIOMAKER_INDETTOXAODCLUSTERCONVERSION_H
93 
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
InDet::InDetToXAODClusterConversion
Definition: InDetToXAODClusterConversion.h:44
InDet::InDetToXAODClusterConversion::m_hgtdID
const HGTD_ID * m_hgtdID
Definition: InDetToXAODClusterConversion.h:70
InDet::InDetToXAODClusterConversion::m_inputPixelClusterContainerKey
SG::ReadHandleKey< InDet::PixelClusterContainer > m_inputPixelClusterContainerKey
Definition: InDetToXAODClusterConversion.h:76
InDet::InDetToXAODClusterConversion::convertHgtdClusters
StatusCode convertHgtdClusters(const EventContext &ctx) const
Definition: InDetToXAODClusterConversion.cxx:169
InDet
Primary Vertex Finder.
Definition: VP1ErrorUtils.h:36
InDet::InDetToXAODClusterConversion::m_outputHgtdClusterContainerKey
SG::WriteHandleKey< xAOD::HGTDClusterContainer > m_outputHgtdClusterContainerKey
Definition: InDetToXAODClusterConversion.h:83
InDet::InDetToXAODClusterConversion::InDetToXAODClusterConversion
InDetToXAODClusterConversion(const InDetToXAODClusterConversion &)=delete
InDet::InDetToXAODClusterConversion::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: InDetToXAODClusterConversion.cxx:64
SG::ReadHandleKey< InDet::PixelClusterContainer >
InDet::InDetToXAODClusterConversion::m_outputPixelClusterContainerKey
SG::WriteHandleKey< xAOD::PixelClusterContainer > m_outputPixelClusterContainerKey
Definition: InDetToXAODClusterConversion.h:79
InDet::InDetToXAODClusterConversion::convertStripClusters
StatusCode convertStripClusters(const EventContext &ctx) const
Definition: InDetToXAODClusterConversion.cxx:126
InDet::InDetToXAODClusterConversion::convertPixelClusters
StatusCode convertPixelClusters(const EventContext &ctx) const
Definition: InDetToXAODClusterConversion.cxx:85
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
InDet::InDetToXAODClusterConversion::m_pixelDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
Definition: InDetToXAODClusterConversion.h:72
InDet::InDetToXAODClusterConversion::m_processStrip
Gaudi::Property< bool > m_processStrip
Definition: InDetToXAODClusterConversion.h:86
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PixelClusterContainer.h
InDet::InDetToXAODClusterConversion::InDetToXAODClusterConversion
InDetToXAODClusterConversion()=delete
HGTDClusterContainer.h
HGTD_ID
Definition: HGTD_ID.h:47
InDet::InDetToXAODClusterConversion::m_stripID
const SCT_ID * m_stripID
Definition: InDetToXAODClusterConversion.h:69
InDet::InDetToXAODClusterConversion::operator=
InDetToXAODClusterConversion & operator=(const InDetToXAODClusterConversion &)=delete
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
PixelClusterContainer.h
InDet::InDetToXAODClusterConversion::m_inputHgtdClusterContainerKey
SG::ReadHandleKey<::HGTD_ClusterContainer > m_inputHgtdClusterContainerKey
Definition: InDetToXAODClusterConversion.h:82
HGTD_DetectorElementCollection.h
SiDetectorElementCollection.h
InDet::InDetToXAODClusterConversion::m_pixelID
const PixelID * m_pixelID
Definition: InDetToXAODClusterConversion.h:68
InDet::InDetToXAODClusterConversion::m_stripDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_stripDetEleCollKey
Definition: InDetToXAODClusterConversion.h:73
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection >
InDet::InDetToXAODClusterConversion::m_HGTDDetEleCollKey
SG::ReadCondHandleKey< InDetDD::HGTD_DetectorElementCollection > m_HGTDDetEleCollKey
Definition: InDetToXAODClusterConversion.h:74
SCT_ID
Definition: SCT_ID.h:68
StripClusterContainer.h
SCT_ClusterContainer.h
InDet::InDetToXAODClusterConversion::m_processHgtd
Gaudi::Property< bool > m_processHgtd
Definition: InDetToXAODClusterConversion.h:87
InDet::InDetToXAODClusterConversion::m_inputStripClusterContainerKey
SG::ReadHandleKey< InDet::SCT_ClusterContainer > m_inputStripClusterContainerKey
Definition: InDetToXAODClusterConversion.h:77
InDet::InDetToXAODClusterConversion::initialize
virtual StatusCode initialize() override
Definition: InDetToXAODClusterConversion.cxx:39
PixelID
Definition: PixelID.h:67
HGTD_ClusterContainer.h
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration.
InDet::InDetToXAODClusterConversion::m_outputStripClusterContainerKey
SG::WriteHandleKey< xAOD::StripClusterContainer > m_outputStripClusterContainerKey
Definition: InDetToXAODClusterConversion.h:80
InDet::InDetToXAODClusterConversion::m_processPixel
Gaudi::Property< bool > m_processPixel
Definition: InDetToXAODClusterConversion.h:85