ATLAS Offline Software
Loading...
Searching...
No Matches
TRT_LayerBuilder.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INDETTRACKINGGEOMETRY_TRT_LAYERBUILDER_H
6#define INDETTRACKINGGEOMETRY_TRT_LAYERBUILDER_H
7
8// Athena
10// Trk
12// STL
13#include <vector>
14
15namespace InDetDD {
17}
18
19namespace Trk {
20 class CylinderLayer;
21 class DiscLayer;
22 class PlaneLayer;
23}
24
25namespace InDet {
26
32 public extends<TRT_LayerBuilderImpl, Trk::ILayerBuilder> {
33
35 friend class TRT_VolumeBuilder;
36
37 public:
38
40 TRT_LayerBuilder(const std::string&,const std::string&,const IInterface*);
42 virtual ~TRT_LayerBuilder() = default;
43
45 virtual StatusCode initialize() override final;
46
48 virtual std::unique_ptr<const std::vector<Trk::CylinderLayer*> > cylindricalLayers() const override final;
49
51 virtual std::unique_ptr<const std::vector<Trk::DiscLayer*> > discLayers() const override final;
52
54 virtual std::unique_ptr<const std::vector<Trk::PlaneLayer*> > planarLayers() const override final;
55
57 virtual const std::string& identification() const override final;
58
59 private:
60
61 const InDetDD::TRT_DetectorManager* m_trtMgr{};
62 StringProperty m_trtMgrLocation{this, "TRT_DetManagerLocation", "TRT"};
63 };
64
65 inline std::unique_ptr<const std::vector<Trk::PlaneLayer* > > TRT_LayerBuilder::planarLayers() const
66 { return nullptr; }
67
68 inline const std::string& TRT_LayerBuilder::identification() const
69 { return m_identification; }
70
71} // end of namespace
72
73
74#endif // INDETTRACKINGGEOMETRY_TRT_LAYERBUILDER_H
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements...
virtual std::unique_ptr< const std::vector< Trk::PlaneLayer * > > planarLayers() const override final
LayerBuilder interface method - returning Planar-like layers.
virtual const std::string & identification() const override final
Name identification.
virtual std::unique_ptr< const std::vector< Trk::CylinderLayer * > > cylindricalLayers() const override final
LayerBuilder interface method - returning Barrel-like layers.
TRT_LayerBuilder(const std::string &, const std::string &, const IInterface *)
AlgTool style constructor.
StringProperty m_trtMgrLocation
the location of the TRT Manager
friend class TRT_VolumeBuilder
Declare the TRT_VolumeBuilder as friend.
const InDetDD::TRT_DetectorManager * m_trtMgr
the TRT Manager
virtual ~TRT_LayerBuilder()=default
Destructor.
virtual std::unique_ptr< const std::vector< Trk::DiscLayer * > > discLayers() const override final
LayerBuilder interface method - returning Endcap-like layers.
Class to describe a cylindrical detector layer for tracking, it inhertis from both,...
Class to describe a disc-like detector layer for tracking, it inhertis from both, Layer base class an...
Definition DiscLayer.h:45
Class to describe a planar detector layer for tracking, it inhertis from both, Layer base class and P...
Definition PlaneLayer.h:40
STL class.
Message Stream Member.
Primary Vertex Finder.
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.
void initialize()
#define private