ATLAS Offline Software
FPGATrackSimPrototrackFitterAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ACTSTRACKRECONSTRUCTION_FPGATRACKSIMPROTOTRACKFITTERALG_H
6 #define ACTSTRACKRECONSTRUCTION_FPGATRACKSIMPROTOTRACKFITTERALG_H 1
7 
10 
16 
18 
19 namespace FPGATrackSim{
21  public:
22  using ::AthReentrantAlgorithm::AthReentrantAlgorithm;
23  virtual ~FPGATrackSimPrototrackFitterAlg() = default;
24 
26 
27  //IS EXECUTED:
28  virtual StatusCode initialize() override final; //once, before any input is loaded
29  virtual StatusCode execute(const EventContext & ctx) const override final;
30 
31  private:
32  // the track fitter to use for the refit
33  ToolHandle<ActsTrk::IFitterTool> m_actsFitter{this, "ActsFitter", "", "Choice of Acts Fitter (Kalman by default)"};
34  // tracking geometry - used to translate ATLAS to ACTS geometry
35  PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", ""};
36  // ACTS extrapolation tool - provides the magnetic field
37  ToolHandle<IActsExtrapolationTool> m_extrapolationTool{this, "ExtrapolationTool", ""};
38  // output location to write to
39  SG::WriteHandleKey<ActsTrk::TrackContainer> m_trackContainerKey{this, "ACTSTracksLocation", "", "Output track collection (ActsTrk variant)"};
40  // acts helper for the output
42  // prototrack collection from FPGAClusters or FPGATracks
43  SG::ReadHandleKey<ActsTrk::ProtoTrackCollection> m_ProtoTrackCollectionFromFPGAKey{this, "FPGATrackSimActsProtoTracks","","FPGATrackSim PrototrackCollection"};
44  // chrono service
45  ServiceHandle<IChronoStatSvc> m_chrono{this,"ChronoStatSvc","ChronoStatSvc"};
46  };
47 
48 }
49 
50 #endif //> !ACTSTRACKRECONSTRUCTION_PROTOTRACKCREATIONANDFITALG_H
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::initialize
virtual StatusCode initialize() override final
uncomment and implement methods as required
Definition: FPGATrackSimPrototrackFitterAlg.cxx:16
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_actsFitter
ToolHandle< ActsTrk::IFitterTool > m_actsFitter
Definition: FPGATrackSimPrototrackFitterAlg.h:33
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_tracksBackendHandlesHelper
ActsTrk::MutableTrackContainerHandlesHelper m_tracksBackendHandlesHelper
Definition: FPGATrackSimPrototrackFitterAlg.h:41
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::~FPGATrackSimPrototrackFitterAlg
virtual ~FPGATrackSimPrototrackFitterAlg()=default
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey< ActsTrk::ProtoTrackCollection >
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_extrapolationTool
ToolHandle< IActsExtrapolationTool > m_extrapolationTool
Definition: FPGATrackSimPrototrackFitterAlg.h:37
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition: FPGATrackSimPrototrackFitterAlg.cxx:27
SG::WriteHandleKey< ActsTrk::TrackContainer >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_trackingGeometryTool
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Definition: FPGATrackSimPrototrackFitterAlg.h:35
ActsTrk::MutableTrackContainerHandlesHelper
Definition: TrackContainerHandlesHelper.h:33
FPGATrackSim
Definition: FPGATrackSimRegionMergingAlg.h:25
CondHandleKeyArray.h
ProtoTrackCollection.h
AthReentrantAlgorithm.h
IFitterTool.h
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_chrono
ServiceHandle< IChronoStatSvc > m_chrono
Definition: FPGATrackSimPrototrackFitterAlg.h:45
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_trackContainerKey
SG::WriteHandleKey< ActsTrk::TrackContainer > m_trackContainerKey
Definition: FPGATrackSimPrototrackFitterAlg.h:39
FPGATrackSim::FPGATrackSimPrototrackFitterAlg
Definition: FPGATrackSimPrototrackFitterAlg.h:20
ITrackingGeometryTool.h
private
#define private
Definition: xAODTruthCnvAlg.h:20
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition: MSTrackingVolumeBuilder.cxx:24
TrackContainerHandlesHelper.h
IActsExtrapolationTool.h
DetectorElementToActsGeometryIdMap.h
ServiceHandle< IChronoStatSvc >
FPGATrackSim::FPGATrackSimPrototrackFitterAlg::m_ProtoTrackCollectionFromFPGAKey
SG::ReadHandleKey< ActsTrk::ProtoTrackCollection > m_ProtoTrackCollectionFromFPGAKey
Definition: FPGATrackSimPrototrackFitterAlg.h:43