RecoVertex
GaussianSumVertexFit
src
GsfVertexFitter.cc
Go to the documentation of this file.
1
#include "
RecoVertex/GaussianSumVertexFit/interface/GsfVertexFitter.h
"
2
#include "
RecoVertex/VertexTools/interface/DummyVertexSmoother.h
"
3
#include "
RecoVertex/GaussianSumVertexFit/interface/GsfVertexSmoother.h
"
4
#include "
RecoVertex/GaussianSumVertexFit/interface/MultiPerigeeLTSFactory.h
"
5
6
GsfVertexFitter::GsfVertexFitter
(
const
edm::ParameterSet
& pSet,
const
LinearizationPointFinder
& linP) {
7
float
theMaxShift = pSet.
getParameter
<
double
>(
"maxDistance"
);
//0.01
8
int
theMaxStep = pSet.
getParameter
<
int
>(
"maxNbrOfIterations"
);
//10
9
bool
limitComponents_ = pSet.
getParameter
<
bool
>(
"limitComponents"
);
10
bool
useSmoothing = pSet.
getParameter
<
bool
>(
"smoothTracks"
);
11
12
VertexSmoother<5>
* theSmoother;
13
DeepCopyPointerByClone<GsfVertexMerger>
theMerger;
14
15
if
(limitComponents_) {
16
edm::ParameterSet
mergerPSet = pSet.
getParameter
<
edm::ParameterSet
>(
"GsfMergerParameters"
);
17
theMerger =
new
GsfVertexMerger
(mergerPSet);
18
}
19
20
if
(useSmoothing)
21
theSmoother =
new
GsfVertexSmoother
(limitComponents_, &*theMerger);
22
else
23
theSmoother =
new
DummyVertexSmoother<5>
();
24
25
theSequentialFitter
=
new
SequentialVertexFitter<5>
(
26
linP,
GsfVertexUpdator
(limitComponents_, &*theMerger), *theSmoother,
MultiPerigeeLTSFactory
());
27
theSequentialFitter
->
setMaximumDistance
(theMaxShift);
28
theSequentialFitter
->
setMaximumNumberOfIterations
(theMaxStep);
29
30
delete
theSmoother;
31
}
32
33
GsfVertexFitter::GsfVertexFitter
(
const
GsfVertexFitter
&
original
) {
34
theSequentialFitter
=
original
.theSequentialFitter->clone();
35
}
36
37
GsfVertexFitter::~GsfVertexFitter
() {
delete
theSequentialFitter
; }
DummyVertexSmoother
Definition:
DummyVertexSmoother.h:11
GsfVertexFitter.h
MultiPerigeeLTSFactory
Definition:
MultiPerigeeLTSFactory.h:18
SequentialVertexFitter::setMaximumNumberOfIterations
void setMaximumNumberOfIterations(int maxIterations)
Definition:
SequentialVertexFitter.h:81
GsfVertexSmoother
Definition:
GsfVertexSmoother.h:21
GsfVertexSmoother.h
GsfVertexFitter::~GsfVertexFitter
~GsfVertexFitter() override
Definition:
GsfVertexFitter.cc:37
GsfVertexFitter::theSequentialFitter
SequentialVertexFitter< 5 > * theSequentialFitter
Definition:
GsfVertexFitter.h:99
GsfVertexFitter::GsfVertexFitter
GsfVertexFitter(const edm::ParameterSet &pSet, const LinearizationPointFinder &linP=DefaultLinearizationPointFinder())
Definition:
GsfVertexFitter.cc:6
DeepCopyPointerByClone< GsfVertexMerger >
LinearizationPointFinder
Definition:
LinearizationPointFinder.h:12
SequentialVertexFitter< 5 >
edm::ParameterSet
Definition:
ParameterSet.h:36
GsfVertexFitter
Definition:
GsfVertexFitter.h:20
definitions.original
original
Definition:
definitions.py:57
DummyVertexSmoother.h
SequentialVertexFitter::setMaximumDistance
void setMaximumDistance(float maxShift)
Definition:
SequentialVertexFitter.h:75
GsfVertexMerger
Definition:
GsfVertexMerger.h:15
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
GsfVertexUpdator
Definition:
GsfVertexUpdator.h:14
MultiPerigeeLTSFactory.h
VertexSmoother< 5 >
Generated for CMSSW Reference Manual by
1.8.16