4#ifndef ACTSGPUDATAPREPARATION_DEVICECLUSTERIZATIONALG_H
5#define ACTSGPUDATAPREPARATION_DEVICECLUSTERIZATIONALG_H
8#include "GaudiKernel/ToolHandle.h"
21#include "vecmem/utils/cuda/copy.hpp"
27 using AthReentrantAlgorithm::AthReentrantAlgorithm;
30 virtual StatusCode
execute(
const EventContext& ctx)
const override;
36 this,
"RetrieveClusterCells",
true,
37 "Whether to retrieve cell indices associated to the clusters."};
39 this,
"DeviceDigitizationObjectName",
"TracccDeviceDigitizationConfig",
40 "Traccc device digitization object"};
42 this,
"DeviceConditionsObjectName",
"TracccDeviceConditionsConfig",
43 "Traccc device conditions object"};
47 this,
"ClusteringAlgProviderTool",
"",
48 "Tool providing the appropriate backend device clusterization algorithm"};
52 "Device memory resource tool"};
54 ToolHandle<AthDevice::ICopyTool>
m_copy{
55 this,
"CopyProviderTool",
"",
"Vecmem copy provider tool"};
59 this,
"InputTracccCells",
"",
60 "Input traccc cell collection buffer"};
62 this,
"OutputTracccMeasurements",
"",
63 "Output uncalibrated traccc measurement collection buffer"};
65 this,
"OutputTracccClusters",
"",
66 "Output uncalibrated traccc cluster collection buffer"};
70 const traccc::detector_conditions_description::buffer*
m_deviceCond;
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.
Gaudi::Property< std::string > m_deviceCondObjectName
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< AthDevice::ICopyTool > m_copy
SG::WriteHandleKey< traccc::edm::measurement_collection::buffer > m_outputMeasKey
SG::WriteHandleKey< traccc::edm::silicon_cluster_collection::buffer > m_outputClusterKey
const traccc::detector_design_description::buffer * m_deviceDesign
virtual StatusCode initialize() override
ToolHandle< IDeviceClusterizationAlgProviderTool > m_clusteringAlgProviderTool
const traccc::detector_conditions_description::buffer * m_deviceCond
Gaudi::Property< std::string > m_deviceDesignObjectName
Gaudi::Property< bool > m_retrieveClusterCells
SG::ReadHandleKey< traccc::edm::silicon_cell_collection::buffer > m_inputCellsKey
ToolHandle< AthDevice::IMemoryResourceTool > m_deviceMR
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...