ATLAS Offline Software
TrackExtensionAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef ACTSTRACKRECONSTRUCTION_TRACKEXTENSIONALG_H
5 #define ACTSTRACKRECONSTRUCTION_TRACKEXTENSIONALG_H
6 // Base Class
8 
9 // Gaudi includes
10 #include "GaudiKernel/ToolHandle.h"
11 
12 // Tools
15 
16 // ACTS
17 #include "Acts/EventData/TrackContainer.hpp"
18 
19 // ActsTrk
25 
26 // Athena
27 #include "GaudiKernel/EventContext.h"
31 
32 // STL
33 #include <memory>
34 #include <string>
35 
36 // Handle Keys
39 #include "src/detail/Definitions.h"
43 
49 namespace ActsTrk {
51  public:
52 
53  using AthReentrantAlgorithm::AthReentrantAlgorithm;
54  virtual StatusCode initialize() override;
55  virtual StatusCode execute(const EventContext& context) const override;
56  using CKFOptions = Acts::CombinatorialKalmanFilterOptions<detail::RecoTrackContainer>;
57 
58  private:
60  this, "PixelClusterContainer", "", "the pix clusters"};
62  this, "ProtoTracksLocation", "", "Input proto tracks"};
64  this, "TruthLocation", "",
65  "Truth container (to be enabled only for debugging)"};
67  this, "ACTSTracksLocation", "",
68  "Output track collection (ActsTrk variant)"};
70 
72  this, "BeamSpotKey", "BeamSpotData",
73  "SG key for beam spot"};
74 
75  PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{
76  this, "TrackingGeometryTool", ""};
77  ToolHandle<IActsExtrapolationTool> m_extrapolationTool{
78  this, "ExtrapolationTool", ""};
79  ToolHandle<ActsTrk::IOnTrackCalibratorTool<detail::RecoTrackStateContainer>>
80  m_pixelCalibTool{this, "PixelCalibrator", "",
81  "Opt. pixel measurement calibrator"};
82  ToolHandle<ActsTrk::IOnTrackCalibratorTool<detail::RecoTrackStateContainer>>
83  m_stripCalibTool{this, "StripCalibrator", "",
84  "Opt. strip measurement calibrator"};
85  ToolHandle<ActsTrk::IOnTrackCalibratorTool<detail::RecoTrackStateContainer>>
86  m_hgtdCalibTool{this, "HGTDCalibrator", "",
87  "Opt. HGTD measurement calibrator"};
88  ToolHandle<ActsTrk::TrackStatePrinterTool> m_trackStatePrinter{
89  this, "TrackStatePrinter", "", "optional track state printer"};
90  ToolHandle<ActsTrk::IFitterTool> m_actsFitter{
91  this, "ActsFitter", "", "Choice of Acts Fitter (Kalman by default)"};
92 
93  Gaudi::Property<bool> m_propagateForward{this, "PropagateForward", false,
94  "If true propagate forward"};
95 
96  std::unique_ptr<detail::CKF_config> m_ckfConfig;
97  std::unique_ptr<const Acts::Logger> m_logger;
98 
99 };
100 } // namespace ActsTrk
101 #endif // ACTSTRACKRECONSTRUCTION_TRACKEXTENSIONALG_H
ActsTrk::TrackExtensionAlg::m_pixelClusters
SG::ReadHandleKey< xAOD::PixelClusterContainer > m_pixelClusters
Definition: TrackExtensionAlg.h:59
ActsTrk::TrackExtensionAlg::m_extrapolationTool
ToolHandle< IActsExtrapolationTool > m_extrapolationTool
Definition: TrackExtensionAlg.h:77
ActsTrk::TrackExtensionAlg::execute
virtual StatusCode execute(const EventContext &context) const override
Definition: TrackExtensionAlg.cxx:112
Definitions.h
IOnTrackCalibratorTool.h
TruthParticleContainer.h
ActsTrk::TrackExtensionAlg::CKFOptions
Acts::CombinatorialKalmanFilterOptions< detail::RecoTrackContainer > CKFOptions
Definition: TrackExtensionAlg.h:56
ActsTrk::TrackExtensionAlg::m_actsFitter
ToolHandle< ActsTrk::IFitterTool > m_actsFitter
Definition: TrackExtensionAlg.h:90
SG::ReadHandleKey< xAOD::PixelClusterContainer >
TrackFindingMeasurements.h
ActsTrk::TrackExtensionAlg
Definition: TrackExtensionAlg.h:50
ActsTrk::TrackExtensionAlg::m_trackContainerKey
SG::WriteHandleKey< ActsTrk::TrackContainer > m_trackContainerKey
Definition: TrackExtensionAlg.h:66
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
ActsTrk::TrackExtensionAlg::initialize
virtual StatusCode initialize() override
Definition: TrackExtensionAlg.cxx:57
ActsTrk::TrackExtensionAlg::m_stripCalibTool
ToolHandle< ActsTrk::IOnTrackCalibratorTool< detail::RecoTrackStateContainer > > m_stripCalibTool
Definition: TrackExtensionAlg.h:83
SG::WriteHandleKey< ActsTrk::TrackContainer >
ActsTrk::TrackExtensionAlg::m_propagateForward
Gaudi::Property< bool > m_propagateForward
Definition: TrackExtensionAlg.h:93
ActsTrk::TrackExtensionAlg::m_truthParticlesKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticlesKey
Definition: TrackExtensionAlg.h:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PixelClusterContainer.h
ActsTrk::TrackExtensionAlg::m_trackingGeometryTool
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Definition: TrackExtensionAlg.h:75
ActsTrk::MutableTrackContainerHandlesHelper
Definition: TrackContainerHandlesHelper.h:33
TrackStatePrinterTool.h
ActsTrk::TrackExtensionAlg::m_protoTrackCollectionKey
SG::ReadHandleKey< ActsTrk::ProtoTrackCollection > m_protoTrackCollectionKey
Definition: TrackExtensionAlg.h:61
ProtoTrackCollection.h
AthReentrantAlgorithm.h
ActsTrk::TrackExtensionAlg::m_beamSpotKey
SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
Definition: TrackExtensionAlg.h:71
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
ActsTrk::TrackExtensionAlg::m_pixelCalibTool
ToolHandle< ActsTrk::IOnTrackCalibratorTool< detail::RecoTrackStateContainer > > m_pixelCalibTool
Definition: TrackExtensionAlg.h:80
ActsTrk::TrackExtensionAlg::m_hgtdCalibTool
ToolHandle< ActsTrk::IOnTrackCalibratorTool< detail::RecoTrackStateContainer > > m_hgtdCalibTool
Definition: TrackExtensionAlg.h:86
IFitterTool.h
ActsTrk::TrackExtensionAlg::m_tracksBackendHandlesHelper
ActsTrk::MutableTrackContainerHandlesHelper m_tracksBackendHandlesHelper
Definition: TrackExtensionAlg.h:69
SG::ReadCondHandleKey< InDet::BeamSpotData >
ITrackingGeometryTool.h
ActsTrk::TrackExtensionAlg::m_ckfConfig
std::unique_ptr< detail::CKF_config > m_ckfConfig
Definition: TrackExtensionAlg.h:96
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MSTrackingVolumeBuilder.cxx:24
DuplicateSeedDetector.h
BeamSpotData.h
ActsTrk::TrackExtensionAlg::m_logger
std::unique_ptr< const Acts::Logger > m_logger
Definition: TrackExtensionAlg.h:97
TrackContainerHandlesHelper.h
ActsTrk::TrackExtensionAlg::m_trackStatePrinter
ToolHandle< ActsTrk::TrackStatePrinterTool > m_trackStatePrinter
Definition: TrackExtensionAlg.h:88
TrackContainer.h
IActsExtrapolationTool.h
DetectorElementToActsGeometryIdMap.h