ATLAS Offline Software
Loading...
Searching...
No Matches
ITkPixelReadoutManager.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef ITKPIXELREADOUTMANAGER_H
9#define ITKPIXELREADOUTMANAGER_H
10
13
14class PixelID;
15
16namespace InDetDD
17{
19
20namespace ITk
21{
22class PixelReadoutManager final : public extends<AthService, IPixelReadoutManager>
23{
24public:
25 PixelReadoutManager(const std::string &name,
26 ISvcLocator *svc);
27
28 virtual StatusCode initialize() override final;
29
30 virtual PixelModuleType getModuleType(Identifier id) const override final;
31 // Avoid detector element search if already available
33
34 virtual PixelDiodeType getDiodeType(Identifier id) const override final;
35 // Avoid detector element search if already available
36 virtual PixelDiodeType getDiodeType(Identifier id, const SiDetectorElement* element) const override;
37
38 virtual Identifier getPixelIdfromHash(IdentifierHash offlineIdHash,
39 uint32_t FE,
40 uint32_t row,
41 uint32_t column) const override final;
42 virtual Identifier getPixelId(Identifier offlineId,
43 uint32_t FE,
44 uint32_t row,
45 uint32_t column) const override final;
46
47 virtual uint32_t getFE(Identifier diodeId,
48 Identifier offlineId) const override final;
49
50 virtual uint32_t getFE(Identifier diodeId,
51 Identifier offlineId,
52 const SiDetectorElement* element) const override final;
53
54 virtual uint32_t getColumn(Identifier diodeId,
55 Identifier offlineId) const override final;
56
57 uint32_t getColumn(Identifier diodeId,
58 Identifier offlineId,
59 const SiDetectorElement* element) const;
60
61 virtual uint32_t getRow(Identifier diodeId,
62 Identifier offlineId) const override final;
63
64 uint32_t getRow(Identifier diodeId,
65 Identifier offlineId,
66 const SiDetectorElement* element) const;
67
68
69private:
70 ServiceHandle<StoreGateSvc> m_detStore{this, "DetectorStore", "DetectorStore"};
71
74
75 Gaudi::Property<std::string> m_detectorName
76 {this, "DetectorName", "ITkPixel", "Pixel detector name"};
77 Gaudi::Property<std::string> m_pixelIDName
78 {this, "PixelIDName", "PixelID", "Pixel ID name"};
79};
80
81} // namespace ITk
82} // namespace InDetDD
83
84#endif
This is a "hash" representation of an Identifier.
virtual PixelModuleType getModuleType(Identifier id) const override final
ServiceHandle< StoreGateSvc > m_detStore
const PixelDetectorManager * m_detManager
virtual StatusCode initialize() override final
virtual PixelDiodeType getDiodeType(Identifier id) const override final
virtual uint32_t getColumn(Identifier diodeId, Identifier offlineId) const override final
Gaudi::Property< std::string > m_detectorName
virtual Identifier getPixelId(Identifier offlineId, uint32_t FE, uint32_t row, uint32_t column) const override final
PixelReadoutManager(const std::string &name, ISvcLocator *svc)
virtual uint32_t getRow(Identifier diodeId, Identifier offlineId) const override final
virtual uint32_t getFE(Identifier diodeId, Identifier offlineId) const override final
virtual Identifier getPixelIdfromHash(IdentifierHash offlineIdHash, uint32_t FE, uint32_t row, uint32_t column) const override final
Gaudi::Property< std::string > m_pixelIDName
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
Class to hold geometrical description of a silicon detector element.
This is an Identifier helper class for the Pixel subdetector.
Definition PixelID.h:67
Message Stream Member.