ATLAS Offline Software
PixelSpacePointFormationAlgBase.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 ACTSTRK_DATAPREPARATION_PIXELSPACEPOINTFORMATIONALG_H
6 #define ACTSTRK_DATAPREPARATION_PIXELSPACEPOINTFORMATIONALG_H
7 
9 #include "GaudiKernel/ToolHandle.h"
11 
15 
17 
19 
23 
24 #include <string>
25 
26 #include "src/Cache.h"
27 
28 namespace ActsTrk {
29 
37  template <bool useCache>
39  public:
41 
43  ISvcLocator* pSvcLocator);
44  virtual ~PixelSpacePointFormationAlgBase() = default;
45  virtual StatusCode initialize() override;
46  virtual StatusCode execute (const EventContext& ctx) const override;
47  virtual StatusCode finalize() override;
49 
50  private:
52 
57 
59 
60  SG::ReadHandleKey<xAOD::PixelClusterContainer> m_pixelClusterContainerKey{this, "PixelClusters", "", "name of the input pixel cluster container"};
62 
64 
65  SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_pixelDetEleCollKey{this, "PixelDetectorElements", "ITkPixelDetectorElementCollection", "Key of input SiDetectorElementCollection for Pixel"};
68 
70 
71  SG::WriteHandleKey<xAOD::SpacePointContainer> m_pixelSpacePointContainerKey {this, "PixelSpacePoints", "", "name of the output pixel space point container"};
73 
75 
76  ToolHandle<ActsTrk::IPixelSpacePointFormationTool> m_spacePointMakerTool{this, "SpacePointFormationTool", "", "Tool dedicated to the creation of pixel space points"};
79  ToolHandle<GenericMonitoringTool> m_monTool{this, "MonTool", "", "Monitoring tool"};
81 
87 
88  Cache_WriteHandleKey m_SPCache{this,"SPCache",""};
90 
91  private:
92  enum EStat {
95  kNStat
96  };
97 
98  mutable std::array<std::atomic<unsigned int>, kNStat> m_stat ATLAS_THREAD_SAFE {};
99  };
100 
101 }
102 
104 
105 #endif // ACTSTRKSPACEPOINTFORMATION_PIXELSPACEPOINTFORMATIONALG_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
SG::UpdateHandleKey
Property holding a SG store/key/clid from which an UpdateHandle is made.
Definition: UpdateHandleKey.h:40
ActsTrk::PixelSpacePointFormationAlgBase< true >::Cache_IDC
typename Cache::Handles< xAOD::SpacePoint >::IDC Cache_IDC
Definition: PixelSpacePointFormationAlgBase.h:82
ActsTrk::PixelSpacePointFormationAlgBase
Definition: PixelSpacePointFormationAlgBase.h:38
ActsTrk::PixelSpacePointFormationAlgBase< true >::Cache_BackendUpdateHandle
typename Cache::Handles< xAOD::SpacePoint >::BackendUpdateHandle Cache_BackendUpdateHandle
Definition: PixelSpacePointFormationAlgBase.h:84
SG::ReadHandleKey< xAOD::PixelClusterContainer >
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
ActsTrk::PixelSpacePointFormationAlgBase::~PixelSpacePointFormationAlgBase
virtual ~PixelSpacePointFormationAlgBase()=default
ActsTrk::PixelSpacePointFormationAlgBase::m_spacePointMakerTool
ToolHandle< ActsTrk::IPixelSpacePointFormationTool > m_spacePointMakerTool
For space point formation.
Definition: PixelSpacePointFormationAlgBase.h:77
IPixelSpacePointFormationTool.h
ActsTrk::PixelSpacePointFormationAlgBase::initialize
virtual StatusCode initialize() override
ActsTrk::PixelSpacePointFormationAlgBase::operator=
PixelSpacePointFormationAlgBase & operator=(const PixelSpacePointFormationAlgBase &)=delete
GenericMonitoringTool.h
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
ActsTrk::PixelSpacePointFormationAlgBase::kNStat
@ kNStat
Definition: PixelSpacePointFormationAlgBase.h:95
ActsTrk::PixelSpacePointFormationAlgBase::m_SPCacheBackend
Cache_BackendUpdateHandleKey m_SPCacheBackend
Definition: PixelSpacePointFormationAlgBase.h:89
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PixelClusterContainer.h
ActsTrk::PixelSpacePointFormationAlgBase::m_pixelDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
To get detector elements.
Definition: PixelSpacePointFormationAlgBase.h:66
ActsTrk::PixelSpacePointFormationAlgBase::kNClusters
@ kNClusters
Definition: PixelSpacePointFormationAlgBase.h:93
ActsTrk::PixelSpacePointFormationAlgBase< true >::Cache_WriteHandleKey
typename Cache::Handles< xAOD::SpacePoint >::WriteHandleKey Cache_WriteHandleKey
Definition: PixelSpacePointFormationAlgBase.h:85
ActsTrk::PixelSpacePointFormationAlgBase::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
For monitoring.
Definition: PixelSpacePointFormationAlgBase.h:79
ActsTrk::PixelSpacePointFormationAlgBase< true >::EStat
EStat
Definition: PixelSpacePointFormationAlgBase.h:92
ActsTrk::PixelSpacePointFormationAlgBase::PixelSpacePointFormationAlgBase
PixelSpacePointFormationAlgBase()=delete
ActsTrk::PixelSpacePointFormationAlgBase::m_pixelClusterContainerKey
SG::ReadHandleKey< xAOD::PixelClusterContainer > m_pixelClusterContainerKey
Definition: PixelSpacePointFormationAlgBase.h:60
ReadCondHandleKey.h
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
SpacePointAuxContainer.h
PixelSpacePointFormationAlgBase.icc
ActsTrk::PixelSpacePointFormationAlgBase::kNSpacePoints
@ kNSpacePoints
Definition: PixelSpacePointFormationAlgBase.h:94
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ActsTrk::PixelSpacePointFormationAlgBase< true >::Cache_WriteHandle
typename Cache::Handles< xAOD::SpacePoint >::WriteHandle Cache_WriteHandle
Definition: PixelSpacePointFormationAlgBase.h:86
Cache.h
SG::UpdateHandle
Definition: UpdateHandle.h:94
ActsTrk::PixelSpacePointFormationAlgBase::m_pixelSpacePointContainerKey
SG::WriteHandleKey< xAOD::SpacePointContainer > m_pixelSpacePointContainerKey
Definition: PixelSpacePointFormationAlgBase.h:71
SiDetectorElementCollection.h
ActsTrk::PixelSpacePointFormationAlgBase::finalize
virtual StatusCode finalize() override
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection >
SG::WriteHandle
Definition: StoreGate/StoreGate/WriteHandle.h:76
SpacePointContainer.h
ActsTrk::PixelSpacePointFormationAlgBase::PixelSpacePointFormationAlgBase
PixelSpacePointFormationAlgBase(const std::string &name, ISvcLocator *pSvcLocator)
ActsTrk::PixelSpacePointFormationAlgBase::ATLAS_THREAD_SAFE
std::array< std::atomic< unsigned int >, kNStat > m_stat ATLAS_THREAD_SAFE
Definition: PixelSpacePointFormationAlgBase.h:98
ActsTrk::PixelSpacePointFormationAlgBase< true >::Cache_BackendUpdateHandleKey
typename Cache::Handles< xAOD::SpacePoint >::BackendUpdateHandleKey Cache_BackendUpdateHandleKey
Definition: PixelSpacePointFormationAlgBase.h:83
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:34
IdentifiableContainerMT
Definition: IdentifiableContainerMT.h:30
ActsTrk::PixelSpacePointFormationAlgBase::execute
virtual StatusCode execute(const EventContext &ctx) const override
ActsTrk::PixelSpacePointFormationAlgBase::m_SPCache
Cache_WriteHandleKey m_SPCache
Definition: PixelSpacePointFormationAlgBase.h:88
ActsTrk::PixelSpacePointFormationAlgBase::PixelSpacePointFormationAlgBase
PixelSpacePointFormationAlgBase(const PixelSpacePointFormationAlgBase &)=delete