ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
Acts
ActsPatternRecognition
src
GbtsLayerTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ACTSTRK_GBTSLAYERTOOL_H
6
#define ACTSTRK_GBTSLAYERTOOL_H
7
8
// Athena
9
#include "
AthenaBaseComps/AthAlgTool.h
"
10
#include "
ActsToolInterfaces/IGbtsLayerTool.h
"
11
12
#include <Gaudi/Property.h>
13
14
#include <map>
15
#include <tuple>
16
#include <vector>
17
18
class
SCT_ID
;
19
class
PixelID
;
20
21
namespace
InDetDD
{
22
class
PixelDetectorManager
;
23
class
SCT_DetectorManager
;
24
}
// namespace InDetDD
25
26
namespace
ActsTrk
{
27
36
class
GbtsLayerTool
final :
public
extends<AthAlgTool, IGbtsLayerTool> {
37
public
:
38
GbtsLayerTool
(
const
std::string&
type
,
const
std::string& name,
39
const
IInterface* parent);
40
virtual
~GbtsLayerTool
() =
default
;
41
42
virtual
StatusCode
initialize
()
override
;
43
44
virtual
const
std::vector<Acts::Experimental::GbtsLayerDescription>&
45
layerDescriptions
()
const override
{
46
return
m_layerDescriptions
;
47
}
48
49
virtual
const
std::vector<short>&
pixelLayers
()
const override
{
50
return
m_pixelLayers
;
51
}
52
53
virtual
const
std::vector<short>&
stripLayers
()
const override
{
54
return
m_stripLayers
;
55
}
56
57
private
:
59
struct
ModuleEntry
{
60
short
phiIndex
{};
61
short
etaIndex
{};
62
int
hash
{};
63
};
64
67
using
LayerKey
= std::tuple<int, int, short, short>;
68
70
StatusCode
buildLayers
();
71
72
Gaudi::Property<bool>
m_dumpGeometry
{
this
,
"dumpGbtsGeometry"
,
false
,
73
"dump the layer geometry to a file"
};
74
Gaudi::Property<std::string>
m_geometryDumpDir
{
75
this
,
"geometryDump"
,
""
,
"file to dump the layer geometry to"
};
76
77
const
PixelID
*
m_pixelId
{
nullptr
};
78
const
SCT_ID
*
m_stripId
{
nullptr
};
79
const
InDetDD::PixelDetectorManager
*
m_pixelManager
{
nullptr
};
80
const
InDetDD::SCT_DetectorManager
*
m_stripManager
{
nullptr
};
81
82
std::vector<Acts::Experimental::GbtsLayerDescription>
m_layerDescriptions
;
84
std::vector<short>
m_pixelLayers
,
m_stripLayers
;
85
};
86
87
}
// namespace ActsTrk
88
89
#endif
AthAlgTool.h
IGbtsLayerTool.h
ActsTrk::GbtsLayerTool::initialize
virtual StatusCode initialize() override
Definition
GbtsLayerTool.cxx:35
ActsTrk::GbtsLayerTool::m_stripId
const SCT_ID * m_stripId
Definition
GbtsLayerTool.h:78
ActsTrk::GbtsLayerTool::pixelLayers
virtual const std::vector< short > & pixelLayers() const override
Definition
GbtsLayerTool.h:49
ActsTrk::GbtsLayerTool::m_layerDescriptions
std::vector< Acts::Experimental::GbtsLayerDescription > m_layerDescriptions
Definition
GbtsLayerTool.h:82
ActsTrk::GbtsLayerTool::buildLayers
StatusCode buildLayers()
Group the modules into layers and fill the descriptions and hash maps.
Definition
GbtsLayerTool.cxx:50
ActsTrk::GbtsLayerTool::~GbtsLayerTool
virtual ~GbtsLayerTool()=default
ActsTrk::GbtsLayerTool::m_pixelId
const PixelID * m_pixelId
Definition
GbtsLayerTool.h:77
ActsTrk::GbtsLayerTool::m_pixelManager
const InDetDD::PixelDetectorManager * m_pixelManager
Definition
GbtsLayerTool.h:79
ActsTrk::GbtsLayerTool::stripLayers
virtual const std::vector< short > & stripLayers() const override
Definition
GbtsLayerTool.h:53
ActsTrk::GbtsLayerTool::m_geometryDumpDir
Gaudi::Property< std::string > m_geometryDumpDir
Definition
GbtsLayerTool.h:74
ActsTrk::GbtsLayerTool::layerDescriptions
virtual const std::vector< Acts::Experimental::GbtsLayerDescription > & layerDescriptions() const override
Definition
GbtsLayerTool.h:45
ActsTrk::GbtsLayerTool::m_dumpGeometry
Gaudi::Property< bool > m_dumpGeometry
Definition
GbtsLayerTool.h:72
ActsTrk::GbtsLayerTool::LayerKey
std::tuple< int, int, short, short > LayerKey
Layer key: (side, technology, volume id, layer id).
Definition
GbtsLayerTool.h:67
ActsTrk::GbtsLayerTool::GbtsLayerTool
GbtsLayerTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition
GbtsLayerTool.cxx:31
ActsTrk::GbtsLayerTool::m_stripManager
const InDetDD::SCT_DetectorManager * m_stripManager
Definition
GbtsLayerTool.h:80
ActsTrk::GbtsLayerTool::m_stripLayers
std::vector< short > m_stripLayers
Definition
GbtsLayerTool.h:84
ActsTrk::GbtsLayerTool::m_pixelLayers
std::vector< short > m_pixelLayers
Wafer hash addressable dense GBTS layer indices.
Definition
GbtsLayerTool.h:84
InDetDD::PixelDetectorManager
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
Definition
PixelDetectorManager.h:47
InDetDD::SCT_DetectorManager
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
Definition
SCT_DetectorManager.h:50
PixelID
This is an Identifier helper class for the Pixel subdetector.
Definition
PixelID.h:69
SCT_ID
This is an Identifier helper class for the SCT subdetector.
Definition
SCT_ID.h:68
ActsTrk
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
Definition
MdtCalibInput.h:31
InDetDD
Message Stream Member.
Definition
FakeTrackBuilder.h:8
ActsTrk::GbtsLayerTool::ModuleEntry
One module, as grouped into a layer.
Definition
GbtsLayerTool.h:59
ActsTrk::GbtsLayerTool::ModuleEntry::etaIndex
short etaIndex
Definition
GbtsLayerTool.h:61
ActsTrk::GbtsLayerTool::ModuleEntry::phiIndex
short phiIndex
Definition
GbtsLayerTool.h:60
ActsTrk::GbtsLayerTool::ModuleEntry::hash
int hash
Definition
GbtsLayerTool.h:62
type
Generated on
for ATLAS Offline Software by
1.17.0