ATLAS Offline Software
Loading...
Searching...
No Matches
TracccMeasurementConverterAlg.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 ACTSGPUEVENT_TRACCCMEASUREMENTCONVERTERALG_H
5#define ACTSGPUEVENT_TRACCCMEASUREMENTCONVERTERALG_H
6
10
14#include "traccc/edm/measurement_collection.hpp"
17
24
30
37
38
40
41#include "GaudiKernel/ToolHandle.h"
42
43namespace ActsTrk {
44
59{
60public:
61 using AthReentrantAlgorithm::AthReentrantAlgorithm;
62
64 virtual StatusCode initialize() override;
66 virtual StatusCode execute(const EventContext& ctx) const override;
68 virtual StatusCode finalize() override;
69
70private:
71
73 Gaudi::Property<bool> m_convertClustersWithCells{
74 this, "ConvertClustersWithCells", true,
75 "Whether to associate cells with the clusters."};
76
80 this, "InputMeasurements", "TracccMeasurements",
81 "Input traccc measurement collection buffer"};
83 this, "InputClusters", "TracccClusters",
84 "Input traccc cluster collection buffer"};
86 this, "InputCells", "TracccCells",
87 "Input traccc cell collection buffer"};
88
89
93 this, "OutputPixelClusters", "ITkTracccPixelClusters",
94 "Output xAOD pixel cluster container"};
96 this, "OutputStripClusters", "ITkTracccStripClusters",
97 "Output xAOD strip cluster container"};
98
99
101 ToolHandle<AthDevice::IMemoryResourceTool> m_hostMR{
102 this, "HostMR", "", "Host memory resource tool"};
103
104 ToolHandle<AthDevice::ICopyTool> m_copy{
105 this, "CopyProviderTool", "", "Vecmem copy provider tool"};
106
108 this, "DetectorDescriptionSvc", "ActsTrk::JSONDeviceDetectorDescriptionProviderSvc"};
109
112 mutable std::atomic<int> m_nPix = 0;
113 mutable std::atomic<int> m_nStrip = 0;
114 mutable std::atomic<int> m_nMeas = 0;
116
118 const std::unordered_map<uint64_t, Identifier>* m_detrayToAthena{};
119
122 const PixelID* m_pixelID{nullptr};
123 const SCT_ID* m_stripID{nullptr};
124 Gaudi::Property<std::string> m_idHelperName {this, "IDHelperName", "PixelID",
125 "Pixel-like ID helper name to retrieve from DetectorStore"};
126
130};
131
132} // namespace ActsTrk
133
134#endif // ACTSGPUEVENT_TRACCCMEASUREMENTCONVERTERALG_H
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
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.
Algorithm converting traccc measurements (device buffer) to xAOD clusters (host container).
SG::ReadHandleKey< traccc::edm::measurement_collection::buffer > m_inputMeasKey
SG::WriteHandleKey< xAOD::StripClusterContainer > m_outputStripKey
virtual StatusCode finalize() override
Function finalizing the algorthm.
SG::ReadHandleKey< traccc::edm::silicon_cell_collection::buffer > m_inputCellsKey
SG::ReadHandleKey< traccc::edm::silicon_cluster_collection::buffer > m_inputClusterKey
ServiceHandle< ActsTrk::IDeviceDetectorDescriptionProviderSvc > m_detDescSvc
ToolHandle< AthDevice::IMemoryResourceTool > m_hostMR
std::atomic< int > m_nPix
The object counters for debug prints in finalize method {.
const PixelID * m_pixelID
Conversion helpers (to retrieve module design, hash, etc.) {.
const std::unordered_map< uint64_t, Identifier > * m_detrayToAthena
The athena <-> detray identifier map.
SG::WriteHandleKey< xAOD::PixelClusterContainer > m_outputPixelKey
virtual StatusCode initialize() override
Function initializing the algorithm.
const InDetDD::SCT_DetectorManager * m_stripManager
const InDetDD::PixelDetectorManager * m_pixelManager
virtual StatusCode execute(const EventContext &ctx) const override
Function executing the algorithm.
An algorithm that can be simultaneously executed in multiple threads.
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:69
This is an Identifier helper class for the SCT subdetector.
Definition SCT_ID.h:68
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...