ATLAS Offline Software
Loading...
Searching...
No Matches
DeviceTrkParamEstimationAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
5#define ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
6
8#include "GaudiKernel/ToolHandle.h"
11
19
20template <typename scalar_t>
21using unit = detray::unit<scalar_t>;
22
23namespace ActsTrk {
40public:
41 using AthReentrantAlgorithm::AthReentrantAlgorithm;
42
44 virtual StatusCode initialize() override;
46 virtual StatusCode execute(const EventContext& ctx) const override;
47
48private:
49
50 virtual StatusCode configureTrkParamEstimation();
51
53 ToolHandle<IDeviceTrkParamAlgProviderTool> m_trkParamAlgProviderTool{
54 this, "TrkParamAlgProviderTool", "",
55 "Tool providing the appropriate backend device track parameter estimation algorithm"};
56
59 this, "InputTracccSpacepoints", "",
60 "Input traccc space points collection buffer"};
61
64 this, "InputTracccMeasurements", "",
65 "Input traccc measurements collection buffer"};
66
69 this, "InputTracccSeeds", "",
70 "Input traccc seeds collection buffer"};
71
73 Gaudi::Property<std::string> m_inputMagFieldKey{
74 this, "InputTracccMagField", "",
75 "Input traccc inhom. mag. field"};
76
80 this, "OutputTracccTrackParameters", "",
81 "Output traccc track parameter collection buffer"};
82
83
84 traccc::track_params_estimation_config m_trkparam_config;
85 const traccc::magnetic_field* m_deviceMagField{nullptr};
86
87};
88
89} // namespace ActsTrk
90
91#endif // ACTSGPUPATTERNRECOGNITION_DEVICETRKPARAMESTIMATIONALG_H
detray::unit< scalar_t > unit
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
Algorithm executing traccc track parameter estimation on the GPU.
Gaudi::Property< std::string > m_inputMagFieldKey
SG::ReadHandleKey< traccc::edm::seed_collection::const_view > m_inputSeedsKey
ToolHandle< IDeviceTrkParamAlgProviderTool > m_trkParamAlgProviderTool
virtual StatusCode execute(const EventContext &ctx) const override
Function executing the algorithm.
virtual StatusCode initialize() override
Function initializing the algorithm.
SG::ReadHandleKey< traccc::edm::spacepoint_collection::const_view > m_inputSpacePointsKey
SG::ReadHandleKey< traccc::edm::measurement_collection::const_view > m_inputMeasKey
SG::WriteHandleKey< traccc::bound_track_parameters_collection_types::buffer > m_outputTrkParamKey
traccc::track_params_estimation_config m_trkparam_config
const traccc::magnetic_field * m_deviceMagField
An algorithm that can be simultaneously executed in multiple threads.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...