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
15#include "traccc/edm/measurement_collection.hpp"
18
25
31
38
39#include "GaudiKernel/ToolHandle.h"
40
41namespace ActsTrk {
42
57{
58public:
59 using AthReentrantAlgorithm::AthReentrantAlgorithm;
60
62 virtual StatusCode initialize() override;
64 virtual StatusCode execute(const EventContext& ctx) const override;
66 virtual StatusCode finalize() override;
67
68private:
69
71 Gaudi::Property<bool> m_convertClustersWithCells{
72 this, "ConvertClustersWithCells", true,
73 "Whether to associate cells with the clusters."};
74
78 this, "InputMeasurements", "TracccMeasurements",
79 "Input traccc measurement collection buffer"};
81 this, "InputClusters", "TracccClusters",
82 "Input traccc cluster collection buffer"};
84 this, "InputCells", "TracccCells",
85 "Input traccc cell collection buffer"};
86
87
91 this, "OutputPixelClusters", "ITkTracccPixelClusters",
92 "Output xAOD pixel cluster container"};
94 this, "OutputPixelSpacePoints", "ITkTracccPixelSpacepoints",
95 "Output xAOD pixel space point container"};
97 this, "OutputMeasToPixelSP", "ITkTracccMeasToPixelSP",
98 "Output mapping from traccc measurement index to pixel spacepoint index"};
100 this, "OutputMeasToStripCl", "ITkTracccMeasToStripCl",
101 "Output mapping from traccc measurement index to strip cluster index"};
103 this, "OutputStripClusters", "ITkTracccStripClusters",
104 "Output xAOD strip cluster container"};
105
106
108 ToolHandle<AthDevice::IMemoryResourceTool> m_hostMR{
109 this, "HostMR", "", "Host memory resource tool"};
110
111 ToolHandle<AthDevice::ICopyTool> m_copy{
112 this, "CopyProviderTool", "", "Vecmem copy provider tool"};
113
114 Gaudi::Property<std::string> m_geoIdMappingObjectName{this, "GeoIdMapping", "", "ID mapping between the three detector description realms."};
116
119 mutable std::atomic<int> m_nPix = 0;
120 mutable std::atomic<int> m_nStrip = 0;
121 mutable std::atomic<int> m_nMeas = 0;
123
126 const PixelID* m_pixelID{nullptr};
127 const SCT_ID* m_stripID{nullptr};
128 Gaudi::Property<std::string> m_idHelperName {this, "IDHelperName", "PixelID",
129 "Pixel-like ID helper name to retrieve from DetectorStore"};
130
134};
135
136} // namespace ActsTrk
137
138#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.
Lookup table between the three surface-identifier "worlds" used across the ACTS / Detray / Athena tra...
Algorithm converting traccc measurements (device buffer) to xAOD clusters (host container).
Gaudi::Property< std::string > m_geoIdMappingObjectName
SG::ReadHandleKey< traccc::edm::measurement_collection::buffer > m_inputMeasKey
SG::WriteHandleKey< xAOD::StripClusterContainer > m_outputStripKey
SG::WriteHandleKey< std::vector< unsigned int > > m_outputMeasToStripClKey
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
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.) {.
SG::WriteHandleKey< std::vector< unsigned int > > m_outputMeasToPixelSPKey
SG::WriteHandleKey< xAOD::PixelClusterContainer > m_outputPixelKey
SG::WriteHandleKey< xAOD::SpacePointContainer > m_outputPixelSpacePointsKey
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...