ATLAS Offline Software
ActsToTrkConvertorAlg.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 ACTSEVENTCNV_ACTSTOTRK_CONVERTER_ALG_H
6 #define ACTSEVENTCNV_ACTSTOTRK_CONVERTER_ALG_H
7 
19 #include "Acts/Geometry/GeometryContext.hpp"
20 
21 namespace ActsTrk
22 {
23 
25  : public AthReentrantAlgorithm
26  {
27  public:
28  ActsToTrkConvertorAlg(const std::string &name,
29  ISvcLocator *pSvcLocator);
30  virtual ~ActsToTrkConvertorAlg() = default;
31 
32  virtual StatusCode initialize() override;
33  virtual StatusCode execute(const EventContext &ctx) const override;
34 
35  private:
36  StatusCode makeTracks(const EventContext &ctx,
37  const Acts::GeometryContext &tgContext,
38  const ActsTrk::TrackContainer &tracks,
39  ::TrackCollection &tracksContainer) const;
40 
41  std::unique_ptr<Trk::MeasurementBase>
43  const Trk::TrackParameters &parm) const;
44 
45  private:
46  ToolHandle<IActsTrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", "ActsTrackingGeometryTool"};
47  ToolHandle<ActsTrk::IActsToTrkConverterTool> m_ATLASConverterTool{this, "ATLASConverterTool", "ActsToTrkConverterTool"};
48  ToolHandle<Trk::IBoundaryCheckTool> m_boundaryCheckTool{this, "BoundaryCheckTool", "InDet::InDetBoundaryCheckTool", "Boundary checking tool for detector sensitivities"};
49  ToolHandle<Trk::IRIO_OnTrackCreator> m_RotCreatorTool{this, "RotCreatorTool", "", "optional RIO_OnTrack creator tool"};
50  ToolHandle<Trk::IExtendedTrackSummaryTool> m_trkSummaryTool{this, "SummaryTool", "ToolHandle for track summary tool"};
51 
52  SG::ReadHandleKey<ActsTrk::TrackContainer> m_tracksContainerKey{this, "ACTSTracksLocation", "SiSPSeededActsTrackContainer",
53  "Output track collection (ActsTrk variant)"};
54  SG::WriteHandleKey<::TrackCollection> m_tracksKey{this, "TracksLocation", "SiSPSeededActsTracks",
55  "Output track collection"};
56  };
57 
58 }
59 
60 #endif
UncalibratedMeasurement.h
ActsTrk::ActsToTrkConvertorAlg::m_ATLASConverterTool
ToolHandle< ActsTrk::IActsToTrkConverterTool > m_ATLASConverterTool
Definition: ActsToTrkConvertorAlg.h:47
ActsTrk::TrackContainer
Definition: TrackContainer.h:31
ActsTrk::ActsToTrkConvertorAlg::m_boundaryCheckTool
ToolHandle< Trk::IBoundaryCheckTool > m_boundaryCheckTool
Definition: ActsToTrkConvertorAlg.h:48
ActsTrk::ActsToTrkConvertorAlg::initialize
virtual StatusCode initialize() override
Definition: ActsToTrkConvertorAlg.cxx:40
IRIO_OnTrackCreator.h
ActsTrk::ActsToTrkConvertorAlg::m_tracksKey
SG::WriteHandleKey<::TrackCollection > m_tracksKey
Definition: ActsToTrkConvertorAlg.h:54
ActsTrk::ActsToTrkConvertorAlg::ActsToTrkConvertorAlg
ActsToTrkConvertorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ActsToTrkConvertorAlg.cxx:34
ActsTrk::ActsToTrkConvertorAlg::~ActsToTrkConvertorAlg
virtual ~ActsToTrkConvertorAlg()=default
SG::ReadHandleKey< ActsTrk::TrackContainer >
ActsTrk::ActsToTrkConvertorAlg::m_tracksContainerKey
SG::ReadHandleKey< ActsTrk::TrackContainer > m_tracksContainerKey
Definition: ActsToTrkConvertorAlg.h:52
ActsTrk::ActsToTrkConvertorAlg::makeRIO_OnTrack
std::unique_ptr< Trk::MeasurementBase > makeRIO_OnTrack(const xAOD::UncalibratedMeasurement &uncalibMeas, const Trk::TrackParameters &parm) const
Definition: ActsToTrkConvertorAlg.cxx:232
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
xAOD::UncalibratedMeasurement_v1
Definition: UncalibratedMeasurement_v1.h:13
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrackCollection.h
ActsTrk::ActsToTrkConvertorAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: ActsToTrkConvertorAlg.cxx:60
Trk::ParametersBase
Definition: ParametersBase.h:55
DataVector< Trk::Track >
ActsTrk::ActsToTrkConvertorAlg::makeTracks
StatusCode makeTracks(const EventContext &ctx, const Acts::GeometryContext &tgContext, const ActsTrk::TrackContainer &tracks, ::TrackCollection &tracksContainer) const
Definition: ActsToTrkConvertorAlg.cxx:82
ReadCondHandleKey.h
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
ActsTrk::ActsToTrkConvertorAlg::m_RotCreatorTool
ToolHandle< Trk::IRIO_OnTrackCreator > m_RotCreatorTool
Definition: ActsToTrkConvertorAlg.h:49
IExtendedTrackSummaryTool.h
IBoundaryCheckTool.h
IActsToTrkConverterTool.h
ActsTrk::ActsToTrkConvertorAlg::m_trkSummaryTool
ToolHandle< Trk::IExtendedTrackSummaryTool > m_trkSummaryTool
Definition: ActsToTrkConvertorAlg.h:50
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MuonDetectorBuilderTool.cxx:54
TrackContainer.h
ActsTrk::ActsToTrkConvertorAlg::m_trackingGeometryTool
ToolHandle< IActsTrackingGeometryTool > m_trackingGeometryTool
Definition: ActsToTrkConvertorAlg.h:46
IActsTrackingGeometryTool.h
ActsTrk::ActsToTrkConvertorAlg
Definition: ActsToTrkConvertorAlg.h:26