ATLAS Offline Software
MuonCombinedTimingTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
8 
9 //================ Constructor =================================================
10 
11 Rec::MuonCombinedTimingTool::MuonCombinedTimingTool(const std::string& t, const std::string& n, const IInterface* p)
12  : AthAlgTool(t, n, p)
13 {
14  declareInterface<IMuonCombinedTimingTool>(this);
15 }
16 
17 //================ Initialisation =================================================
18 
21 {
22 
24  if (sc.isFailure()) return sc;
25 
26  if (!m_trtTimingTool.empty()) {
27  ATH_CHECK(m_trtTimingTool.retrieve());
28  ATH_MSG_DEBUG("Retrieved " << m_trtTimingTool.name());
29  }
30  if (!m_caloTimingTool.empty()) {
31  ATH_CHECK(m_caloTimingTool.retrieve());
32  ATH_MSG_DEBUG("Retrieved " << m_caloTimingTool.name());
33  }
34  if (!m_mdtSegmentTimingTool.empty()) {
35  ATH_CHECK(m_mdtSegmentTimingTool.retrieve());
36  ATH_MSG_DEBUG("Retrieved " << m_mdtSegmentTimingTool.name());
37  }
38  if (!m_rpcTimingTool.empty()) {
39  ATH_CHECK(m_rpcTimingTool.retrieve());
40  ATH_MSG_DEBUG("Retrieved " << m_rpcTimingTool.name());
41  }
42 
43  ATH_MSG_DEBUG("initialize() successful in " << name());
44  return StatusCode::SUCCESS;
45 }
46 
47 //============================================================================================
48 std::vector<Trk::SpaceTimePoint*>
50 {
51  std::vector<Trk::SpaceTimePoint*> spaceTimePoints; // empty vector
53  "This tool is not migrated to xAOD yet, please volunteer to update it if you need the information filled");
54 
55  return spaceTimePoints;
56 }
57 
58 
59 // Helper function to figure out which is the appropriate segment container to retrieve
60 // Based on the muon's author
63 {
64  return nullptr;
65 }
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
MuonCombinedTimingTool.h
initialize
void initialize()
Definition: run_EoverP.cxx:894
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SpaceTimePoint.h
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
Rec::MuonCombinedTimingTool::MuonCombinedTimingTool
MuonCombinedTimingTool(const std::string &, const std::string &, const IInterface *)
Definition: MuonCombinedTimingTool.cxx:11
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
Rec::MuonCombinedTimingTool::timeMeasurements
virtual std::vector< Trk::SpaceTimePoint * > timeMeasurements(const xAOD::Muon &muon) const
the main method providing the vector of space-time points
Definition: MuonCombinedTimingTool.cxx:49
DataVector< Trk::Segment >
Rec::MuonCombinedTimingTool::getSegmentContainer
virtual const Trk::SegmentCollection * getSegmentContainer(const xAOD::Muon &muon) const
Definition: MuonCombinedTimingTool.cxx:62
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
Rec::MuonCombinedTimingTool::initialize
virtual StatusCode initialize()
standard Athena-Algorithm method
Definition: MuonCombinedTimingTool.cxx:20
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
AthAlgTool
Definition: AthAlgTool.h:26