ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecTools
TRT_TrackExtensionTool_xk
TRT_TrackExtensionTool_xk
TRT_ExtensionDriftCircleLink_xk.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// Header file for class TRT_ExtensionDriftCircleLink_xk
8
// (c) ATLAS Detector software
10
// Class for link to SCT amd PIXEL clusters
12
// Version 1.0 3/10/2004 I.Gavrilenko
14
15
#ifndef TRT_ExtensionDriftCircleLink_xk_H
16
#define TRT_ExtensionDriftCircleLink_xk_H
17
18
#include "
InDetPrepRawData/TRT_DriftCircle.h
"
19
20
namespace
InDet
{
21
22
class
TRT_ExtensionDriftCircleLink_xk
23
{
25
// Public methods
27
28
public
:
29
30
TRT_ExtensionDriftCircleLink_xk
();
31
TRT_ExtensionDriftCircleLink_xk
(
const
TRT_ExtensionDriftCircleLink_xk
&);
32
~TRT_ExtensionDriftCircleLink_xk
();
33
TRT_ExtensionDriftCircleLink_xk
&
operator =
(
const
TRT_ExtensionDriftCircleLink_xk
&);
34
36
// Main methods
38
39
const
TRT_DriftCircle
*
cluster
()
const
{
return
m_cluster
;}
40
const
double
&
distance
()
const
{
return
m_distance
;}
41
const
double
&
sdistance
()
const
{
return
m_sdistance
;}
42
const
double
&
impact
()
const
{
return
m_impact
;}
43
const
double
&
zlocal
()
const
{
return
m_zlocal
;}
44
const
double
&
szlocal
()
const
{
return
m_szlocal
;}
45
const
double
&
way
()
const
{
return
m_way
;}
46
const
int
&
number
()
const
{
return
m_number
;}
47
48
const
Trk::Surface
&
surface
()
const
;
49
50
void
set
(
const
int
&,
double
&,
double
&,
double
&,
double
&);
51
void
set
(
const
int
&,
double
&,
double
&,
double
&,
double
&,
double
&,
double
&);
52
void
set
(
const
TRT_DriftCircle
*
const
&);
53
void
newImpactParameter
(
const
double
&);
54
void
radiusCorrection
(
const
double
&);
55
56
protected
:
57
59
// Protected Data
61
62
const
TRT_DriftCircle
*
m_cluster
;
63
int
m_number
;
64
double
m_distance
;
65
double
m_impact
;
66
double
m_zlocal
;
67
double
m_way
;
68
double
m_sdistance
;
69
double
m_szlocal
;
70
72
// Methods
74
75
};
76
78
// Inline methods
80
81
inline
TRT_ExtensionDriftCircleLink_xk::TRT_ExtensionDriftCircleLink_xk
()
82
{
83
m_cluster
= 0 ;
84
m_number
= 0 ;
85
m_distance
= 0.;
86
m_impact
= 0.;
87
m_zlocal
= 0.;
88
m_way
= 0.;
89
m_sdistance
= 0.;
90
m_szlocal
= 0.;
91
}
92
93
inline
TRT_ExtensionDriftCircleLink_xk::TRT_ExtensionDriftCircleLink_xk
(
const
TRT_ExtensionDriftCircleLink_xk
& L)
94
{
95
*
this
= L;
96
}
97
98
inline
TRT_ExtensionDriftCircleLink_xk
& TRT_ExtensionDriftCircleLink_xk::operator =
99
(
const
TRT_ExtensionDriftCircleLink_xk
& L)
100
{
101
m_cluster
= L.m_cluster ;
102
m_number
= L.m_number ;
103
m_distance
= L.m_distance ;
104
m_impact
= L.m_impact ;
105
m_zlocal
= L.m_zlocal ;
106
m_way
= L.m_way ;
107
m_sdistance
= L.m_sdistance;
108
m_szlocal
= L.m_szlocal ;
109
return
(*
this
);
110
}
111
112
inline
TRT_ExtensionDriftCircleLink_xk::~TRT_ExtensionDriftCircleLink_xk
() {}
113
114
inline
void
TRT_ExtensionDriftCircleLink_xk::set
115
(
const
int
& n,
double
& d,
double
& im,
double
& zl,
double
& s)
116
{
117
m_cluster
= 0 ;
118
m_number
= n ;
119
m_distance
= d ;
120
m_impact
= im;
121
m_zlocal
= zl;
122
m_way
= s ;
123
m_sdistance
= 0.;
124
m_szlocal
= 0.;
125
}
126
127
inline
void
TRT_ExtensionDriftCircleLink_xk::set
128
(
const
int
& n,
double
& d,
double
& im,
double
& zl,
double
& s,
double
& sd,
double
&
sz
)
129
{
130
set
(n,d,im,zl,s);
m_sdistance
= sd;
m_szlocal
=
sz
;
131
}
132
133
inline
void
TRT_ExtensionDriftCircleLink_xk::set
134
(
const
TRT_DriftCircle
*
const
& c)
135
{
136
m_cluster
= c ;
137
}
138
139
inline
void
TRT_ExtensionDriftCircleLink_xk::newImpactParameter
(
const
double
& d)
140
{
141
if
((
m_impact
*
m_distance
) > 0.) {
m_distance
= d;
m_impact
= d;}
142
else
{
m_distance
= d;
m_impact
=-d;}
143
}
144
145
inline
const
Trk::Surface
&
TRT_ExtensionDriftCircleLink_xk::surface
()
const
146
{
147
return
m_cluster
->detectorElement()->surface(
m_cluster
->identify());
148
}
149
150
inline
void
TRT_ExtensionDriftCircleLink_xk::radiusCorrection
(
const
double
& dr)
151
{
152
m_zlocal
+=(
m_szlocal
*dr);
153
double
d =
m_sdistance
*dr;
154
if
((
m_impact
*
m_distance
) > 0.) {
m_distance
+=d;
m_impact
+=d;}
155
else
{
m_distance
+=d;
m_impact
-=d;}
156
}
157
158
}
// end of name space
159
160
#endif
// TRT_ExtensionDriftCircleLink_xk
161
162
sz
static Double_t sz
Definition
LArPhysWaveHECTool.cxx:37
TRT_DriftCircle.h
InDet::TRT_DriftCircle
Definition
TRT_DriftCircle.h:32
InDet::TRT_ExtensionDriftCircleLink_xk::operator=
TRT_ExtensionDriftCircleLink_xk & operator=(const TRT_ExtensionDriftCircleLink_xk &)
Definition
TRT_ExtensionDriftCircleLink_xk.h:99
InDet::TRT_ExtensionDriftCircleLink_xk::newImpactParameter
void newImpactParameter(const double &)
Definition
TRT_ExtensionDriftCircleLink_xk.h:139
InDet::TRT_ExtensionDriftCircleLink_xk::surface
const Trk::Surface & surface() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:145
InDet::TRT_ExtensionDriftCircleLink_xk::m_impact
double m_impact
Definition
TRT_ExtensionDriftCircleLink_xk.h:65
InDet::TRT_ExtensionDriftCircleLink_xk::~TRT_ExtensionDriftCircleLink_xk
~TRT_ExtensionDriftCircleLink_xk()
Definition
TRT_ExtensionDriftCircleLink_xk.h:112
InDet::TRT_ExtensionDriftCircleLink_xk::distance
const double & distance() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:40
InDet::TRT_ExtensionDriftCircleLink_xk::szlocal
const double & szlocal() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:44
InDet::TRT_ExtensionDriftCircleLink_xk::TRT_ExtensionDriftCircleLink_xk
TRT_ExtensionDriftCircleLink_xk()
Definition
TRT_ExtensionDriftCircleLink_xk.h:81
InDet::TRT_ExtensionDriftCircleLink_xk::m_number
int m_number
Definition
TRT_ExtensionDriftCircleLink_xk.h:63
InDet::TRT_ExtensionDriftCircleLink_xk::number
const int & number() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:46
InDet::TRT_ExtensionDriftCircleLink_xk::zlocal
const double & zlocal() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:43
InDet::TRT_ExtensionDriftCircleLink_xk::m_cluster
const TRT_DriftCircle * m_cluster
Definition
TRT_ExtensionDriftCircleLink_xk.h:62
InDet::TRT_ExtensionDriftCircleLink_xk::set
void set(const int &, double &, double &, double &, double &)
Definition
TRT_ExtensionDriftCircleLink_xk.h:115
InDet::TRT_ExtensionDriftCircleLink_xk::cluster
const TRT_DriftCircle * cluster() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:39
InDet::TRT_ExtensionDriftCircleLink_xk::m_way
double m_way
Definition
TRT_ExtensionDriftCircleLink_xk.h:67
InDet::TRT_ExtensionDriftCircleLink_xk::m_distance
double m_distance
Definition
TRT_ExtensionDriftCircleLink_xk.h:64
InDet::TRT_ExtensionDriftCircleLink_xk::way
const double & way() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:45
InDet::TRT_ExtensionDriftCircleLink_xk::impact
const double & impact() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:42
InDet::TRT_ExtensionDriftCircleLink_xk::m_zlocal
double m_zlocal
Definition
TRT_ExtensionDriftCircleLink_xk.h:66
InDet::TRT_ExtensionDriftCircleLink_xk::radiusCorrection
void radiusCorrection(const double &)
Definition
TRT_ExtensionDriftCircleLink_xk.h:150
InDet::TRT_ExtensionDriftCircleLink_xk::m_szlocal
double m_szlocal
Definition
TRT_ExtensionDriftCircleLink_xk.h:69
InDet::TRT_ExtensionDriftCircleLink_xk::sdistance
const double & sdistance() const
Definition
TRT_ExtensionDriftCircleLink_xk.h:41
InDet::TRT_ExtensionDriftCircleLink_xk::m_sdistance
double m_sdistance
Definition
TRT_ExtensionDriftCircleLink_xk.h:68
Trk::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Generated on
for ATLAS Offline Software by
1.17.0