ATLAS Offline Software
IFitterTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 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 
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 {
23 
24  class IFitterTool : virtual public IAlgTool {
25  public:
27 
28  virtual
29  std::unique_ptr< ActsTrk::MutableTrackContainer >
30  fit(const EventContext& ctx,
31  const ActsTrk::Seed &seed,
32  const Acts::BoundTrackParameters& initialParams,
33  const Acts::GeometryContext& tgContext,
34  const Acts::MagneticFieldContext& mfContext,
35  const Acts::CalibrationContext& calContext,
36  const TrackingSurfaceHelper &tracking_surface_helper) const = 0;
37 
39  virtual
40  std::unique_ptr< ActsTrk::MutableTrackContainer >
41  fit(const EventContext& ctx,
42  const std::vector<ActsTrk::ATLASUncalibSourceLink> & clusterList,
43  const Acts::BoundTrackParameters& initialParams,
44  const Acts::GeometryContext& tgContext,
45  const Acts::MagneticFieldContext& mfContext,
46  const Acts::CalibrationContext& calContext,
47  const TrackingSurfaceHelper &tracking_surface_helper,
48  const Acts::Surface* targetSurface = nullptr) const = 0;
49  };
50 
51 }
52 
53 #endif
TrackingSurfaceHelper
Simple helper class which allows to access the tracking surface associated to a certain (Si-)measurem...
Definition: TrackingSurfaceHelper.h:17
UncalibratedMeasurement.h
ActsTrk::IFitterTool::fit
virtual std::unique_ptr< ActsTrk::MutableTrackContainer > fit(const EventContext &ctx, const ActsTrk::Seed &seed, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const TrackingSurfaceHelper &tracking_surface_helper) const =0
ActsTrk::Seed
Acts::Seed< xAOD::SpacePoint > Seed
Definition: Seed.h:13
TrackingSurfaceHelper.h
Track.h
ActsTrk::IFitterTool::DeclareInterfaceID
DeclareInterfaceID(IFitterTool, 1, 0)
ActsTrk::IFitterTool::fit
virtual std::unique_ptr< ActsTrk::MutableTrackContainer > fit(const EventContext &ctx, const std::vector< ActsTrk::ATLASUncalibSourceLink > &clusterList, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const TrackingSurfaceHelper &tracking_surface_helper, const Acts::Surface *targetSurface=nullptr) const =0
development interface for EF tracking usage.
Seed.h
ActsTrk::IFitterTool
Definition: IFitterTool.h:24
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:34
TrackContainer.h