ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsGPUDataPreparation
src
hip
HIPClusterizationAlgProviderTool.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_HIPCLUSTERIZATIONALGPROVIDERTOOL_H
5
#define ACTSGPUDATAPREPARATION_HIPCLUSTERIZATIONALGPROVIDERTOOL_H
6
7
// Local include(s).
8
#include "
../IDeviceClusterizationAlgProviderTool.h
"
9
10
// Framework include(s).
11
#include "
AthDeviceInterfaces/ICopyTool.h
"
12
#include "
AthDeviceInterfaces/IMemoryResourcesTool.h
"
13
#include "
AthHIPInterfaces/IStreamTool.h
"
14
#include "
AthenaBaseComps/AthAlgTool.h
"
15
#include "Gaudi/Property.h"
16
#include "GaudiKernel/ToolHandle.h"
17
18
namespace
ActsTrk
{
19
32
class
HIPClusterizationAlgProviderTool
33
:
public
extends<AthAlgTool, IDeviceClusterizationAlgProviderTool> {
34
public
:
35
using
extends::extends;
37
virtual
StatusCode
initialize
()
override
;
38
41
virtual
DeviceAlgorithmT<traccc::device::clusterization_algorithm>
42
getClusterizationAlgorithm
(
const
EventContext& ctx)
const override
;
43
47
virtual
DeviceAlgorithmT<sorting_algorithm_type>
getSortingAlgorithm
(
48
const
EventContext& ctx)
const override
;
49
50
private
:
51
traccc::clustering_config
m_clusteringConfig
{};
52
54
Gaudi::Property<bool>
m_sortCells
{
55
this
,
"CellSorting"
,
true
,
56
"Whether to sort traccc cells on GPU prior to clusterization"
};
57
59
ToolHandle<AthDevice::IMemoryResourcesTool>
m_MRs
{
60
this
,
"MemoryResourcesTool"
,
""
,
61
"The memory resources tool to use for allocating memory on the device"
};
62
64
ToolHandle<AthDevice::ICopyTool>
m_copy
{
this
,
"CopyProviderTool"
,
""
,
65
"Vecmem copy provider tool"
};
66
67
ToolHandle<AthHIP::IStreamTool>
m_streamTool
{
this
,
"StreamTool"
,
""
,
68
"HIP stream provider tool"
};
69
};
70
71
}
// namespace ActsTrk
72
73
#endif
// ACTSGPUDATAPREPARATION_HIPCLUSTERIZATIONALGPROVIDERTOOL_H
AthAlgTool.h
IStreamTool.h
ICopyTool.h
IDeviceClusterizationAlgProviderTool.h
IMemoryResourcesTool.h
ActsTrk::DeviceAlgorithmT
Convenience type for the "algorithm provider" tools.
Definition
DeviceAlgorithmT.h:15
ActsTrk::HIPClusterizationAlgProviderTool
Tool providing HIP-based traccc clusterization and measurement sorting algorithms.
Definition
HIPClusterizationAlgProviderTool.h:33
ActsTrk::HIPClusterizationAlgProviderTool::m_streamTool
ToolHandle< AthHIP::IStreamTool > m_streamTool
Definition
HIPClusterizationAlgProviderTool.h:67
ActsTrk::HIPClusterizationAlgProviderTool::m_MRs
ToolHandle< AthDevice::IMemoryResourcesTool > m_MRs
Definition
HIPClusterizationAlgProviderTool.h:59
ActsTrk::HIPClusterizationAlgProviderTool::getSortingAlgorithm
virtual DeviceAlgorithmT< sorting_algorithm_type > getSortingAlgorithm(const EventContext &ctx) const override
Function constructing the traccc hip measurement sorting algorithm Neccesary because the CKF requires...
Definition
HIPClusterizationAlgProviderTool.cxx:46
ActsTrk::HIPClusterizationAlgProviderTool::getClusterizationAlgorithm
virtual DeviceAlgorithmT< traccc::device::clusterization_algorithm > getClusterizationAlgorithm(const EventContext &ctx) const override
Function constructing the traccc hip clusterization algorithm.
Definition
HIPClusterizationAlgProviderTool.cxx:31
ActsTrk::HIPClusterizationAlgProviderTool::m_sortCells
Gaudi::Property< bool > m_sortCells
Definition
HIPClusterizationAlgProviderTool.h:54
ActsTrk::HIPClusterizationAlgProviderTool::m_clusteringConfig
traccc::clustering_config m_clusteringConfig
Definition
HIPClusterizationAlgProviderTool.h:51
ActsTrk::HIPClusterizationAlgProviderTool::m_copy
ToolHandle< AthDevice::ICopyTool > m_copy
Definition
HIPClusterizationAlgProviderTool.h:64
ActsTrk::HIPClusterizationAlgProviderTool::initialize
virtual StatusCode initialize() override
Function initializing the algorithm.
Definition
HIPClusterizationAlgProviderTool.cxx:17
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