ATLAS Offline Software
Tracking
TrkDetDescr
TrkGeometry
TrkGeometry
CylinderLayerAttemptsCalculator.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
// CylinderLayerAttemptsCalculator.h, (c) ATLAS Detector software
8
9
#ifndef TRKGEOMETY_CYLINDERLAYERATTEMPTSCALCULATOR_H
10
#define TRKGEOMETY_CYLINDERLAYERATTEMPTSCALCULATOR_H
11
12
#include "
TrkGeometry/LayerAttemptsCalculator.h
"
13
#include "
TrkVolumes/BoundarySurfaceFace.h
"
14
15
namespace
Trk
{
16
24
class
CylinderLayerAttemptsCalculator
final:
public
LayerAttemptsCalculator
{
25
public
:
27
CylinderLayerAttemptsCalculator
(
unsigned
int
faceAttempts,
28
unsigned
int
maxAttempts)
29
:
m_faceAttempts
(faceAttempts),
m_maxLayerAttempts
(maxAttempts) {}
30
32
virtual
unsigned
int
layerAttempts
(
33
BoundarySurfaceFace
bsFace =
Trk::undefinedFace
)
const
override
final
;
34
36
virtual
unsigned
int
maxLayerAttempts
()
const override
;
37
38
private
:
39
unsigned
int
m_faceAttempts
;
40
unsigned
int
m_maxLayerAttempts
;
41
};
42
43
inline
unsigned
int
CylinderLayerAttemptsCalculator::layerAttempts
(
44
BoundarySurfaceFace
bsFace)
const
{
45
// if you go through the Inner/Outer cover only one attempt is allowed
46
if
(bsFace ==
tubeInnerCover
|| bsFace ==
tubeOuterCover
)
47
return
m_faceAttempts
;
48
// allow the maximum
49
return
m_maxLayerAttempts
;
50
}
51
52
inline
unsigned
int
CylinderLayerAttemptsCalculator::maxLayerAttempts
()
const
{
53
return
m_maxLayerAttempts
;
54
}
55
}
// namespace Trk
56
57
#endif
Trk::CylinderLayerAttemptsCalculator::CylinderLayerAttemptsCalculator
CylinderLayerAttemptsCalculator(unsigned int faceAttempts, unsigned int maxAttempts)
Constructor.
Definition:
CylinderLayerAttemptsCalculator.h:27
Trk::BoundarySurfaceFace
BoundarySurfaceFace
Definition:
BoundarySurfaceFace.h:31
Trk::CylinderLayerAttemptsCalculator::m_maxLayerAttempts
unsigned int m_maxLayerAttempts
the max attempt number
Definition:
CylinderLayerAttemptsCalculator.h:40
Trk::CylinderLayerAttemptsCalculator::layerAttempts
virtual unsigned int layerAttempts(BoundarySurfaceFace bsFace=Trk::undefinedFace) const override final
one single interface method
Definition:
CylinderLayerAttemptsCalculator.h:43
LayerAttemptsCalculator.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition:
FakeTrackBuilder.h:9
Trk::CylinderLayerAttemptsCalculator::m_faceAttempts
unsigned int m_faceAttempts
number of face attampts
Definition:
CylinderLayerAttemptsCalculator.h:39
BoundarySurfaceFace.h
Trk::CylinderLayerAttemptsCalculator
Definition:
CylinderLayerAttemptsCalculator.h:24
Trk::tubeOuterCover
@ tubeOuterCover
Definition:
BoundarySurfaceFace.h:40
Trk::undefinedFace
@ undefinedFace
Definition:
BoundarySurfaceFace.h:59
Trk::tubeInnerCover
@ tubeInnerCover
Definition:
BoundarySurfaceFace.h:39
Trk::CylinderLayerAttemptsCalculator::maxLayerAttempts
virtual unsigned int maxLayerAttempts() const override
The max attempts.
Definition:
CylinderLayerAttemptsCalculator.h:52
Trk::LayerAttemptsCalculator
Definition:
LayerAttemptsCalculator.h:23
Generated on Fri Jan 10 2025 21:08:53 for ATLAS Offline Software by
1.8.18