Skip to content
Snippets Groups Projects
Commit f1edfbf8 authored by Maksim Penzin's avatar Maksim Penzin
Browse files

private tools

parent 5e3650fc
6 merge requests!58791DataQualityConfigurations: Modify L1Calo config for web display,!46784MuonCondInterface: Enable thread-safety checking.,!46776Updated LArMonitoring config file for WD to match new files produced using MT,!45405updated ART test cron job,!42417Draft: DIRE and VINCIA Base Fragments for Pythia 8.3,!35661Private tool fix/muon combined timing tools
......@@ -9,22 +9,14 @@
#include "MuonCombinedTimingTool.h"
#include "TrkSpaceTimePoint/SpaceTimePoint.h"
#include "TrkToolInterfaces/ITrackTimingTool.h"
//================ Constructor =================================================
Rec::MuonCombinedTimingTool::MuonCombinedTimingTool(const std::string& t, const std::string& n, const IInterface* p)
: AthAlgTool(t, n, p),
m_trtTimingTool("InDet::TRT_TrackTimingTool/TRT_TrackTimingTool"),
m_caloTimingTool("Rec::TrackInCaloTimingTool/TrackInCaloTimingTool"),
m_mdtSegmentTimingTool("Muon::SegmentTimingTool/SegmentTimingTool"),
m_rpcTimingTool("")
: AthAlgTool(t, n, p)
{
declareInterface<IMuonCombinedTimingTool>(this);
declareProperty("InDetTimingTool", m_trtTimingTool);
declareProperty("CaloTimingTool", m_caloTimingTool);
declareProperty("MDT_TimingTool", m_mdtSegmentTimingTool);
declareProperty("RPC_TimingTool", m_rpcTimingTool);
}
//================ Destructor =================================================
......@@ -42,32 +34,20 @@ Rec::MuonCombinedTimingTool::initialize()
if (sc.isFailure()) return sc;
if (!m_trtTimingTool.empty()) {
if (m_trtTimingTool.retrieve().isFailure()) {
ATH_MSG_ERROR("Could not retrieve " << m_trtTimingTool.name());
return StatusCode::FAILURE;
} else
ATH_MSG_DEBUG("Retrieved " << m_trtTimingTool.name());
ATH_CHECK(m_trtTimingTool.retrieve());
ATH_MSG_DEBUG("Retrieved " << m_trtTimingTool.name());
}
if (!m_caloTimingTool.empty()) {
if (m_caloTimingTool.retrieve().isFailure()) {
ATH_MSG_ERROR("Could not retrieve " << m_caloTimingTool.name());
return StatusCode::FAILURE;
} else
ATH_MSG_DEBUG("Retrieved " << m_caloTimingTool.name());
ATH_CHECK(m_caloTimingTool.retrieve());
ATH_MSG_DEBUG("Retrieved " << m_caloTimingTool.name());
}
if (!m_mdtSegmentTimingTool.empty()) {
if (m_mdtSegmentTimingTool.retrieve().isFailure()) {
ATH_MSG_ERROR("Could not retrieve " << m_mdtSegmentTimingTool.name());
return StatusCode::FAILURE;
} else
ATH_MSG_DEBUG("Retrieved " << m_mdtSegmentTimingTool.name());
ATH_CHECK(m_mdtSegmentTimingTool.retrieve());
ATH_MSG_DEBUG("Retrieved " << m_mdtSegmentTimingTool.name());
}
if (!m_rpcTimingTool.empty()) {
if (m_rpcTimingTool.retrieve().isFailure()) {
ATH_MSG_ERROR("Could not retrieve " << m_rpcTimingTool.name());
return StatusCode::FAILURE;
} else
ATH_MSG_DEBUG("Retrieved " << m_rpcTimingTool.name());
ATH_CHECK(m_rpcTimingTool.retrieve());
ATH_MSG_DEBUG("Retrieved " << m_rpcTimingTool.name());
}
/*
......
......@@ -13,6 +13,7 @@
#include "GaudiKernel/ToolHandle.h"
#include "MuonCombinedToolInterfaces/IMuonCombinedTimingTool.h"
#include "TrkSegment/SegmentCollection.h"
#include "TrkToolInterfaces/ITrackTimingTool.h"
#include "xAODMuon/Muon.h"
namespace Trk {
......@@ -48,13 +49,29 @@ class MuonCombinedTimingTool : virtual public IMuonCombinedTimingTool, public At
private:
//! time calculation in subdetector responsibility: inner detector
ToolHandle<Trk::ITrackTimingTool> m_trtTimingTool;
ToolHandle<Trk::ITrackTimingTool> m_trtTimingTool{
this,
"InDetTimingTool",
"InDet::TRT_TrackTimingTool/TRT_TrackTimingTool",
};
//! time calculation in subdetector responsibility: calorimeter
ToolHandle<Trk::ITrackTimingTool> m_caloTimingTool;
ToolHandle<Trk::ITrackTimingTool> m_caloTimingTool{
this,
"CaloTimingTool",
"Rec::TrackInCaloTimingTool/TrackInCaloTimingTool",
};
//! time calculation in subdetector responsibility: muon spectrometer (T0 fit) for MDT and CSC
ToolHandle<Trk::ITrackTimingTool> m_mdtSegmentTimingTool;
ToolHandle<Trk::ITrackTimingTool> m_mdtSegmentTimingTool{
this,
"MDT_TimingTool",
"Muon::SegmentTimingTool/SegmentTimingTool",
};
//! time calculation in subdetector responsibility: muon spectrometer (RPC timing)
ToolHandle<Trk::ITrackTimingTool> m_rpcTimingTool;
ToolHandle<Trk::ITrackTimingTool> m_rpcTimingTool{
this,
"RPC_TimingTool",
"",
};
virtual const Trk::SegmentCollection* getSegmentContainer(const xAOD::Muon& muon) const;
};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment