ATLAS Offline Software
Loading...
Searching...
No Matches
HGTD_DetectorManager.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef HGTD_READOUTGEOMETRY_HGTD_DETECTORMANAGER_H
6#define HGTD_READOUTGEOMETRY_HGTD_DETECTORMANAGER_H
7
9
10#include "GeoModelKernel/GeoVPhysVol.h"
11#include "GeoModelKernel/GeoVDetectorManager.h"
12
15
17
19
20// Message Stream Member
22
23class StoreGateSvc;
24
32
33class HGTD_DetectorManager : public GeoVDetectorManager, public AthMessaging {
34public:
35
38
41
43 virtual unsigned int getNumTreeTops() const override;
44 virtual PVConstLink getTreeTop(unsigned int i) const override;
45
47 void addTreeTop (PVConstLink treeTop);
48
49 //
50 // Access Readout Elements
51 //
52
55
58
61 int layer,
62 int phi_module,
63 int eta_module) const;
64
67
70
72 void invalidateAll();
73
75 void updateAll() const;
76
78 void setCommonItems(std::unique_ptr<const InDetDD::SiCommonItems>&& commonItems);
79
80private:
81
85
86 const HGTD_ID * getIdHelper() const;
87
88 // Private member data
89 std::vector<PVConstLink> m_volume;
90 // Note that the elements can be altered
93
94 std::unique_ptr<const InDetDD::SiCommonItems> m_commonItems;
95
96};
97
98#ifndef GAUDI_NEUTRAL
101#endif
102
103#endif // HGTD_READOUTGEOMETRY_HGTD_DETECTORMANAGER_H
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
The Detector manager has methods to retrieve the Identifier helper and methods to retrieve the detect...
virtual unsigned int getNumTreeTops() const override
Access to raw geometry:
void addTreeTop(PVConstLink treeTop)
Add a Tree top:
HGTD_DetectorManager(const HGTD_DetectorManager &right)
const InDetDD::HGTD_DetectorElement * getDetectorElement(const Identifier &id) const
access to individual elements : via Identifier
const InDetDD::HGTD_DetectorElementCollection * getDetectorElementCollection() const
Get the collection of element that is held.
void invalidateAll()
Invalidate cache for all detector elements.
void updateAll() const
Update all caches.
~HGTD_DetectorManager()
Destructor.
std::vector< PVConstLink > m_volume
HGTD_DetectorManager(StoreGateSvc *detStore)
Constructor.
std::unique_ptr< const InDetDD::SiCommonItems > m_commonItems
void addDetectorElement(InDetDD::HGTD_DetectorElement *element)
Add elememts.
const HGTD_ID * getIdHelper() const
const HGTD_DetectorManager & operator=(const HGTD_DetectorManager &right)
Prevent copy and assignment.
virtual PVConstLink getTreeTop(unsigned int i) const override
void setCommonItems(std::unique_ptr< const InDetDD::SiCommonItems > &&commonItems)
Set SiCommonItems.
InDetDD::HGTD_DetectorElementCollection m_elementCollection
This is an Identifier helper class for the HGTD subdetector.
Definition HGTD_ID.h:47
This is a "hash" representation of an Identifier.
Class to hold geometrical description of an HGTD detector element.
The Athena Transient Store API.
DataVector< HGTD_DetectorElement > HGTD_DetectorElementCollection