#include <RecoVertex/TrimmedKalmanVertexFinder/interface/TrimmedVertexFinder.h>
Public Types | |
typedef ReferenceCountingPointer < LinearizedTrackState< 5 > > | RefCountedLinearizedTrackState |
typedef ReferenceCountingPointer < VertexTrack< 5 > > | RefCountedVertexTrack |
Public Member Functions | |
TrimmedVertexFinder * | clone () const |
clone method | |
void | setTrackCompatibilityCut (float cut) |
Set parameter. | |
float | trackCompatibilityCut () const |
Access to parameter. | |
TrimmedVertexFinder (const TrimmedVertexFinder &other) | |
Copy constructor, needed to handle copy of pointer data members correctly. | |
TrimmedVertexFinder (const VertexFitter< 5 > *vf, const VertexUpdator< 5 > *vu, const VertexTrackCompatibilityEstimator< 5 > *ve) | |
std::vector< TransientVertex > | vertices (std::vector< reco::TransientTrack > &remain) const |
Make 0 or 1 vertex On output, `remain` contains the incompatible tracks. | |
~TrimmedVertexFinder () | |
Private Member Functions | |
vector< RefCountedVertexTrack > ::iterator | theWorst (const CachingVertex< 5 > &vtx, std::vector< RefCountedVertexTrack > &vtxTracks, float cut) const |
Private Attributes | |
VertexTrackCompatibilityEstimator< 5 > * | theEstimator |
VertexFitter< 5 > * | theFitter |
float | theMinProb |
VertexUpdator< 5 > * | theUpdator |
A track is declared incompatible with the vertex if the chi-squared probability between the track and the vertex is smaller than `min`. The algorithm applied is:
1) fit a single vertex with all tracks;
2) remove incompatible tracks 1 by 1 starting from the least compatible one.
On output, `remain` contains the incompatible tracks. This algorithm has 1 parameter that can be set at runtime via the corresponding set() method:
Definition at line 28 of file TrimmedVertexFinder.h.
typedef ReferenceCountingPointer<LinearizedTrackState<5> > TrimmedVertexFinder::RefCountedLinearizedTrackState |
Definition at line 33 of file TrimmedVertexFinder.h.
Definition at line 32 of file TrimmedVertexFinder.h.
TrimmedVertexFinder::TrimmedVertexFinder | ( | const VertexFitter< 5 > * | vf, | |
const VertexUpdator< 5 > * | vu, | |||
const VertexTrackCompatibilityEstimator< 5 > * | ve | |||
) |
Definition at line 8 of file TrimmedVertexFinder.cc.
Referenced by clone().
00011 : theFitter(vf->clone()), theUpdator(vu->clone()), 00012 theEstimator(ve->clone()), theMinProb(0.05) 00013 {}
TrimmedVertexFinder::TrimmedVertexFinder | ( | const TrimmedVertexFinder & | other | ) |
Copy constructor, needed to handle copy of pointer data members correctly.
Definition at line 16 of file TrimmedVertexFinder.cc.
00018 : theFitter(other.theFitter->clone()), 00019 theUpdator(other.theUpdator->clone()), 00020 theEstimator(other.theEstimator->clone()), 00021 theMinProb(other.theMinProb) 00022 {}
TrimmedVertexFinder::~TrimmedVertexFinder | ( | ) |
Definition at line 25 of file TrimmedVertexFinder.cc.
References theEstimator, theFitter, and theUpdator.
00025 { 00026 delete theFitter; 00027 delete theUpdator; 00028 delete theEstimator; 00029 }
TrimmedVertexFinder* TrimmedVertexFinder::clone | ( | void | ) | const [inline] |
clone method
Definition at line 60 of file TrimmedVertexFinder.h.
References TrimmedVertexFinder().
00060 { 00061 return new TrimmedVertexFinder(*this); 00062 }
void TrimmedVertexFinder::setTrackCompatibilityCut | ( | float | cut | ) | [inline] |
Set parameter.
Definition at line 56 of file TrimmedVertexFinder.h.
References theMinProb.
Referenced by ConfigurableTrimmedVertexFinder::vertexCandidates().
00056 { theMinProb = cut; }
vector<RefCountedVertexTrack>::iterator TrimmedVertexFinder::theWorst | ( | const CachingVertex< 5 > & | vtx, | |
std::vector< RefCountedVertexTrack > & | vtxTracks, | |||
float | cut | |||
) | const [private] |
float TrimmedVertexFinder::trackCompatibilityCut | ( | ) | const [inline] |
Access to parameter.
Definition at line 52 of file TrimmedVertexFinder.h.
References theMinProb.
00052 { return theMinProb; }
std::vector<TransientVertex> TrimmedVertexFinder::vertices | ( | std::vector< reco::TransientTrack > & | remain | ) | const |
Make 0 or 1 vertex On output, `remain` contains the incompatible tracks.
Referenced by ConfigurableTrimmedVertexFinder::vertexCandidates().
VertexFitter<5>* TrimmedVertexFinder::theFitter [private] |
float TrimmedVertexFinder::theMinProb [private] |
Definition at line 78 of file TrimmedVertexFinder.h.
Referenced by setTrackCompatibilityCut(), and trackCompatibilityCut().
VertexUpdator<5>* TrimmedVertexFinder::theUpdator [private] |