ATLAS Offline Software
Loading...
Searching...
No Matches
ActsToTrkFitterWrapTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ACTSEVENTCNV_ActsToTrkWrappingTool_H
6#define ACTSEVENTCNV_ActsToTrkWrappingTool_H
7
8// ATHENA
10#include "GaudiKernel/ToolHandle.h"
12
18
19namespace ActsTrk {
30
31class ActsToTrkFitterWrapTool : public extends<AthAlgTool, Trk::ITrackFitter> {
32
33 public:
34 using base_class::base_class;
36
37 StatusCode initialize() override;
38
45 virtual std::unique_ptr<Trk::Track>
46 fit (const EventContext& ctx,
47 const Trk::Track& track,
48 const Trk::RunOutlierRemoval runOutlier = false,
49 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
50
58 virtual std::unique_ptr<Trk::Track>
59 fit(const EventContext& ctx,
60 const Trk::Track& track,
61 const Trk::MeasurementSet& measSet,
62 const Trk::RunOutlierRemoval runOutlier = false,
63 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
64
72 virtual std::unique_ptr<Trk::Track>
73 fit(const EventContext& ctx,
74 const Trk::Track& track,
75 const Trk::PrepRawDataSet& prepRawSet,
76 const Trk::RunOutlierRemoval runOutlier = false,
77 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
78
86 virtual std::unique_ptr<Trk::Track>
87 fit(const EventContext& ctx,
88 const Trk::PrepRawDataSet& prepRawSet,
89 const Trk::TrackParameters& params,
90 const Trk::RunOutlierRemoval runOutlier = false,
91 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
92
100 virtual std::unique_ptr<Trk::Track>
101 fit(const EventContext& ctx,
102 const Trk::MeasurementSet& measSet,
103 const Trk::TrackParameters& params,
104 const Trk::RunOutlierRemoval runOutlier = false,
105 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
106
114 virtual std::unique_ptr<Trk::Track>
115 fit(const EventContext& ctx,
116 const Trk::Track& track1,
117 const Trk::Track& track2,
118 const Trk::RunOutlierRemoval runOutlier = false,
119 const Trk::ParticleHypothesis hypothesis = Trk::nonInteracting) const override;
120
121 private:
130 std::unique_ptr<Trk::Track>
131 reFitImpl(const EventContext& ctx,
132 const Trk::Track& track,
133 const std::vector<Acts::SourceLink>& measColl,
134 const Trk::ParticleHypothesis hypothesis,
135 const bool useScaledCov = false) const;
136
143 std::unique_ptr<Trk::Track>
144 fitImpl(const EventContext& ctx,
145 const std::vector<Acts::SourceLink>& measColl,
146 const Acts::BoundTrackParameters& params) const;
147
148
150 ToolHandle<IFitterTool> m_actsFitterTool{this, "ActsFitterTool", ""};
151
153 ToolHandle<IExtrapolationTool> m_extrapolationTool{this, "ExtrapolationTool", ""};
155 PublicToolHandle<ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", ""};
157 ToolHandle<ITrackConverterTool> m_ATLASConverterTool{this, "ATLASConverterTool", ""};
159 PublicToolHandle<IGeometryRealmConvTool> m_geometryConvTool{this, "GeometryRealmConvTool", ""};
160
162 Gaudi::Property< double > m_option_seedCovarianceScale {this, "SeedCovarianceScale", 1.,
163 "Scale factor for the input seed covariance when doing refitting"};
164
165};
166
167}
168#endif
Tool wrapping an ACTS track fitter tool to expose the Trk::ITrackFitter interface.
Gaudi::Property< double > m_option_seedCovarianceScale
Property for the seed covariance scale factor.
ToolHandle< IExtrapolationTool > m_extrapolationTool
Acts extrapolation tool.
ToolHandle< IFitterTool > m_actsFitterTool
The underlying Acts fitter tool.
PublicToolHandle< ITrackingGeometryTool > m_trackingGeometryTool
Tracking geometry tool.
virtual std::unique_ptr< Trk::Track > fit(const EventContext &ctx, const Trk::Track &track, const Trk::RunOutlierRemoval runOutlier=false, const Trk::ParticleHypothesis hypothesis=Trk::nonInteracting) const override
Re-fit a track using the ACTS fitter tool.
ToolHandle< ITrackConverterTool > m_ATLASConverterTool
Track converter tool for converting Acts tracks to ATLAS tracks.
std::unique_ptr< Trk::Track > fitImpl(const EventContext &ctx, const std::vector< Acts::SourceLink > &measColl, const Acts::BoundTrackParameters &params) const
Implementation of the logic for fitting a track to a set of measurements passed as source links.
std::unique_ptr< Trk::Track > reFitImpl(const EventContext &ctx, const Trk::Track &track, const std::vector< Acts::SourceLink > &measColl, const Trk::ParticleHypothesis hypothesis, const bool useScaledCov=false) const
Implementation of the logic for re-fitting a track adding a set of measurements passed as source link...
PublicToolHandle< IGeometryRealmConvTool > m_geometryConvTool
Geometry realm converter tool.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
std::vector< const MeasurementBase * > MeasurementSet
vector of fittable measurements
Definition FitterTypes.h:30
bool RunOutlierRemoval
switch to toggle quality processing after fit
Definition FitterTypes.h:22
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.
ParametersBase< TrackParametersDim, Charged > TrackParameters
std::vector< const PrepRawData * > PrepRawDataSet
vector of clusters and drift circles
Definition FitterTypes.h:26