ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecTools
SiDetElementsRoadTool_xk
SiDetElementsRoadTool_xk
SiDetElementLink_xk.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// Header file for class SiDetElementLink_xk
8
// (c) ATLAS Detector software
10
// Class for detector elements links
12
// Version 1.0 3/10/2004 I.Gavrilenko
14
15
#ifndef SiDetElementLink_xk_H
16
#define SiDetElementLink_xk_H
17
18
#include <utility>
19
20
#include "
InDetReadoutGeometry/SiDetectorElement.h
"
21
22
namespace
InDet
{
23
24
class
SiDetElementLink_xk
{
26
// Public methods:
28
29
public
:
30
class
ElementWay
{
31
public
:
32
ElementWay
(
const
InDet::SiDetElementLink_xk
*
link
,
float
way
,
33
float
distance
)
34
:
m_link
(
link
),
m_way
(
way
),
m_distance
(
distance
) {}
35
36
const
InDet::SiDetElementLink_xk
*
link
()
const
{
return
m_link
; }
37
float
way
()
const
{
return
m_way
; }
38
float
distance
()
const
{
return
m_distance
; }
39
40
private
:
41
const
InDet::SiDetElementLink_xk
*
m_link
;
42
float
m_way
;
43
float
m_distance
;
44
};
45
46
SiDetElementLink_xk
() =
default
;
47
SiDetElementLink_xk
(
const
InDetDD::SiDetectorElement
*,
const
double
*,
48
bool
isITk =
false
);
49
SiDetElementLink_xk
(
const
SiDetElementLink_xk
&) =
default
;
50
SiDetElementLink_xk
&
operator=
(
const
SiDetElementLink_xk
&) =
default
;
51
SiDetElementLink_xk
(
SiDetElementLink_xk
&&) =
default
;
52
SiDetElementLink_xk
&
operator=
(
SiDetElementLink_xk
&&) =
default
;
53
~SiDetElementLink_xk
() =
default
;
55
// Main methods
57
58
void
set
(
const
double
*,
bool
isITk =
false
);
59
const
InDetDD::SiDetectorElement
*
detElement
()
const
{
return
m_detelement
; }
60
float
phi
()
const
{
return
m_phi
; }
61
float
z
()
const
{
return
m_z
; }
62
float
dz
()
const
{
return
m_dz
; }
63
void
intersect
(
const
float
*,
const
float
*,
float
*)
const
;
64
bool
intersectITk
(
const
float
*,
const
float
*,
float
&)
const
;
65
66
private
:
67
const
InDetDD::SiDetectorElement
*
m_detelement
=
nullptr
;
// non owning ptr
68
float
m_phi
= 0;
69
float
m_z
= 0;
70
float
m_dz
= 0;
71
float
m_geo
[6] = {};
72
float
m_center
[2] = {};
73
float
m_bound
[4][3] = {};
74
};
75
77
// Inline methods
79
80
inline
InDet::SiDetElementLink_xk::SiDetElementLink_xk
(
81
const
InDetDD::SiDetectorElement
* el,
const
double
*
P
,
bool
isITk) {
82
m_detelement
= el;
83
set
(
P
, isITk);
84
}
85
86
}
// namespace InDet
87
88
#endif
// SiDetElementLink_xk
89
P
static Double_t P(Double_t *tt, Double_t *par)
Definition
LArPhysWaveHECTool.cxx:280
SiDetectorElement.h
InDetDD::SiDetectorElement
Class to hold geometrical description of a silicon detector element.
Definition
SiDetectorElement.h:109
InDet::SiDetElementLink_xk::ElementWay::m_distance
float m_distance
Definition
SiDetElementLink_xk.h:43
InDet::SiDetElementLink_xk::ElementWay::m_way
float m_way
Definition
SiDetElementLink_xk.h:42
InDet::SiDetElementLink_xk::ElementWay::link
const InDet::SiDetElementLink_xk * link() const
Definition
SiDetElementLink_xk.h:36
InDet::SiDetElementLink_xk::ElementWay::ElementWay
ElementWay(const InDet::SiDetElementLink_xk *link, float way, float distance)
Definition
SiDetElementLink_xk.h:32
InDet::SiDetElementLink_xk::ElementWay::m_link
const InDet::SiDetElementLink_xk * m_link
Definition
SiDetElementLink_xk.h:41
InDet::SiDetElementLink_xk::ElementWay::distance
float distance() const
Definition
SiDetElementLink_xk.h:38
InDet::SiDetElementLink_xk::ElementWay::way
float way() const
Definition
SiDetElementLink_xk.h:37
InDet::SiDetElementLink_xk
Definition
SiDetElementLink_xk.h:24
InDet::SiDetElementLink_xk::intersectITk
bool intersectITk(const float *, const float *, float &) const
Definition
SiDetElementLink_xk.cxx:95
InDet::SiDetElementLink_xk::m_center
float m_center[2]
Definition
SiDetElementLink_xk.h:72
InDet::SiDetElementLink_xk::m_detelement
const InDetDD::SiDetectorElement * m_detelement
Definition
SiDetElementLink_xk.h:67
InDet::SiDetElementLink_xk::phi
float phi() const
Definition
SiDetElementLink_xk.h:60
InDet::SiDetElementLink_xk::z
float z() const
Definition
SiDetElementLink_xk.h:61
InDet::SiDetElementLink_xk::SiDetElementLink_xk
SiDetElementLink_xk()=default
InDet::SiDetElementLink_xk::m_phi
float m_phi
Definition
SiDetElementLink_xk.h:68
InDet::SiDetElementLink_xk::m_z
float m_z
Definition
SiDetElementLink_xk.h:69
InDet::SiDetElementLink_xk::set
void set(const double *, bool isITk=false)
Definition
SiDetElementLink_xk.cxx:24
InDet::SiDetElementLink_xk::operator=
SiDetElementLink_xk & operator=(SiDetElementLink_xk &&)=default
InDet::SiDetElementLink_xk::SiDetElementLink_xk
SiDetElementLink_xk(SiDetElementLink_xk &&)=default
InDet::SiDetElementLink_xk::detElement
const InDetDD::SiDetectorElement * detElement() const
Definition
SiDetElementLink_xk.h:59
InDet::SiDetElementLink_xk::m_bound
float m_bound[4][3]
Definition
SiDetElementLink_xk.h:73
InDet::SiDetElementLink_xk::dz
float dz() const
Definition
SiDetElementLink_xk.h:62
InDet::SiDetElementLink_xk::m_geo
float m_geo[6]
Definition
SiDetElementLink_xk.h:71
InDet::SiDetElementLink_xk::m_dz
float m_dz
Definition
SiDetElementLink_xk.h:70
InDet::SiDetElementLink_xk::~SiDetElementLink_xk
~SiDetElementLink_xk()=default
InDet::SiDetElementLink_xk::SiDetElementLink_xk
SiDetElementLink_xk(const SiDetElementLink_xk &)=default
InDet::SiDetElementLink_xk::intersect
void intersect(const float *, const float *, float *) const
Definition
SiDetElementLink_xk.cxx:68
InDet::SiDetElementLink_xk::operator=
SiDetElementLink_xk & operator=(const SiDetElementLink_xk &)=default
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Generated on
for ATLAS Offline Software by
1.17.0