ATLAS Offline Software
MuonLayerHoughAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONLAYERHOUGHALG_H
6 #define MUONLAYERHOUGHALG_H
7 
9 #include "GaudiKernel/ToolHandle.h"
13 
15 public:
16  MuonLayerHoughAlg(const std::string& name, ISvcLocator* pSvcLocator);
17 
18  virtual ~MuonLayerHoughAlg() = default;
19 
20  virtual StatusCode initialize() override;
21  virtual StatusCode execute(const EventContext& ctx) const override;
22 
23 private:
24  template <class T> StatusCode retrieveContainer(const EventContext& ctx,
26  const T* & contPtr ) const;
27 
28  SG::ReadHandleKey<Muon::TgcPrepDataContainer> m_keyTgc{this, "TgcPrepDataContainer", "TGC_Measurements"};
29  SG::ReadHandleKey<Muon::RpcPrepDataContainer> m_keyRpc{this, "RpcPrepDataContainer", "RPC_Measurements"};
30  SG::ReadHandleKey<Muon::CscPrepDataContainer> m_keyCsc{this, "CscPrepDataContainer", "CSC_Clusters"};
31  SG::ReadHandleKey<Muon::MdtPrepDataContainer> m_keyMdt{this, "MdtPrepDataContainer", "MDT_DriftCircles"};
32  SG::ReadHandleKey<Muon::sTgcPrepDataContainer> m_keysTgc{this, "sTgcPrepDataContainer", "STGC_Measurements"};
33  SG::ReadHandleKey<Muon::MMPrepDataContainer> m_keyMM{this, "MMPrepDataContainer", "MM_Measurements"};
34 
35  SG::WriteHandleKey<MuonPatternCombinationCollection> m_combis{this, "MuonPatternCombinationCollection", "MuonLayerHoughCombis"};
36  SG::WriteHandleKey<Muon::HoughDataPerSectorVec> m_houghDataPerSectorVecKey{this, "Key_MuonLayerHoughToolHoughDataPerSectorVec",
37  "HoughDataPerSectorVec", "HoughDataPerSectorVec key"};
38  PublicToolHandle<Muon::MuonEDMPrinterTool> m_printer{this, "printerTool", "Muon::MuonEDMPrinterTool/MuonEDMPrinterTool"};
39  ToolHandle<Muon::IMuonHoughPatternFinderTool> m_layerTool{this, "MuonLayerScanTool", "Muon::MuonLayerHoughTool/MuonLayerHoughTool"};
40  Gaudi::Property<bool> m_printSummary{this, "PrintSummary", false};
41 };
42 
43 
44 
45 #endif
MuonLayerHoughAlg::m_keyCsc
SG::ReadHandleKey< Muon::CscPrepDataContainer > m_keyCsc
Definition: MuonLayerHoughAlg.h:30
MuonLayerHoughAlg::m_keysTgc
SG::ReadHandleKey< Muon::sTgcPrepDataContainer > m_keysTgc
Definition: MuonLayerHoughAlg.h:32
MuonEDMPrinterTool.h
MuonLayerHoughAlg::m_keyMM
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_keyMM
Definition: MuonLayerHoughAlg.h:33
MuonLayerHoughAlg::m_keyRpc
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_keyRpc
Definition: MuonLayerHoughAlg.h:29
MuonLayerHoughAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: MuonLayerHoughAlg.cxx:53
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
MuonLayerHoughAlg::initialize
virtual StatusCode initialize() override
Definition: MuonLayerHoughAlg.cxx:34
MuonLayerHoughAlg::m_printer
PublicToolHandle< Muon::MuonEDMPrinterTool > m_printer
Definition: MuonLayerHoughAlg.h:38
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
MuonLayerHoughAlg::m_keyMdt
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_keyMdt
Definition: MuonLayerHoughAlg.h:31
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonLayerHoughAlg::m_houghDataPerSectorVecKey
SG::WriteHandleKey< Muon::HoughDataPerSectorVec > m_houghDataPerSectorVecKey
Definition: MuonLayerHoughAlg.h:36
MuonLayerHoughAlg::retrieveContainer
StatusCode retrieveContainer(const EventContext &ctx, const SG::ReadHandleKey< T > &key, const T *&contPtr) const
Definition: MuonLayerHoughAlg.cxx:20
MuonLayerHoughAlg::m_printSummary
Gaudi::Property< bool > m_printSummary
Definition: MuonLayerHoughAlg.h:40
MuonLayerHoughAlg::m_keyTgc
SG::ReadHandleKey< Muon::TgcPrepDataContainer > m_keyTgc
Definition: MuonLayerHoughAlg.h:28
MuonLayerHoughAlg::m_layerTool
ToolHandle< Muon::IMuonHoughPatternFinderTool > m_layerTool
Definition: MuonLayerHoughAlg.h:39
AthReentrantAlgorithm.h
MuonLayerHoughAlg::MuonLayerHoughAlg
MuonLayerHoughAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: MuonLayerHoughAlg.cxx:16
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
MuonLayerHoughAlg
Definition: MuonLayerHoughAlg.h:14
IMuonHoughPatternFinderTool.h
HoughDataPerSec.h
MuonLayerHoughAlg::m_combis
SG::WriteHandleKey< MuonPatternCombinationCollection > m_combis
Definition: MuonLayerHoughAlg.h:35
MuonLayerHoughAlg::~MuonLayerHoughAlg
virtual ~MuonLayerHoughAlg()=default
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37