48 std::shared_ptr<const traccc::device::clusterization_algorithm> clustering_alg = clustering_pair.second;
52 std::shared_ptr<const IDeviceClusterizationAlgProviderTool::sorting_algorithm_type> sorting_alg = sorting_pair.second;
55 traccc::edm::silicon_cluster_collection::buffer cluster_gpu_buffer;
56 traccc::edm::measurement_collection::buffer measurements_gpu_buffer;
59 ATH_MSG_DEBUG(
"Running clusterization with returning cell info");
60 std::tie(measurements_gpu_buffer, cluster_gpu_buffer) =
63 traccc::device::clustering_keep_disjoint_set{});
65 ATH_MSG_DEBUG(
"Running clusterization without returning cell info");
70 auto sortedTracccMeasurements =
71 (*sorting_alg)(measurements_gpu_buffer);
73 ATH_MSG_DEBUG(
"Reconstructed " << (clustering_pair.first)->get_size(measurements_gpu_buffer) <<
" measurements.");
78 std::make_unique<traccc::edm::measurement_collection::buffer>(
79 std::move(sortedTracccMeasurements))));
84 std::make_unique<traccc::edm::silicon_cluster_collection::buffer>(
85 std::move(cluster_gpu_buffer))));
88 return StatusCode::SUCCESS;