ATLAS Offline Software
IFitterTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSTOOLINTERFACES_IFITTERTOOL_H
6 #define ACTSTOOLINTERFACES_IFITTERTOOL_H
7 
8 #include "GaudiKernel/IAlgTool.h"
9 #include "GaudiKernel/EventContext.h"
10 
12 
14 #include "ActsEvent/Seed.h"
15 
16 #include "Acts/EventData/TrackParameters.hpp"
17 #include "Acts/Geometry/GeometryContext.hpp"
18 #include "Acts/MagneticField/MagneticFieldContext.hpp"
19 #include "Acts/Utilities/CalibrationContext.hpp"
21 #include "TrkTrack/Track.h"
22 namespace ActsTrk {
27  class IFitterTool : virtual public IAlgTool {
28  public:
38  virtual std::unique_ptr<MutableTrackContainer> fit(const Seed &seed,
39  const Acts::BoundTrackParameters& initialParams,
40  const Acts::GeometryContext& tgContext,
41  const Acts::MagneticFieldContext& mfContext,
42  const Acts::CalibrationContext& calContext,
43  const Acts::Surface& targetSurface) const = 0;
44 
55  virtual std::unique_ptr< MutableTrackContainer > fit(const std::vector<const xAOD::UncalibratedMeasurement* > & measList,
56  const Acts::BoundTrackParameters& initialParams,
57  const Acts::GeometryContext& tgContext,
58  const Acts::MagneticFieldContext& mfContext,
59  const Acts::CalibrationContext& calContext,
60  const Acts::Surface* targetSurface = nullptr) const = 0;
61 
62  virtual StatusCode fit(const EventContext& ctx,
63  const TrackContainer::ConstTrackProxy& track,
65  const Acts::PerigeeSurface& pSurface) const = 0;
66 
67  };
68 
69 
70 }
71 
72 #endif
UncalibratedMeasurement.h
ActsTrk::MutableTrackContainer
Acts::TrackContainer< MutableTrackBackend, MutableTrackStateBackend, Acts::detail::ValueHolder > MutableTrackContainer
Definition: TrackContainer.h:26
ActsTrk::IFitterTool::fit
virtual std::unique_ptr< MutableTrackContainer > fit(const Seed &seed, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface &targetSurface) const =0
Tries to fit a short-line track from an initial ITk/ID seed made up out of three spacepoints.
Track.h
ActsTrk::IFitterTool::DeclareInterfaceID
DeclareInterfaceID(IFitterTool, 1, 0)
ActsTrk::IFitterTool::fit
virtual std::unique_ptr< MutableTrackContainer > fit(const std::vector< const xAOD::UncalibratedMeasurement * > &measList, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *targetSurface=nullptr) const =0
Attempt to fit a trajectory from a list of uncalibrated measurements.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
python.TrackLeptonConfig.trackContainer
string trackContainer
Definition: TrackLeptonConfig.py:23
Seed.h
ActsTrk::ActsSeed
Definition: Seed.h:18
ActsTrk::IFitterTool
Generic interface class to fit xAOD::Uncalibrated measurements to (multi)-trajectories.
Definition: IFitterTool.h:27
ActsTrk::IFitterTool::fit
virtual StatusCode fit(const EventContext &ctx, const TrackContainer::ConstTrackProxy &track, MutableTrackContainer &trackContainer, const Acts::PerigeeSurface &pSurface) const =0
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MSTrackingVolumeBuilder.cxx:24
xAOD::track
@ track
Definition: TrackingPrimitives.h:513
TrackContainer.h