ATLAS Offline Software
Loading...
Searching...
No Matches
MsTrackFindingAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONTRACKFINIDNGALGS_MSTRACKFINIDNGALG_H
5#define MUONTRACKFINIDNGALGS_MSTRACKFINIDNGALG_H
6
8
12
16
20
21
24
28
33
35#include "GaudiKernel/SystemOfUnits.h"
36
37
38namespace MuonR4{
40 public:
41 using AthReentrantAlgorithm::AthReentrantAlgorithm;
42
46 virtual StatusCode initialize() override final;
48 virtual StatusCode execute(const EventContext& ctx) const override final;
49
50 using OptBoundPars_t = Acts::Result<Acts::BoundTrackParameters>;
51 using MeasVec_t = std::vector<const xAOD::UncalibratedMeasurement*>;
52 private:
61 bool fitSeedCandidate(const Acts::GeometryContext& tgContext,
62 const Acts::MagneticFieldContext& mfContext,
63 const Acts::CalibrationContext& calContext,
64 const MsTrackSeed& seed,
65 ActsTrk::MutableTrackContainer& outContainer) const;
66
72 std::pair<OptBoundPars_t, MeasVec_t> prepareFit(const Acts::GeometryContext& tgContext,
73 const Acts::CalibrationContext& calContext,
74 const MsTrackSeed& seed) const;
75
76 bool expressAtCaloExit(const EventContext& ctx,
77 ActsTrk::MutableTrackContainer::TrackProxy track) const;
79 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "IdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
83 SG::WriteHandleKey<MsTrackSeedContainer> m_msTrkSeedKey{this, "MsTrkSeedKey", "MsTrackSeeds"};
85 ToolHandle<ITrackSeedingTool> m_seedingTool{this, "SeedingTool", ""};
87 ToolHandle<ActsTrk::IFitterTool> m_trackFitTool{this, "FittingTool", ""};
89 ToolHandle<ISpacePointCalibrator> m_calibTool{this, "Calibrator", ""};
91 ToolHandle<ActsTrk::IExtrapolationTool> m_extrapolationTool{this, "ExtrapolationTool" ,"" };
93 ServiceHandle<ActsTrk::ITrackingGeometrySvc> m_trackingGeometrySvc{this, "TrackingGeometrySvc", "ActsTrackingGeometrySvc"};
95 Gaudi::Property<bool> m_expressAtMsEntrance{this, "expressAtMsEntrance", true};
97 Gaudi::Property<bool> m_ignoreFailedMsEntrance{this, "ignoreFailedExtpMsEntrance", true};
101 ToolHandle<MuonValR4::ITrackVisualizationTool> m_visualizationTool{this, "VisualizationTool", ""};
103 ToolHandle<MuonR4::ITrackSummaryTool> m_summaryTool{this, "SummaryTool" , ""};
105 SG::WriteHandleKey<ActsTrk::TrackContainer> m_writeKey{this, "TrackWriteKey", "MsTracks"};
106 };
107}
108
109#endif
Property holding a SG store/key/clid from which a WriteHandle is made.
Utility class to handle the three contexts neeeded in an ACTS reconstruction job 1) GeometryContext -...
An algorithm that can be simultaneously executed in multiple threads.
bool fitSeedCandidate(const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const MsTrackSeed &seed, ActsTrk::MutableTrackContainer &outContainer) const
Attempts to fit the track seed candidate to a full track and returns whether the fit succeeded.
ServiceHandle< ActsTrk::ITrackingGeometrySvc > m_trackingGeometrySvc
Service handle to the tracking geometry service.
bool expressAtCaloExit(const EventContext &ctx, ActsTrk::MutableTrackContainer::TrackProxy track) const
ToolHandle< ITrackSeedingTool > m_seedingTool
The track seeding tool to construct the seed candidates and to estimate the initial parameters.
Acts::Result< Acts::BoundTrackParameters > OptBoundPars_t
std::vector< const xAOD::UncalibratedMeasurement * > MeasVec_t
SG::WriteHandleKey< ActsTrk::TrackContainer > m_writeKey
Key to the output track container.
SG::WriteHandleKey< MsTrackSeedContainer > m_msTrkSeedKey
Temporary container write handle to push the seeds to store gate for later efficiency analysis.
virtual StatusCode execute(const EventContext &ctx) const override final
Standard algorithm execution hook.
std::pair< OptBoundPars_t, MeasVec_t > prepareFit(const Acts::GeometryContext &tgContext, const Acts::CalibrationContext &calContext, const MsTrackSeed &seed) const
Prepares the input to the fit by collecting the measurements on the segment &.
ToolHandle< ISpacePointCalibrator > m_calibTool
Calibration tool to fill the track states.
ToolHandle< MuonValR4::ITrackVisualizationTool > m_visualizationTool
Visualization tool to debug the track finding.
const MuonGMR4::MuonDetectorManager * m_detMgr
Pointer to the MuonDetectorManager.
ToolHandle< ActsTrk::IFitterTool > m_trackFitTool
Track fitting tool.
virtual StatusCode initialize() override final
Standard algorithm hook to setup the extrapolator, retrieve the tools and declare algorithm's data de...
ToolHandle< ActsTrk::IExtrapolationTool > m_extrapolationTool
Track extrapolation tool.
Gaudi::Property< bool > m_expressAtMsEntrance
Propagate the track at the MS entry and express its parameters.
ActsTrk::ContextUtility m_ctxProvider
Utility to fetch the geometry, magnetic field and calibration context in the event.
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
IdHelperSvc to decode the Identifiers.
Gaudi::Property< bool > m_ignoreFailedMsEntrance
Ignore failed track extrapolations to the entrance.
ToolHandle< MuonR4::ITrackSummaryTool > m_summaryTool
Handle to the muon summary tool.
Property holding a SG store/key/clid from which a WriteHandle is made.
STL class.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
This header ties the generic definitions in this package.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
STL namespace.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
#define private
Definition testRead.cxx:27