ATLAS Offline Software
RPC_TimingTool.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 RPC_TIMINGTOOL_H
6 #define RPC_TIMINGTOOL_H
7 
10 #include "GaudiKernel/ServiceHandle.h"
12 
20 namespace Muon{
21 
22  class MuonClusterOnTrack;
23 
24  class RPC_TimingTool : virtual public Muon::IMuonHitTimingTool, public AthAlgTool{
25  public:
26  RPC_TimingTool(const std::string&, const std::string&, const IInterface*);
27 
28  virtual ~RPC_TimingTool()=default;
29 
30  virtual StatusCode initialize();
31 
33  TimingResult calculateTimingResult( const std::vector<const MuonClusterOnTrack*>& hits ) const;
34 
36  std::set<MuonStationIndex::TechnologyIndex> acceptedTechnologies() const { return std::set<MuonStationIndex::TechnologyIndex>({MuonStationIndex::RPC}); }
37 
38  private:
40  double getError(const Muon::MuonClusterOnTrack&) const ;
41 
42  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
43 
44  };
45 }
46 
47 #endif
Muon::RPC_TimingTool::initialize
virtual StatusCode initialize()
Definition: RPC_TimingTool.cxx:16
Muon::RPC_TimingTool::getError
double getError(const Muon::MuonClusterOnTrack &) const
calculate error on the RPC time
Definition: RPC_TimingTool.cxx:73
Muon::RPC_TimingTool::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: RPC_TimingTool.cxx:21
Muon::RPC_TimingTool::RPC_TimingTool
RPC_TimingTool(const std::string &, const std::string &, const IInterface *)
Definition: RPC_TimingTool.cxx:11
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
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
AthAlgTool.h
Muon::RPC_TimingTool
Definition: RPC_TimingTool.h:24
Muon::RPC_TimingTool::~RPC_TimingTool
virtual ~RPC_TimingTool()=default
Muon::IMuonHitTimingTool::TimingResult
simple struct holding the result of the tool
Definition: IMuonHitTimingTool.h:39
Muon::RPC_TimingTool::acceptedTechnologies
std::set< MuonStationIndex::TechnologyIndex > acceptedTechnologies() const
return a set of technologies accepted by the tool
Definition: RPC_TimingTool.h:36
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::RPC_TimingTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RPC_TimingTool.h:42
Muon::MuonStationIndex::RPC
@ RPC
Definition: MuonStationIndex.h:56
AthAlgTool
Definition: AthAlgTool.h:26
IMuonIdHelperSvc.h
Muon::MuonClusterOnTrack
Base class for Muon cluster RIO_OnTracks.
Definition: MuonClusterOnTrack.h:34
ServiceHandle< Muon::IMuonIdHelperSvc >