RecoVertex
LinearizationPointFinders
src
FallbackLinearizationPointFinder.cc
Go to the documentation of this file.
1
#include "
RecoVertex/LinearizationPointFinders/interface/FallbackLinearizationPointFinder.h
"
2
#include "
TrackingTools/TransientTrack/interface/TransientTrack.h
"
3
#include "
DataFormats/GeometryVector/interface/GlobalPoint.h
"
4
#include "
RecoVertex/VertexTools/interface/FsmwModeFinder3d.h
"
5
6
FallbackLinearizationPointFinder::FallbackLinearizationPointFinder
(
const
ModeFinder3d
&
m
) : theModeFinder(
m
.
clone
()) {}
7
8
GlobalPoint
FallbackLinearizationPointFinder::getLinearizationPoint
(
9
const
std::vector<FreeTrajectoryState>&
tracks
)
const
{
10
return
GlobalPoint
(0., 0., 0.);
11
}
12
13
GlobalPoint
FallbackLinearizationPointFinder::getLinearizationPoint
(
14
const
std::vector<reco::TransientTrack>&
tracks
)
const
{
15
switch
(
tracks
.size()) {
16
case
0:
17
return
GlobalPoint
(0., 0., 0.);
18
case
1:
19
return
tracks
.begin()->impactPointState().globalPosition();
20
default
: {
21
std::vector<std::pair<GlobalPoint, float> > wtracks;
22
wtracks.reserve(
tracks
.size() - 1);
23
for
(std::vector<reco::TransientTrack>::const_iterator
i
=
tracks
.begin();
i
!=
tracks
.end(); ++
i
) {
24
std::pair<GlobalPoint, float>
tmp
(
i
->impactPointState().globalPosition(), 1.);
25
wtracks.push_back(
tmp
);
26
}
27
return
(*
theModeFinder
)(wtracks);
28
}
29
}
30
return
GlobalPoint
(0., 0., 0.);
31
}
mps_fire.i
i
Definition:
mps_fire.py:429
ModeFinder3d
Definition:
ModeFinder3d.h:14
TransientTrack.h
GlobalPoint
Global3DPoint GlobalPoint
Definition:
GlobalPoint.h:10
FallbackLinearizationPointFinder::FallbackLinearizationPointFinder
FallbackLinearizationPointFinder(const ModeFinder3d &m=HsmModeFinder3d())
Definition:
FallbackLinearizationPointFinder.cc:6
FallbackLinearizationPointFinder::theModeFinder
ModeFinder3d * theModeFinder
Definition:
FallbackLinearizationPointFinder.h:19
visualization-live-secondInstance_cfg.m
m
Definition:
visualization-live-secondInstance_cfg.py:80
FallbackLinearizationPointFinder.h
tracks
auto const & tracks
cannot be loose
Definition:
CAHitNtupletGeneratorKernelsImpl.h:148
clone
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Definition:
eve_macros.cc:135
FsmwModeFinder3d.h
Point3DBase< float, GlobalTag >
FallbackLinearizationPointFinder::getLinearizationPoint
GlobalPoint getLinearizationPoint(const std::vector< reco::TransientTrack > &) const override
Definition:
FallbackLinearizationPointFinder.cc:13
createJobs.tmp
tmp
align.sh
Definition:
createJobs.py:716
GlobalPoint.h
Generated for CMSSW Reference Manual by
1.8.14