ATLAS Offline Software
Loading...
Searching...
No Matches
CUDATrkParamAlgProviderTool.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_CUDATRKPARAMALGPROVIDERTOOL_H
5#define ACTSGPUPATTERNRECOGNITION_CUDATRKPARAMALGPROVIDERTOOL_H
6
7// Local include(s).
9
10// Framework include(s).
15#include "GaudiKernel/ToolHandle.h"
16
17namespace ActsTrk {
18
35 : public extends<AthAlgTool, IDeviceTrkParamAlgProviderTool> {
36 public:
37 using extends::extends;
39 virtual StatusCode initialize() override;
40
44 getAlgorithm(const EventContext& ctx,
45 const traccc::track_params_estimation_config& trkparam_config)
46 const override;
47
48 private:
51 ToolHandle<AthDevice::IMemoryResourcesTool> m_MRs{
52 this, "MemoryResourcesTool", "",
53 "The memory resources tool to use for allocating memory on the device"};
54
56 ToolHandle<AthDevice::ICopyTool> m_copy{this, "CopyProviderTool", "",
57 "Vecmem copy provider tool"};
58
59 ToolHandle<AthCUDA::IStreamTool> m_streamTool{this, "StreamTool", "",
60 "CUDA stream provider tool"};
61
62}; // class CUDATrkParamAlgProviderTool
63
64} // namespace ActsTrk
65
66#endif // ACTSGPUPATTERNRECOGNITION_CUDATRKPARAMALGPROVIDERTOOL_H
Tool providing CUDA-based traccc track parameter estimation algorithm.
ToolHandle< AthDevice::IMemoryResourcesTool > m_MRs
ToolHandle< AthCUDA::IStreamTool > m_streamTool
ToolHandle< AthDevice::ICopyTool > m_copy
virtual DeviceAlgorithmT< traccc::device::seed_parameter_estimation_algorithm > getAlgorithm(const EventContext &ctx, const traccc::track_params_estimation_config &trkparam_config) const override
Function constructing the traccc cuda track parameter estimation algorithm.
virtual StatusCode initialize() override
Function initializing the algorithm.
Convenience type for the "algorithm provider" tools.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...