ATLAS Offline Software
ITrackParamsEstimationTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSTOOLINTERFACES_ITRACKPARAMESTIMATIONTOOL_H
6 #define ACTSTOOLINTERFACES_ITRACKPARAMESTIMATIONTOOL_H
7 
8 // Athena
9 #include "GaudiKernel/IAlgTool.h"
10 #include "GaudiKernel/EventContext.h"
11 #include "Acts/MagneticField/MagneticFieldContext.hpp"
12 #include "ActsEvent/Seed.h"
13 #include "Acts/Geometry/GeometryContext.hpp"
14 #include "Acts/Definitions/TrackParametrization.hpp"
15 #include "Acts/EventData/TrackParameters.hpp"
16 
17 // Others
18 #include <array>
19 #include <functional>
20 
21 namespace ActsTrk {
23  : virtual public IAlgTool {
24  public:
26 
27  virtual
28  std::optional<Acts::BoundTrackParameters>
30  const ActsTrk::Seed& seed,
31  bool useTopSp,
32  const Acts::GeometryContext& geoContext,
33  const Acts::MagneticFieldContext& magFieldContext,
34  std::function<const Acts::Surface&(const ActsTrk::Seed& seed, bool useTopSp)> retrieveSurface) const = 0;
35 
36  virtual
37  std::optional<Acts::BoundTrackParameters>
39  const ActsTrk::Seed& seed,
40  bool useTopSp,
41  const Acts::GeometryContext& geoContext,
42  const Acts::MagneticFieldContext& magFieldContext,
43  const Acts::Surface& surface,
44  const Acts::Vector3& bField) const = 0;
45 
46  using SpacePointIndicesFun_t = std::function<std::array<std::size_t, 3>(std::size_t)>;
48 
49  };
50 
51 } // namespace
52 
53 #endif
54 
ActsTrk::ITrackParamsEstimationTool::estimateTrackParameters
virtual std::optional< Acts::BoundTrackParameters > estimateTrackParameters(const ActsTrk::Seed &seed, bool useTopSp, const Acts::GeometryContext &geoContext, const Acts::MagneticFieldContext &magFieldContext, const Acts::Surface &surface, const Acts::Vector3 &bField) const =0
ActsTrk::ITrackParamsEstimationTool::DeclareInterfaceID
DeclareInterfaceID(ITrackParamsEstimationTool, 1, 0)
ActsTrk::ITrackParamsEstimationTool::estimateTrackParameters
virtual std::optional< Acts::BoundTrackParameters > estimateTrackParameters(const ActsTrk::Seed &seed, bool useTopSp, const Acts::GeometryContext &geoContext, const Acts::MagneticFieldContext &magFieldContext, std::function< const Acts::Surface &(const ActsTrk::Seed &seed, bool useTopSp)> retrieveSurface) const =0
ActsTrk::ITrackParamsEstimationTool::SpacePointIndicesFun_t
std::function< std::array< std::size_t, 3 >(std::size_t)> SpacePointIndicesFun_t
Definition: ITrackParamsEstimationTool.h:46
Seed.h
ActsTrk::ITrackParamsEstimationTool::spacePointIndicesFun
virtual SpacePointIndicesFun_t spacePointIndicesFun() const =0
ActsTrk::ActsSeed
Definition: Seed.h:18
ActsTrk::ITrackParamsEstimationTool
Definition: ITrackParamsEstimationTool.h:23
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MSTrackingVolumeBuilder.cxx:24