ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecTools
TRT_DetElementsRoadTool_xk
TRT_DetElementsRoadTool_xk
TRT_DetElementsLayer_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 TRT_DetElementsLayer_xk
8
// (c) ATLAS Detector software
10
// Class for detector elements layer
12
// Version 1.0 3/10/2004 I.Gavrilenko
14
15
#ifndef TRT_DetElementsLayer_xk_H
16
#define TRT_DetElementsLayer_xk_H
17
18
#include <utility>
19
#include <vector>
20
#include <list>
21
22
#include "
TRT_ReadoutGeometry/TRT_DetElementLink_xk.h
"
23
24
namespace
InDet
{
25
26
27
class
TRT_DetElementsLayer_xk
28
{
30
// Public methods:
32
33
public
:
34
36
// Standard tool methods
38
39
TRT_DetElementsLayer_xk
();
40
TRT_DetElementsLayer_xk
(
double
,
double
,
double
,
double
,
double
);
41
TRT_DetElementsLayer_xk
(
const
TRT_DetElementsLayer_xk
&) =
default
;
42
~TRT_DetElementsLayer_xk
();
43
TRT_DetElementsLayer_xk
&
operator =
(
const
TRT_DetElementsLayer_xk
&) =
default
;
44
TRT_DetElementsLayer_xk
&
operator =
(
TRT_DetElementsLayer_xk
&&) =
default
;
45
47
// Main methods
49
50
const
float
&
r
()
const
{
return
this->
m_r
;}
51
const
float
&
dr
()
const
{
return
this->
m_dr
;}
52
const
float
&
z
()
const
{
return
this->
m_z
;}
53
const
float
&
dz
()
const
{
return
this->
m_dz
;}
54
const
float
&
dfe
()
const
{
return
this->
m_dfe
;}
55
56
void
set
(
double
,
double
,
double
,
double
,
double
,
double
,
double
);
57
void
add
(
TRT_DetElementLink_xk
&&);
60
int
nElements
()
const
;
67
void
getBarrelDetElementsATL
68
(
const
float
*,
69
const
float
*,
70
std::vector<std::pair<const InDet::TRT_DetElementLink_xk*,float> >&,
71
std::vector<InDet::TRT_DetElementLink_xk::Used_t> &
used
)
const
;
78
void
getBarrelDetElementsCTB
79
(
const
float
*,
80
const
float
*,
81
std::vector<std::pair<const InDet::TRT_DetElementLink_xk*,float> >&,
82
std::vector<InDet::TRT_DetElementLink_xk::Used_t> &
used
)
const
;
89
void
getEndcapDetElements
90
(
const
float
*,
91
const
float
*,
92
std::vector<std::pair<const InDet::TRT_DetElementLink_xk*,float> >&,
93
std::vector<InDet::TRT_DetElementLink_xk::Used_t> &
used
)
const
;
94
95
96
void
reserve
(std::size_t n_elements) {
97
m_elements
.reserve(n_elements);
98
}
99
protected
:
100
102
// Protected Data
104
105
float
m_z
;
// Z coordinate
106
float
m_dz
;
// Z half width
107
float
m_r
;
// Radius
108
float
m_dr
;
// Radius half width
109
float
m_dfe
;
// max azimuthal width
110
float
m_f0
;
//
111
float
m_sfi
;
//
112
float
m_wf
;
// Width in phi direction
113
float
m_wz
;
// Width in r,z direction
114
std::vector<TRT_DetElementLink_xk>
m_elements
;
// detector elements
115
117
// Methods
119
};
120
122
// Inline methods
124
125
inline
TRT_DetElementsLayer_xk::TRT_DetElementsLayer_xk
()
126
{
127
m_z
= 0.;
128
m_dz
= 0.;
129
m_r
= 0.;
130
m_dr
= 0.;
131
m_dfe
= 0.;
132
m_f0
= 0.;
133
m_sfi
= 0.;
134
m_wf
= 0.;
135
m_wz
= 0.;
136
}
137
138
inline
TRT_DetElementsLayer_xk::TRT_DetElementsLayer_xk
139
(
double
r
,
double
dr
,
double
z
,
double
dz
,
double
df)
140
{
141
m_r
= float(
r
);
142
m_dr
= float(
dr
);
143
m_z
= float(
z
);
144
m_dz
= float(
dz
);
145
m_dfe
= float(df);
146
m_f0
= 0. ;
147
m_sfi
= 0. ;
148
m_wf
= 0. ;
149
m_wz
= 0. ;
150
}
151
152
inline
TRT_DetElementsLayer_xk::~TRT_DetElementsLayer_xk
() {}
153
154
inline
void
TRT_DetElementsLayer_xk::add
(
TRT_DetElementLink_xk
&& link)
155
{
156
m_elements
.push_back(std::move(link));
157
}
158
159
inline
int
TRT_DetElementsLayer_xk::nElements
()
const
160
{
161
return
m_elements
.size();
162
}
163
164
165
}
// end of name space
166
167
#endif
// TRT_DetElementsLayer_xk_H
168
TRT_DetElementLink_xk.h
InDet::TRT_DetElementLink_xk
Definition
TRT_DetElementLink_xk.h:25
InDet::TRT_DetElementsLayer_xk::m_wf
float m_wf
Definition
TRT_DetElementsLayer_xk.h:112
InDet::TRT_DetElementsLayer_xk::nElements
int nElements() const
Get number of links to detector elements.
Definition
TRT_DetElementsLayer_xk.h:159
InDet::TRT_DetElementsLayer_xk::m_elements
std::vector< TRT_DetElementLink_xk > m_elements
Definition
TRT_DetElementsLayer_xk.h:114
InDet::TRT_DetElementsLayer_xk::dfe
const float & dfe() const
Definition
TRT_DetElementsLayer_xk.h:54
InDet::TRT_DetElementsLayer_xk::m_r
float m_r
Definition
TRT_DetElementsLayer_xk.h:107
InDet::TRT_DetElementsLayer_xk::TRT_DetElementsLayer_xk
TRT_DetElementsLayer_xk()
Definition
TRT_DetElementsLayer_xk.h:125
InDet::TRT_DetElementsLayer_xk::~TRT_DetElementsLayer_xk
~TRT_DetElementsLayer_xk()
Definition
TRT_DetElementsLayer_xk.h:152
InDet::TRT_DetElementsLayer_xk::getBarrelDetElementsATL
void getBarrelDetElementsATL(const float *, const float *, std::vector< std::pair< const InDet::TRT_DetElementLink_xk *, float > > &, std::vector< InDet::TRT_DetElementLink_xk::Used_t > &used) const
Definition
TRT_DetElementsLayer_xk.cxx:56
InDet::TRT_DetElementsLayer_xk::getBarrelDetElementsCTB
void getBarrelDetElementsCTB(const float *, const float *, std::vector< std::pair< const InDet::TRT_DetElementLink_xk *, float > > &, std::vector< InDet::TRT_DetElementLink_xk::Used_t > &used) const
Definition
TRT_DetElementsLayer_xk.cxx:132
InDet::TRT_DetElementsLayer_xk::dz
const float & dz() const
Definition
TRT_DetElementsLayer_xk.h:53
InDet::TRT_DetElementsLayer_xk::m_z
float m_z
Definition
TRT_DetElementsLayer_xk.h:105
InDet::TRT_DetElementsLayer_xk::m_wz
float m_wz
Definition
TRT_DetElementsLayer_xk.h:113
InDet::TRT_DetElementsLayer_xk::set
void set(double, double, double, double, double, double, double)
Definition
TRT_DetElementsLayer_xk.cxx:28
InDet::TRT_DetElementsLayer_xk::m_sfi
float m_sfi
Definition
TRT_DetElementsLayer_xk.h:111
InDet::TRT_DetElementsLayer_xk::operator=
TRT_DetElementsLayer_xk & operator=(const TRT_DetElementsLayer_xk &)=default
InDet::TRT_DetElementsLayer_xk::getEndcapDetElements
void getEndcapDetElements(const float *, const float *, std::vector< std::pair< const InDet::TRT_DetElementLink_xk *, float > > &, std::vector< InDet::TRT_DetElementLink_xk::Used_t > &used) const
Definition
TRT_DetElementsLayer_xk.cxx:186
InDet::TRT_DetElementsLayer_xk::add
void add(TRT_DetElementLink_xk &&)
Definition
TRT_DetElementsLayer_xk.h:154
InDet::TRT_DetElementsLayer_xk::z
const float & z() const
Definition
TRT_DetElementsLayer_xk.h:52
InDet::TRT_DetElementsLayer_xk::m_dz
float m_dz
Definition
TRT_DetElementsLayer_xk.h:106
InDet::TRT_DetElementsLayer_xk::TRT_DetElementsLayer_xk
TRT_DetElementsLayer_xk(const TRT_DetElementsLayer_xk &)=default
InDet::TRT_DetElementsLayer_xk::m_dr
float m_dr
Definition
TRT_DetElementsLayer_xk.h:108
InDet::TRT_DetElementsLayer_xk::m_dfe
float m_dfe
Definition
TRT_DetElementsLayer_xk.h:109
InDet::TRT_DetElementsLayer_xk::m_f0
float m_f0
Definition
TRT_DetElementsLayer_xk.h:110
InDet::TRT_DetElementsLayer_xk::dr
const float & dr() const
Definition
TRT_DetElementsLayer_xk.h:51
InDet::TRT_DetElementsLayer_xk::r
const float & r() const
Definition
TRT_DetElementsLayer_xk.h:50
InDet::TRT_DetElementsLayer_xk::reserve
void reserve(std::size_t n_elements)
Definition
TRT_DetElementsLayer_xk.h:96
used
holding In fact this class is here in order to allow STL container for all features This class is sho...
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
Generated on
for ATLAS Offline Software by
1.17.0