ATLAS Offline Software
Loading...
Searching...
No Matches
IDeviceClusterizationAlgProviderTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ACTSTRK_IDEVICECLUSTERIZATIONALGPROVIDERTOOL_H
6#define ACTSTRK_IDEVICECLUSTERIZATIONALGPROVIDERTOOL_H
7
8#include "GaudiKernel/IAlgTool.h"
9#include "GaudiKernel/EventContext.h"
10
11#include <traccc/utils/algorithm.hpp>
12#include <traccc/edm/silicon_cell_collection.hpp>
13#include <traccc/edm/measurement_collection.hpp>
14#include <traccc/clusterization/device/clusterization_algorithm.hpp>
15#include <traccc/cuda/clusterization/measurement_sorting_algorithm.hpp>
16
17namespace ActsTrk {
18
19class IDeviceClusterizationAlgProviderTool : virtual public IAlgTool {
20public:
22
23 virtual std::pair<std::shared_ptr<const vecmem::copy>, std::shared_ptr<const traccc::device::clusterization_algorithm>> getClusterizationAlgorithm(const EventContext& ctx) const = 0;
24
25 using sorting_algorithm_type = traccc::algorithm<traccc::edm::measurement_collection::buffer(const traccc::edm::measurement_collection::const_view&)>;
26 virtual std::pair<std::shared_ptr<const vecmem::copy>, std::shared_ptr<const sorting_algorithm_type>> getSortingAlgorithm(const EventContext& ctx) const = 0;
27
28};
29
30} // namespace ActsTrk
31
32#endif // ACTSTRK_IDEVICECLUSTERIZATIONALGPROVIDERTOOL_H
DeclareInterfaceID(IDeviceClusterizationAlgProviderTool, 1, 0)
virtual std::pair< std::shared_ptr< const vecmem::copy >, std::shared_ptr< const traccc::device::clusterization_algorithm > > getClusterizationAlgorithm(const EventContext &ctx) const =0
traccc::algorithm< traccc::edm::measurement_collection::buffer(const traccc::edm::measurement_collection::const_view &)> sorting_algorithm_type
virtual std::pair< std::shared_ptr< const vecmem::copy >, std::shared_ptr< const sorting_algorithm_type > > getSortingAlgorithm(const EventContext &ctx) const =0
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...