Main Page
Namespaces
Classes
Package Documentation
PhysicsTools
RecoUtils
interface
CandKinematicVertexFitter.h
Go to the documentation of this file.
1
#ifndef RecoCandUtils_CandKinematicVertexFitter_h
2
#define RecoCandUtils_CandKinematicVertexFitter_h
3
/* \class CandKinematicVertexFitter
4
*
5
* \author Luca Lista, INFN
6
*
7
*/
8
9
#include "
FWCore/ParameterSet/interface/ParameterSetfwd.h
"
10
#include "
TrackingTools/TransientTrack/interface/TransientTrack.h
"
11
#include "
RecoVertex/VertexPrimitives/interface/TransientVertex.h
"
12
#include "
DataFormats/RecoCandidate/interface/RecoCandidate.h
"
13
#include "
RecoVertex/KinematicFit/interface/KinematicParticleVertexFitter.h
"
14
#include "
PhysicsTools/UtilAlgos/interface/ParameterAdapter.h
"
15
#include "
RecoVertex/KinematicFitPrimitives/interface/KinematicParticleFactoryFromTransientTrack.h
"
16
#include "
SimGeneral/HepPDTRecord/interface/ParticleDataTable.h
"
17
#include <vector>
18
#include "boost/shared_ptr.hpp"
19
20
class
MagneticField
;
21
namespace
reco
{
class
VertexCompositeCandidate; }
22
23
class
CandKinematicVertexFitter
{
24
public
:
25
typedef
reco::Vertex::CovarianceMatrix
CovarianceMatrix
;
26
CandKinematicVertexFitter
(
const
edm::ParameterSet
&
cfg
) :
27
bField_(
nullptr
), pdt_(
nullptr
), fitter_(), fitters_(new
std
::vector<
CandKinematicVertexFitter
>) {
28
}
29
CandKinematicVertexFitter
(
const
CandKinematicVertexFitter
&
o
) :
30
bField_(o.bField_), pdt_(o.pdt_), fitter_(), fitters_(new
std
::vector<
CandKinematicVertexFitter
>) {
31
}
32
void
set
(
const
MagneticField
*
bField
) { bField_ =
bField
; }
33
void
set
(
const
ParticleDataTable
* pdt) { pdt_ = pdt; }
34
void
set
(
reco::VertexCompositeCandidate
&)
const
;
35
bool
fit
(
const
std::vector<RefCountedKinematicParticle> &
tracks
)
const
;
36
RefCountedKinematicParticle
currentParticle
()
const
{
37
tree_->movePointerToTheTop();
38
return
tree_->currentParticle();
39
}
40
private
:
41
const
MagneticField
*
bField_
;
42
const
ParticleDataTable
*
pdt_
;
43
void
fill
(std::vector<RefCountedKinematicParticle> &,
44
std::vector<reco::Candidate *> &,
45
std::vector<reco::RecoCandidate::TrackType> &,
46
reco::Candidate
&)
const
;
48
KinematicParticleVertexFitter
fitter_
;
50
mutable
RefCountedKinematicTree
tree_
;
52
KinematicParticleFactoryFromTransientTrack
factory_
;
54
mutable
double
chi2_
;
56
mutable
double
ndof_
;
58
mutable
CovarianceMatrix
cov_
;
60
boost::shared_ptr<std::vector<CandKinematicVertexFitter> >
fitters_
;
61
};
62
63
#endif
CandKinematicVertexFitter::CandKinematicVertexFitter
CandKinematicVertexFitter(const CandKinematicVertexFitter &o)
Definition:
CandKinematicVertexFitter.h:29
KinematicParticleVertexFitter
Definition:
KinematicParticleVertexFitter.h:25
CandKinematicVertexFitter::tree_
RefCountedKinematicTree tree_
fit tree
Definition:
CandKinematicVertexFitter.h:50
CandKinematicVertexFitter::CandKinematicVertexFitter
CandKinematicVertexFitter(const edm::ParameterSet &cfg)
Definition:
CandKinematicVertexFitter.h:26
ecalTB2006H4_GenSimDigiReco_cfg.bField
bField
Definition:
ecalTB2006H4_GenSimDigiReco_cfg.py:236
KinematicParticleVertexFitter.h
KinematicParticleFactoryFromTransientTrack
Definition:
KinematicParticleFactoryFromTransientTrack.h:17
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition:
ParticleDataTable.h:8
CandKinematicVertexFitter::ndof_
double ndof_
number of degrees of freedom
Definition:
CandKinematicVertexFitter.h:56
TransientTrack.h
reco::Candidate
Definition:
Candidate.h:28
lumiContext.fill
fill
Definition:
lumiContext.py:320
MagneticField
Definition:
MagneticField.h:19
std
Definition:
JetResolutionObject.h:80
nullptr
#define nullptr
CandKinematicVertexFitter::fitter_
KinematicParticleVertexFitter fitter_
fitter
Definition:
CandKinematicVertexFitter.h:48
reco::Vertex::CovarianceMatrix
math::Error< dimension >::type CovarianceMatrix
covariance error matrix (3x3)
Definition:
Vertex.h:45
ParameterSetfwd.h
ReferenceCountingPointer< KinematicParticle >
ParticleDataTable.h
TransientVertex.h
CandKinematicVertexFitter::fitters_
boost::shared_ptr< std::vector< CandKinematicVertexFitter > > fitters_
fitters used for recursive calls
Definition:
CandKinematicVertexFitter.h:60
l1t::tracks
Definition:
MicroGMTCancelOutUnit.h:12
CandKinematicVertexFitter::CovarianceMatrix
reco::Vertex::CovarianceMatrix CovarianceMatrix
Definition:
CandKinematicVertexFitter.h:25
CandKinematicVertexFitter::cov_
CovarianceMatrix cov_
covariance matrix (3x3)
Definition:
CandKinematicVertexFitter.h:58
reco::VertexCompositeCandidate
Definition:
VertexCompositeCandidate.h:16
looper.cfg
cfg
Definition:
looper.py:295
CandKinematicVertexFitter::currentParticle
RefCountedKinematicParticle currentParticle() const
Definition:
CandKinematicVertexFitter.h:36
connectstrParser.o
o
Definition:
connectstrParser.py:71
CandKinematicVertexFitter::bField_
const MagneticField * bField_
Definition:
CandKinematicVertexFitter.h:41
KinematicParticleFactoryFromTransientTrack.h
reco
fixed size matrix
Definition:
AlignmentAlgorithmBase.h:43
ParameterAdapter.h
CandKinematicVertexFitter::factory_
KinematicParticleFactoryFromTransientTrack factory_
particle factor
Definition:
CandKinematicVertexFitter.h:52
CandKinematicVertexFitter::pdt_
const ParticleDataTable * pdt_
Definition:
CandKinematicVertexFitter.h:42
edm::ParameterSet
Definition:
ParameterSet.h:36
trackingPlots.fit
fit
Definition:
trackingPlots.py:1435
CandKinematicVertexFitter::chi2_
double chi2_
chi-sqared
Definition:
CandKinematicVertexFitter.h:54
CandKinematicVertexFitter
Definition:
CandKinematicVertexFitter.h:23
RecoCandidate.h
Generated for CMSSW Reference Manual by
1.8.11