ATLAS Offline Software
MuonHitTimingTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUON_MUONHITTIMINGTOOL_H
6 #define MUON_MUONHITTIMINGTOOL_H
7 
8 #include "GaudiKernel/ToolHandle.h"
9 #include "GaudiKernel/ServiceHandle.h"
13 
23 namespace Muon{
24 
25  class MuonClusterOnTrack;
26 
27  class MuonHitTimingTool : virtual public Muon::IMuonHitTimingTool, public AthAlgTool{
28  public:
29  MuonHitTimingTool(const std::string&, const std::string&, const IInterface*);
30 
32  virtual ~MuonHitTimingTool()=default;
33 
35  virtual StatusCode initialize();
36 
38  TimingResult calculateTimingResult( const std::vector<const MuonClusterOnTrack*>& hits ) const;
39 
41  std::set<MuonStationIndex::TechnologyIndex> acceptedTechnologies() const { return m_acceptedTechnologies; }
42 
43  private:
44  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this,"MuonIdHelperSvc","Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
45  ToolHandleArray<IMuonHitTimingTool> m_hitTimingTools;
46  std::set<MuonStationIndex::TechnologyIndex> m_acceptedTechnologies;
47  };
48 }
49 
50 #endif
Muon::MuonHitTimingTool::calculateTimingResult
TimingResult calculateTimingResult(const std::vector< const MuonClusterOnTrack * > &hits) const
Calculate the time offset of a given set of hits wrt to the current bunch.
Definition: MuonHitTimingTool.cxx:52
Muon::MuonHitTimingTool::~MuonHitTimingTool
virtual ~MuonHitTimingTool()=default
default destructor
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::MuonHitTimingTool::m_acceptedTechnologies
std::set< MuonStationIndex::TechnologyIndex > m_acceptedTechnologies
Definition: MuonHitTimingTool.h:46
IMuonHitTimingTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArG4ShowerLibProcessing.hits
hits
Definition: LArG4ShowerLibProcessing.py:136
Muon::MuonHitTimingTool::m_hitTimingTools
ToolHandleArray< IMuonHitTimingTool > m_hitTimingTools
Definition: MuonHitTimingTool.h:45
AthAlgTool.h
Muon::MuonHitTimingTool
Definition: MuonHitTimingTool.h:27
Muon::IMuonHitTimingTool::TimingResult
simple struct holding the result of the tool
Definition: IMuonHitTimingTool.h:39
Muon::MuonHitTimingTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonHitTimingTool.h:44
Muon::IMuonHitTimingTool
Tool to calculate the timing wrt to the current BC Depending to the implementation the tool can handl...
Definition: IMuonHitTimingTool.h:36
Muon::MuonHitTimingTool::acceptedTechnologies
std::set< MuonStationIndex::TechnologyIndex > acceptedTechnologies() const
return a set of technologies accepted by the tool
Definition: MuonHitTimingTool.h:41
AthAlgTool
Definition: AthAlgTool.h:26
Muon::MuonHitTimingTool::MuonHitTimingTool
MuonHitTimingTool(const std::string &, const std::string &, const IInterface *)
Definition: MuonHitTimingTool.cxx:12
Muon::MuonHitTimingTool::initialize
virtual StatusCode initialize()
standard initialization method
Definition: MuonHitTimingTool.cxx:25
IMuonIdHelperSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >