Main Page
+
Namespaces
Namespace List
+
Namespace Members
+
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
+
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
+
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
+
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
+
Properties
_
a
c
d
e
f
l
m
o
p
s
t
u
v
+
Related Functions
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Package Documentation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
src
RecoTracker
TkDetLayers
src
LayerCrossingSide.h
Go to the documentation of this file.
1
#ifndef TkDetLayers_LayerCrossingSide_h
2
#define TkDetLayers_LayerCrossingSide_h
3
4
// temporary solution
5
#include "
TrackingTools/GeomPropagators/interface/Propagator.h
"
6
14
#pragma GCC visibility push(hidden)
15
class
LayerCrossingSide
{
16
public
:
18
static
int
barrelSide
(
const
TrajectoryStateOnSurface
& startingState,
const
Propagator
& prop) {
19
auto
pos
= startingState.
globalPosition
();
20
auto
dir
= startingState.
globalMomentum
();
21
bool
outwards = (
pos
.x() *
dir
.x() +
pos
.y() *
dir
.y()) > 0;
22
23
auto
inout = outwards ?
alongMomentum
:
oppositeToMomentum
;
24
25
return
(prop.
propagationDirection
() == inout ? 0 : 1);
26
}
27
31
static
int
endcapSide
(
const
TrajectoryStateOnSurface
& startingState,
const
Propagator
& prop) {
32
auto
zpos = startingState.
globalPosition
().
z
();
33
bool
outwards = (startingState.
globalMomentum
().
z
() * zpos) > 0;
34
35
auto
inout = outwards ?
alongMomentum
:
oppositeToMomentum
;
36
37
return
(prop.
propagationDirection
() == inout ? 0 : 1);
38
}
39
};
40
41
#pragma GCC visibility pop
42
#endif
LayerCrossingSide::barrelSide
static int barrelSide(const TrajectoryStateOnSurface &startingState, const Propagator &prop)
returns 0 if barrel layer crossed from inside, 1 if from outside
Definition:
LayerCrossingSide.h:18
PV3DBase::z
T z() const
Definition:
PV3DBase.h:61
LayerCrossingSide
Definition:
LayerCrossingSide.h:15
alongMomentum
Definition:
PropagationDirection.h:4
Propagator::propagationDirection
virtual PropagationDirection propagationDirection() const final
Definition:
Propagator.h:139
TrajectoryStateOnSurface
Definition:
TrajectoryStateOnSurface.h:16
DeadROC_duringRun.dir
dir
Definition:
DeadROC_duringRun.py:23
TrajectoryStateOnSurface::globalPosition
GlobalPoint globalPosition() const
Definition:
TrajectoryStateOnSurface.h:65
LayerCrossingSide::endcapSide
static int endcapSide(const TrajectoryStateOnSurface &startingState, const Propagator &prop)
Definition:
LayerCrossingSide.h:31
Propagator
Definition:
Propagator.h:44
Propagator.h
pos
Definition:
PixelCalibBase.h:13
TrajectoryStateOnSurface::globalMomentum
GlobalVector globalMomentum() const
Definition:
TrajectoryStateOnSurface.h:66
oppositeToMomentum
Definition:
PropagationDirection.h:4
Generated for CMSSW Reference Manual by
1.8.14