ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsGPUPatternRecognition
src
cuda
CUDASeedingAlgProviderTool.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_CUDASEEDINGALGPROVIDERTOOL_H
5
#define ACTSGPUPATTERNRECOGNITION_CUDASEEDINGALGPROVIDERTOOL_H
6
7
// Local include(s).
8
#include "
../IDeviceSeedingAlgProviderTool.h
"
9
10
// Framework include(s).
11
#include "
AthCUDAInterfaces/IStreamTool.h
"
12
#include "
AthDeviceInterfaces/ICopyTool.h
"
13
#include "
AthDeviceInterfaces/IMemoryResourcesTool.h
"
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
#include "GaudiKernel/ToolHandle.h"
16
17
namespace
ActsTrk
{
18
33
class
CUDASeedingAlgProviderTool
34
:
public
extends<AthAlgTool, IDeviceSeedingAlgProviderTool> {
35
public
:
36
using
extends::extends;
38
virtual
StatusCode
initialize
()
override
;
39
42
virtual
DeviceAlgorithmT<traccc::device::triplet_seeding_algorithm>
43
getTripletSeedingAlgorithm
(
44
const
EventContext& ctx,
const
traccc::seedfinder_config& seedfinder,
45
const
traccc::spacepoint_grid_config& grid,
46
const
traccc::seedfilter_config& seedfilter)
const override
;
48
virtual
DeviceAlgorithmT<traccc::device::gbts_seeding_algorithm>
49
getGBTSAlgorithm
(
50
const
EventContext& ctx,
51
const
traccc::gbts_seedfinder_config& gbts_config)
const override
;
52
53
private
:
56
ToolHandle<AthDevice::IMemoryResourcesTool>
m_MRs
{
57
this
,
"MemoryResourcesTool"
,
""
,
58
"The memory resources tool to use for allocating memory on the device"
};
59
61
ToolHandle<AthDevice::ICopyTool>
m_copy
{
this
,
"CopyProviderTool"
,
""
,
62
"Vecmem copy provider tool"
};
63
64
ToolHandle<AthCUDA::IStreamTool>
m_streamTool
{
this
,
"StreamTool"
,
""
,
65
"CUDA stream provider tool"
};
66
};
67
68
}
// namespace ActsTrk
69
70
#endif
// ACTSGPUPATTERNRECOGNITION_CUDASEEDINGALGPROVIDERTOOL_H
AthAlgTool.h
IStreamTool.h
ICopyTool.h
IDeviceSeedingAlgProviderTool.h
IMemoryResourcesTool.h
ActsTrk::CUDASeedingAlgProviderTool
Tool providing CUDA-based traccc seeding algorithm.
Definition
CUDASeedingAlgProviderTool.h:34
ActsTrk::CUDASeedingAlgProviderTool::getGBTSAlgorithm
virtual DeviceAlgorithmT< traccc::device::gbts_seeding_algorithm > getGBTSAlgorithm(const EventContext &ctx, const traccc::gbts_seedfinder_config &gbts_config) const override
Get the device specific GBTS seeding algorithm.
Definition
CUDASeedingAlgProviderTool.cxx:48
ActsTrk::CUDASeedingAlgProviderTool::m_MRs
ToolHandle< AthDevice::IMemoryResourcesTool > m_MRs
Definition
CUDASeedingAlgProviderTool.h:56
ActsTrk::CUDASeedingAlgProviderTool::initialize
virtual StatusCode initialize() override
Function initializing the algorithm.
Definition
CUDASeedingAlgProviderTool.cxx:17
ActsTrk::CUDASeedingAlgProviderTool::m_streamTool
ToolHandle< AthCUDA::IStreamTool > m_streamTool
Definition
CUDASeedingAlgProviderTool.h:64
ActsTrk::CUDASeedingAlgProviderTool::getTripletSeedingAlgorithm
virtual DeviceAlgorithmT< traccc::device::triplet_seeding_algorithm > getTripletSeedingAlgorithm(const EventContext &ctx, const traccc::seedfinder_config &seedfinder, const traccc::spacepoint_grid_config &grid, const traccc::seedfilter_config &seedfilter) const override
Function constructing the traccc cuda seeding algorithm.
Definition
CUDASeedingAlgProviderTool.cxx:30
ActsTrk::CUDASeedingAlgProviderTool::m_copy
ToolHandle< AthDevice::ICopyTool > m_copy
Definition
CUDASeedingAlgProviderTool.h:61
ActsTrk::DeviceAlgorithmT
Convenience type for the "algorithm provider" tools.
Definition
DeviceAlgorithmT.h:15
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition
MdtCalibInput.h:31
Generated on
for ATLAS Offline Software by
1.17.0