ATLAS Offline Software
Loading...
Searching...
No Matches
RDOtoTracccCellConverterAlg.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_RDOTOTRACCCCELLCONVERTERALG_H
5#define ACTSGPUEVENT_RDOTOTRACCCCELLCONVERTERALG_H
6
21#include "Identifier/Identifier.h"
22
24
25#include <unordered_map>
26#include <cstdint>
27
28namespace ActsTrk {
29
31{
32public:
33 using AthReentrantAlgorithm::AthReentrantAlgorithm;
34
35 virtual StatusCode initialize() override;
36 virtual StatusCode execute(const EventContext& ctx) const override;
37 virtual StatusCode finalize() override;
38
39
40private:
42 this, "PixelRDO", "ITkPixelRDOs"};
44 this, "StripRDO", "ITkStripRDOs"};
46 this, "TracccCells", "", "Output traccc cell collection buffer"};
47
48 // object counters
49 mutable std::atomic<int> m_nPix = 0;
50 mutable std::atomic<int> m_nStrip = 0;
51 mutable std::atomic<int> m_nCells = 0;
52
53 const PixelID* m_pixelID{nullptr};
54 const SCT_ID* m_stripID{nullptr};
57
58 ToolHandle<AthDevice::IMemoryResourceTool> m_hostMR{
59 this, "HostMR", "", "The host memory resource tool to use"};
60 ToolHandle<AthDevice::IMemoryResourceTool> m_deviceMR{
61 this, "DeviceMR", "", "The device memory resource tool to use"};
62 ToolHandle<AthDevice::ICopyTool> m_copy{
63 this, "CopyProviderTool", "", "Vecmem copy provider tool"};
64
66 this, "DetectorDescriptionSvc", "ActsTrk::ActsDeviceDetectorDescriptionProviderSvc"};
67
68 const traccc::detector_conditions_description::host* m_hostCond{nullptr};
69
70 // Geometry conversion maps
71 const std::unordered_map<Identifier, uint64_t>* m_athenaToDetray;
72 std::unordered_map<uint64_t, unsigned int> m_DetrayIdToDetDescrIndexMap;
73};
74
75} // namespace ActsTrk
76
77#endif // ACTSGPUEVENT_RDOTOTRACCCCELLCONVERTERALG_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.
const std::unordered_map< Identifier, uint64_t > * m_athenaToDetray
SG::WriteHandleKey< traccc::edm::silicon_cell_collection::buffer > m_tracccCellsKey
ServiceHandle< ActsTrk::IActsDeviceDetectorDescriptionProviderSvc > m_detDescSvc
const traccc::detector_conditions_description::host * m_hostCond
const InDetDD::PixelDetectorManager * m_pixelManager
const InDetDD::SCT_DetectorManager * m_stripManager
std::unordered_map< uint64_t, unsigned int > m_DetrayIdToDetDescrIndexMap
SG::ReadHandleKey< PixelRDO_Container > m_pixelRDOKey
SG::ReadHandleKey< SCT_RDO_Container > m_stripRDOKey
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< AthDevice::IMemoryResourceTool > m_hostMR
ToolHandle< AthDevice::ICopyTool > m_copy
ToolHandle< AthDevice::IMemoryResourceTool > m_deviceMR
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...