ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkDetDescrTools
src
LayerProviderImpl.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrkDetDescrTools/LayerProviderImpl.h
"
6
#include "
TrkGeometry/CylinderLayer.h
"
7
#include "
TrkGeometry/DiscLayer.h
"
8
#include "
TrkGeometry/Layer.h
"
9
10
11
const
std::vector<Trk::Layer*>
12
Trk::LayerProviderImpl::cylindricalLayersToCentralLayers
(std::unique_ptr<
const
std::vector<Trk::CylinderLayer*> > cylinderLayers)
13
{
14
// central layers
15
std::vector<Trk::Layer*> cLayers;
16
// loop over cylinderLayers and push into the return vector;
17
if
(cylinderLayers) {
18
for
(
Trk::CylinderLayer
* cL : (*cylinderLayers))
19
cLayers.push_back(cL);
20
}
21
// and return
22
return
cLayers;
23
}
24
25
26
std::pair<const std::vector<Trk::Layer*>,
const
std::vector<Trk::Layer*> >
27
Trk::LayerProviderImpl::discLayersToEndcapLayers
(std::unique_ptr<
const
std::vector<Trk::DiscLayer*> > discLayers)
28
{
29
30
// get the disc layers
31
std::vector<Trk::Layer*> dLayers_pos;
32
std::vector<Trk::Layer*> dLayers_neg;
33
// loop and fill either dLayers
34
if
(discLayers) {
35
// loop over and push into the return/cache vector
36
for
(
Trk::DiscLayer
* dL : (*discLayers)) {
37
// get the center posituion
38
double
zpos = dL->surfaceRepresentation().center().z();
39
if
(zpos > 0.)
40
dLayers_pos.push_back(dL);
41
else
42
dLayers_neg.push_back(dL);
43
}
44
}
45
// and return
46
return
std::make_pair(dLayers_pos, dLayers_neg);
47
}
48
49
50
CylinderLayer.h
DiscLayer.h
LayerProviderImpl.h
Layer.h
Trk::CylinderLayer
Class to describe a cylindrical detector layer for tracking, it inhertis from both,...
Definition
CylinderLayer.h:43
Trk::DiscLayer
Class to describe a disc-like detector layer for tracking, it inhertis from both, Layer base class an...
Definition
DiscLayer.h:45
Trk::LayerProviderImpl::cylindricalLayersToCentralLayers
static const std::vector< Trk::Layer * > cylindricalLayersToCentralLayers(std::unique_ptr< const std::vector< Trk::CylinderLayer * > > cylinderLayers)
Definition
LayerProviderImpl.cxx:12
Trk::LayerProviderImpl::discLayersToEndcapLayers
static std::pair< const std::vector< Trk::Layer * >, const std::vector< Trk::Layer * > > discLayersToEndcapLayers(std::unique_ptr< const std::vector< Trk::DiscLayer * > > discLayers)
Definition
LayerProviderImpl.cxx:27
Generated on
for ATLAS Offline Software by
1.17.0