ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsGPUDataPreparation
src
cuda
CUDASPFormationAlgProviderTool.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 ACTSGPUDATAPREPARATION_CUDASPFORMATIONALGPROVIDERTOOL_H
5
#define ACTSGPUDATAPREPARATION_CUDASPFORMATIONALGPROVIDERTOOL_H
6
7
#include "
AthenaBaseComps/AthAlgTool.h
"
8
#include "
AthDeviceInterfaces/IMemoryResourcesTool.h
"
9
#include "
AthDeviceInterfaces/ICopyTool.h
"
10
#include "
AthCUDAInterfaces/IStreamTool.h
"
11
#include "
../IDeviceSPFormationAlgProviderTool.h
"
12
13
#include "vecmem/utils/cuda/copy.hpp"
14
15
#include <Gaudi/Property.h>
16
#include <memory>
17
#include <string>
18
19
namespace
ActsTrk
{
20
35
class
CUDASPFormationAlgProviderTool
36
:
public
extends<AthAlgTool, IDeviceSPFormationAlgProviderTool>
37
{
38
public
:
39
using
extends::extends;
41
virtual
StatusCode
initialize
()
override
;
42
45
virtual
std::pair<std::shared_ptr<const vecmem::copy>, std::shared_ptr<const traccc::device::silicon_pixel_spacepoint_formation_algorithm>>
getPixelSPFormationAlgorithm
(
const
EventContext& ctx)
const override
;
46
47
48
private
:
49
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
{
57
this
,
"CopyProviderTool"
,
""
,
"Vecmem copy provider tool"
};
58
59
ToolHandle<AthCUDA::IStreamTool>
m_streamTool
{
60
this
,
"StreamTool"
,
""
,
"CUDA stream provider tool"
};
61
62
};
63
64
}
// namespace ActsTrk
65
66
#endif
// ACTSGPUDATAPREPARATION_CUDASPFORMATIONALGPROVIDERTOOL_H
AthAlgTool.h
IStreamTool.h
ICopyTool.h
IDeviceSPFormationAlgProviderTool.h
IMemoryResourcesTool.h
ActsTrk::CUDASPFormationAlgProviderTool
Tool providing CUDA-based traccc spacepoint formation algorithm.
Definition
CUDASPFormationAlgProviderTool.h:37
ActsTrk::CUDASPFormationAlgProviderTool::m_copy
ToolHandle< AthDevice::ICopyTool > m_copy
Definition
CUDASPFormationAlgProviderTool.h:56
ActsTrk::CUDASPFormationAlgProviderTool::getPixelSPFormationAlgorithm
virtual std::pair< std::shared_ptr< const vecmem::copy >, std::shared_ptr< const traccc::device::silicon_pixel_spacepoint_formation_algorithm > > getPixelSPFormationAlgorithm(const EventContext &ctx) const override
Function constructing the traccc cuda clusterization algorithm.
Definition
CUDASPFormationAlgProviderTool.cxx:25
ActsTrk::CUDASPFormationAlgProviderTool::m_MRs
ToolHandle< AthDevice::IMemoryResourcesTool > m_MRs
Definition
CUDASPFormationAlgProviderTool.h:51
ActsTrk::CUDASPFormationAlgProviderTool::initialize
virtual StatusCode initialize() override
Function initializing the algorithm.
Definition
CUDASPFormationAlgProviderTool.cxx:12
ActsTrk::CUDASPFormationAlgProviderTool::m_streamTool
ToolHandle< AthCUDA::IStreamTool > m_streamTool
Definition
CUDASPFormationAlgProviderTool.h:59
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