ATLAS Offline Software
HgtdClusterizationAlg.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_HGTD_CLUSTERIZATIONALG_H
6 #define ACTSTRK_DATAPREPARATION_HGTD_CLUSTERIZATIONALG_H
7 
10 #include "GaudiKernel/ToolHandle.h"
13 
18 
19 namespace ActsTrk {
20 
22  : public AthReentrantAlgorithm {
23 public:
24  HgtdClusterizationAlg(const std::string& name, ISvcLocator* pSvcLocator);
25  virtual ~HgtdClusterizationAlg() override = default;
26 
27  virtual StatusCode initialize() override;
28  virtual StatusCode execute(const EventContext& ctx) const override;
29  virtual StatusCode finalize() override;
30 
31 private:
32  ToolHandle< IHGTDClusteringTool > m_clusteringTool {this, "ClusteringTool", "", "The Clustering Tool"};
33  ToolHandle< GenericMonitoringTool > m_monTool {this, "MonTool", "", "Monitoring tool"};
34 
35  SG::ReadHandleKey<HGTD_RDO_Container> m_rdoContainerKey{this, "RDOContainerName", "", "Name of the HGTD_RDO container"};
36  SG::WriteHandleKey<xAOD::HGTDClusterContainer> m_clusterContainerKey{this, "ClusterContainerName", "", "Name of the HGTD cluster container"};
37 
38 private:
39  enum EStat {
42  kNStat
43  };
44 
45  mutable std::array<std::atomic<unsigned int>, kNStat> m_stat ATLAS_THREAD_SAFE {};
46 };
47 
48 } // namespace ActsTrk
49 
50 #endif
51 
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
ActsTrk::HgtdClusterizationAlg::m_clusteringTool
ToolHandle< IHGTDClusteringTool > m_clusteringTool
Definition: HgtdClusterizationAlg.h:32
ActsTrk::HgtdClusterizationAlg::initialize
virtual StatusCode initialize() override
Definition: HgtdClusterizationAlg.cxx:17
SG::ReadHandleKey< HGTD_RDO_Container >
HGTD_DetectorManager.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
ActsTrk::HgtdClusterizationAlg::kNStat
@ kNStat
Definition: HgtdClusterizationAlg.h:42
IHGTDClusteringTool.h
GenericMonitoringTool.h
ActsTrk::HgtdClusterizationAlg::kNRdo
@ kNRdo
Definition: HgtdClusterizationAlg.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
ActsTrk::HgtdClusterizationAlg::EStat
EStat
Definition: HgtdClusterizationAlg.h:39
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ActsTrk::HgtdClusterizationAlg::HgtdClusterizationAlg
HgtdClusterizationAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: HgtdClusterizationAlg.cxx:12
HGTDClusterContainer.h
ActsTrk::HgtdClusterizationAlg::m_rdoContainerKey
SG::ReadHandleKey< HGTD_RDO_Container > m_rdoContainerKey
Definition: HgtdClusterizationAlg.h:35
ActsTrk::HgtdClusterizationAlg::kNClusters
@ kNClusters
Definition: HgtdClusterizationAlg.h:41
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
ActsTrk::HgtdClusterizationAlg
Definition: HgtdClusterizationAlg.h:22
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
HGTD_ID.h
ActsTrk::HgtdClusterizationAlg::~HgtdClusterizationAlg
virtual ~HgtdClusterizationAlg() override=default
ActsTrk::HgtdClusterizationAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: HgtdClusterizationAlg.cxx:40
ActsTrk::HgtdClusterizationAlg::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: HgtdClusterizationAlg.h:33
ActsTrk::HgtdClusterizationAlg::m_clusterContainerKey
SG::WriteHandleKey< xAOD::HGTDClusterContainer > m_clusterContainerKey
Definition: HgtdClusterizationAlg.h:36
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:54
ActsTrk::HgtdClusterizationAlg::finalize
virtual StatusCode finalize() override
Definition: HgtdClusterizationAlg.cxx:30
ActsTrk::HgtdClusterizationAlg::ATLAS_THREAD_SAFE
std::array< std::atomic< unsigned int >, kNStat > m_stat ATLAS_THREAD_SAFE
Definition: HgtdClusterizationAlg.h:45