ATLAS Offline Software
Loading...
Searching...
No Matches
LayerMaterialProvider.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
6// LayerMaterialProvider.h, (c) ATLAS Detector software
8
9#ifndef TRKDETDESCRTOOLS_LAYERMATERIALPROVIDER_H
10#define TRKDETDESCRTOOLS_LAYERMATERIALPROVIDER_H
11
12// Trk
15// Gaudi & Athena
18
19
21namespace Trk {
22
23 class TrackingGeometry;
24 class TrackingVolume;
25 class Layer;
26 class Surface;
27 class LayerMaterialMap;
28
29
37
38 class LayerMaterialProvider //process methods call non-safe code
39 : public extends<AthAlgTool, IGeometryProcessor> {
40
41 public:
43 LayerMaterialProvider(const std::string&,const std::string&,const IInterface*);
44
47
48 virtual StatusCode initialize() override;
49
51 virtual StatusCode process(TrackingGeometry& tgeo) const override;
52
55 virtual StatusCode process(TrackingVolume& tvol,
56 size_t level = 0) const override;
57
58 StatusCode process(TrackingVolume& lay,
59 const LayerMaterialMap& layerMaterialMap,
60 size_t level) const;
61
63 virtual StatusCode process(Layer& lay, size_t level = 0) const override;
64
65 StatusCode process(Layer& lay,
66 const LayerMaterialMap& layerMaterialMap,
67 size_t level) const;
68
70 virtual StatusCode process(Surface& surf, size_t level = 0) const override;
71
72 private:
73
74 void dumpMaterialMap (const LayerMaterialMap& layerMaterialMap) const;
75
77 { this, "LayerMaterialMapKey", "/GLOBAL/TrackingGeo/LayerMaterialV2",
78 "COOL folder for material map" };
79
81 };
82
83} // end of namespace
84
85#endif // TRKDETDESCRTOOLS_LAYERMATERIALPROVIDER_H
86
Define macros for attributes used to control the static checker.
This class extends the DataVector<Trk::LayerMaterialProperties> by an elementTable;.
void dumpMaterialMap(const LayerMaterialMap &layerMaterialMap) const
virtual StatusCode initialize() override
SG::ReadCondHandleKey< LayerMaterialMap > m_layerMaterialMapKey
virtual ~LayerMaterialProvider()
Destructor.
LayerMaterialProvider(const std::string &, const std::string &, const IInterface *)
Constructor.
Base Class for a Detector Layer in the Tracking realm.
Definition Layer.h:72
Abstract Base Class for tracking surfaces.
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
Full Volume description used in Tracking, it inherits from Volume to get the geometrical structure,...
const std::string process
Ensure that the ATLAS eigen extensions are properly loaded.