CMS 3D CMS Logo

ConfigurableTrimmedVertexFinder.h
Go to the documentation of this file.
1 #ifndef _ConfigurableTrimmedVertexFinder_H_
2 #define _ConfigurableTrimmedVertexFinder_H_
3 
8 #include <vector>
9 
45 public:
47  const VertexUpdator<5>* vu,
49 
51 
52  std::vector<TransientVertex> vertices(const std::vector<reco::TransientTrack>& tracks) const override;
53 
54  std::vector<TransientVertex> vertices(const std::vector<reco::TransientTrack>& tracks,
55  const reco::BeamSpot& spot) const override;
56 
57  std::vector<TransientVertex> vertices(const std::vector<reco::TransientTrack>& tracks,
58  std::vector<reco::TransientTrack>& unused,
59  const reco::BeamSpot& spot,
60  bool use_spot) const;
61 
64  float ptCut() const { return theFilter.ptCut(); }
65  const TrimmedTrackFilter& trackFilter() const { return theFilter; }
68  float vertexFitProbabilityCut() const { return theVtxFitProbCut; }
69  int maxNbOfVertices() const { return theMaxNbOfVertices; }
70 
73  void setParameters(const edm::ParameterSet&);
74 
75  void setPtCut(float cut) { theFilter.setPtCut(cut); }
80 
84 
85 protected:
86  virtual void resetEvent(const std::vector<reco::TransientTrack>& tracks) const {}
87 
88  virtual void analyseInputTracks(const std::vector<reco::TransientTrack>& tracks) const {}
89 
90  virtual void analyseClusterFinder(const std::vector<TransientVertex>& vts,
91  const std::vector<reco::TransientTrack>& remain) const {}
92 
93  virtual void analyseVertexCandidates(const std::vector<TransientVertex>& vts) const {}
94 
95  virtual void analyseFoundVertices(const std::vector<TransientVertex>& vts) const {}
96 
97 private:
99 
100  // separate tracks passing the filter
101  // void separateTracks(std::vector<TransientTrack>& filtered,
102  // std::vector<TransientTrack>& unused) const;
103 
104  // find vertex candidates
105  std::vector<TransientVertex> vertexCandidates(const std::vector<reco::TransientTrack>& tracks,
106  std::vector<reco::TransientTrack>& unused,
107  const reco::BeamSpot& spot,
108  bool use_spot) const;
109 
110  // remove bad candidates
111  std::vector<TransientVertex> clean(const std::vector<TransientVertex>& candidates) const;
112 
113  //
120 };
121 
122 #endif
ConfigurableTrimmedVertexFinder::analyseFoundVertices
virtual void analyseFoundVertices(const std::vector< TransientVertex > &vts) const
Definition: ConfigurableTrimmedVertexFinder.h:95
ConfigurableTrimmedVertexFinder::trackCompatibilityCut
float trackCompatibilityCut() const
Definition: ConfigurableTrimmedVertexFinder.h:66
VertexUpdator< 5 >
TrimmedVertexFinder
Definition: TrimmedVertexFinder.h:28
TkAlMuonSelectors_cfi.cut
cut
Definition: TkAlMuonSelectors_cfi.py:5
ConfigurableTrimmedVertexFinder::~ConfigurableTrimmedVertexFinder
~ConfigurableTrimmedVertexFinder() override
Definition: ConfigurableTrimmedVertexFinder.h:50
ConfigurableTrimmedVertexFinder::analyseClusterFinder
virtual void analyseClusterFinder(const std::vector< TransientVertex > &vts, const std::vector< reco::TransientTrack > &remain) const
Definition: ConfigurableTrimmedVertexFinder.h:90
TrimmedTrackFilter::setPtCut
void setPtCut(double ptCut)
Definition: TrimmedTrackFilter.h:27
VertexReconstructor.h
ConfigurableTrimmedVertexFinder::maxNbOfVertices
int maxNbOfVertices() const
Definition: ConfigurableTrimmedVertexFinder.h:69
ConfigurableTrimmedVertexFinder::setPtCut
void setPtCut(float cut)
Definition: ConfigurableTrimmedVertexFinder.h:75
TrimmedVertexFinder.h
ConfigurableTrimmedVertexFinder::vertexFitProbabilityCut
float vertexFitProbabilityCut() const
Definition: ConfigurableTrimmedVertexFinder.h:68
ConfigurableTrimmedVertexFinder::trackFilter
const TrimmedTrackFilter & trackFilter() const
Definition: ConfigurableTrimmedVertexFinder.h:65
ConfigurableTrimmedVertexFinder::theTrackCompatibilityToPV
float theTrackCompatibilityToPV
Definition: ConfigurableTrimmedVertexFinder.h:116
VertexFitter< 5 >
ConfigurableTrimmedVertexFinder::ConfigurableTrimmedVertexFinder
ConfigurableTrimmedVertexFinder(const VertexFitter< 5 > *vf, const VertexUpdator< 5 > *vu, const VertexTrackCompatibilityEstimator< 5 > *ve)
Definition: ConfigurableTrimmedVertexFinder.cc:6
ConfigurableTrimmedVertexFinder::theVtxFitProbCut
float theVtxFitProbCut
Definition: ConfigurableTrimmedVertexFinder.h:115
reco::BeamSpot
Definition: BeamSpot.h:21
ConfigurableTrimmedVertexFinder::trackCompatibilityToSV
float trackCompatibilityToSV() const
Definition: ConfigurableTrimmedVertexFinder.h:67
ConfigurableTrimmedVertexFinder::vertexCandidates
std::vector< TransientVertex > vertexCandidates(const std::vector< reco::TransientTrack > &tracks, std::vector< reco::TransientTrack > &unused, const reco::BeamSpot &spot, bool use_spot) const
Definition: ConfigurableTrimmedVertexFinder.cc:65
ConfigurableTrimmedVertexFinder::analyseVertexCandidates
virtual void analyseVertexCandidates(const std::vector< TransientVertex > &vts) const
Definition: ConfigurableTrimmedVertexFinder.h:93
ConfigurableTrimmedVertexFinder::setTrackCompatibilityCut
void setTrackCompatibilityCut(float cut)
Definition: ConfigurableTrimmedVertexFinder.h:76
edm::ParameterSet
Definition: ParameterSet.h:47
ConfigurableTrimmedVertexFinder::clean
std::vector< TransientVertex > clean(const std::vector< TransientVertex > &candidates) const
Definition: ConfigurableTrimmedVertexFinder.cc:119
tracks
const uint32_t *__restrict__ const HitContainer *__restrict__ TkSoA *__restrict__ tracks
Definition: CAHitNtupletGeneratorKernelsImpl.h:159
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
TrimmedTrackFilter.h
VertexReconstructor::vertices
virtual std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &) const =0
ConfigurableTrimmedVertexFinder
Definition: ConfigurableTrimmedVertexFinder.h:44
ConfigurableTrimmedVertexFinder::resetEvent
virtual void resetEvent(const std::vector< reco::TransientTrack > &tracks) const
Definition: ConfigurableTrimmedVertexFinder.h:86
VertexReconstructor
Definition: VertexReconstructor.h:13
ConfigurableTrimmedVertexFinder::setTrackCompatibilityToSV
void setTrackCompatibilityToSV(float cut)
Definition: ConfigurableTrimmedVertexFinder.h:77
ConfigurableTrimmedVertexFinder::ptCut
float ptCut() const
Definition: ConfigurableTrimmedVertexFinder.h:64
VertexTrackCompatibilityEstimator< 5 >
ConfigurableTrimmedVertexFinder::theFilter
TrimmedTrackFilter theFilter
Definition: ConfigurableTrimmedVertexFinder.h:119
HLT_FULL_cff.candidates
candidates
Definition: HLT_FULL_cff.py:54992
ConfigurableTrimmedVertexFinder::analyseInputTracks
virtual void analyseInputTracks(const std::vector< reco::TransientTrack > &tracks) const
Definition: ConfigurableTrimmedVertexFinder.h:88
ConfigurableTrimmedVertexFinder::theClusterFinder
TrimmedVertexFinder theClusterFinder
Definition: ConfigurableTrimmedVertexFinder.h:114
TrimmedTrackFilter
Definition: TrimmedTrackFilter.h:13
TrimmedTrackFilter::ptCut
double ptCut() const
Definition: TrimmedTrackFilter.h:23
ParameterSet.h
ConfigurableTrimmedVertexFinder::clone
ConfigurableTrimmedVertexFinder * clone() const override
Definition: ConfigurableTrimmedVertexFinder.h:83
ConfigurableTrimmedVertexFinder::theTrackCompatibilityToSV
float theTrackCompatibilityToSV
Definition: ConfigurableTrimmedVertexFinder.h:117
ConfigurableTrimmedVertexFinder::setVertexFitProbabilityCut
void setVertexFitProbabilityCut(float cut)
Definition: ConfigurableTrimmedVertexFinder.h:78
ConfigurableTrimmedVertexFinder::setMaxNbOfVertices
void setMaxNbOfVertices(int max)
Definition: ConfigurableTrimmedVertexFinder.h:79
ConfigurableTrimmedVertexFinder::theMaxNbOfVertices
int theMaxNbOfVertices
Definition: ConfigurableTrimmedVertexFinder.h:118
ConfigurableTrimmedVertexFinder::setParameters
void setParameters(const edm::ParameterSet &)
Definition: ConfigurableTrimmedVertexFinder.cc:18
ConfigurableTrimmedVertexFinder::vertices
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &tracks) const override
Definition: ConfigurableTrimmedVertexFinder.cc:26