ATLAS Offline Software
IActsToTrkConverterTool.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 ACTSGEOMETRYINTERFACES_IActsToTrkConverterTool_H
6 #define ACTSGEOMETRYINTERFACES_IActsToTrkConverterTool_H
7 
8 // ATHENA
9 #include <memory>
10 
11 #include "GaudiKernel/IAlgTool.h"
12 #include "GaudiKernel/IInterface.h"
13 #include "StoreGate/WriteHandle.h"
14 #include "TrkParameters/TrackParameters.h" //typedef, cannot fwd declare
16 #include "xAODMeasurementBase/UncalibratedMeasurement.h" //typedef, cannot fwd declare
21 #include "Acts/EventData/TrackParameters.hpp"
22 #include "Acts/EventData/VectorTrackContainer.hpp"
24 
25 namespace Trk {
26 class Surface;
27 class Track;
28 class MeasurementBase;
29 } // namespace Trk
30 
31 namespace InDetDD {
32 class SiDetectorElementCollection;
33 }
34 
35 namespace Acts {
36 class Surface;
37 class SourceLink;
38 }
39 
41 
42 namespace ActsTrk {
43 class IActsToTrkConverterTool : virtual public IAlgTool {
44  public:
46 
48  const Acts::Surface& actsSurface) const = 0;
49 
50  virtual const Acts::Surface& trkSurfaceToActsSurface(
51  const Trk::Surface& atlasSurface) const = 0;
52 
53  virtual Acts::SourceLink trkMeasurementToSourceLink(
54  const Acts::GeometryContext& gctx,
55  const Trk::MeasurementBase &measurement) const = 0;
56 
57  virtual std::vector<Acts::SourceLink> trkTrackToSourceLinks(
58  const Acts::GeometryContext& gctx, const Trk::Track& track) const = 0;
59 
60  virtual const Acts::BoundTrackParameters trkTrackParametersToActsParameters(
61  const Trk::TrackParameters& atlasParameter, const Acts::GeometryContext& gctx, Trk::ParticleHypothesis hypothesis = Trk::pion) const = 0;
62 
63  virtual std::unique_ptr<Trk::TrackParameters>
65  const Acts::BoundTrackParameters& actsParameter,
66  const Acts::GeometryContext& gctx) const = 0;
67 
68 
71  const TrackCollection& trackColl,
72  const Acts::GeometryContext& gctx) const = 0;
73 
74  virtual const IActsTrackingGeometryTool* trackingGeometryTool() const = 0;
75 };
76 } // namespace ActsTrk
77 
78 #endif
UncalibratedMeasurement.h
TrackParameters.h
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:8
TrackParametersContainer.h
IActsTrackingGeometryTool
Definition: IActsTrackingGeometryTool.h:18
ActsTrk::IActsToTrkConverterTool::trackingGeometryTool
virtual const IActsTrackingGeometryTool * trackingGeometryTool() const =0
ActsTrk::IActsToTrkConverterTool::DeclareInterfaceID
DeclareInterfaceID(IActsToTrkConverterTool, 1, 0)
Trk::ParticleHypothesis
ParticleHypothesis
Definition: ParticleHypothesis.h:25
ActsTrk::IActsToTrkConverterTool::trkSurfaceToActsSurface
virtual const Acts::Surface & trkSurfaceToActsSurface(const Trk::Surface &atlasSurface) const =0
TrackStateContainer.h
WriteHandle.h
Handle class for recording to StoreGate.
ActsTrk::IActsToTrkConverterTool::trkTrackToSourceLinks
virtual std::vector< Acts::SourceLink > trkTrackToSourceLinks(const Acts::GeometryContext &gctx, const Trk::Track &track) const =0
Acts
Definition: ChamberAssembleTool.h:18
Trk::pion
@ pion
Definition: ParticleHypothesis.h:29
ActsTrk::IActsToTrkConverterTool
Definition: IActsToTrkConverterTool.h:43
TrackCollection.h
ActsTrk::IActsToTrkConverterTool::trkMeasurementToSourceLink
virtual Acts::SourceLink trkMeasurementToSourceLink(const Acts::GeometryContext &gctx, const Trk::MeasurementBase &measurement) const =0
Trk::ParametersBase
Definition: ParametersBase.h:55
DataVector< Trk::Track >
TrackJacobianContainer.h
ActsTrk::IActsToTrkConverterTool::actsTrackParametersToTrkParameters
virtual std::unique_ptr< Trk::TrackParameters > actsTrackParametersToTrkParameters(const Acts::BoundTrackParameters &actsParameter, const Acts::GeometryContext &gctx) const =0
Trk::MeasurementBase
Definition: MeasurementBase.h:58
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
ActsTrk::IActsToTrkConverterTool::trkTrackParametersToActsParameters
virtual const Acts::BoundTrackParameters trkTrackParametersToActsParameters(const Trk::TrackParameters &atlasParameter, const Acts::GeometryContext &gctx, Trk::ParticleHypothesis hypothesis=Trk::pion) const =0
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:54
ActsTrk::IActsToTrkConverterTool::actsSurfaceToTrkSurface
virtual const Trk::Surface & actsSurfaceToTrkSurface(const Acts::Surface &actsSurface) const =0
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
ActsTrk::MutableTrackContainer
Definition: TrackContainer.h:122
ActsTrk::IActsToTrkConverterTool::trkTrackCollectionToActsTrackContainer
virtual void trkTrackCollectionToActsTrackContainer(ActsTrk::MutableTrackContainer &tc, const TrackCollection &trackColl, const Acts::GeometryContext &gctx) const =0
TrackContainer.h
TrackMeasurementContainer.h