CMS 3D CMS Logo

Classes | Namespaces | Functions
TrackVertexArbitration.h File Reference
#include <memory>
#include <set>
#include <unordered_map>
#include "TrackingTools/TransientTrack/interface/TransientTrack.h"
#include "TrackingTools/TransientTrack/interface/CandidatePtrTransientTrack.h"
#include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h"
#include "TrackingTools/Records/interface/TransientTrackRecord.h"
#include "TrackingTools/IPTools/interface/IPTools.h"
#include "FWCore/Framework/interface/EDProducer.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/MakerMacros.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "DataFormats/Common/interface/Handle.h"
#include "DataFormats/TrackReco/interface/Track.h"
#include "DataFormats/TrackReco/interface/TrackFwd.h"
#include "DataFormats/VertexReco/interface/Vertex.h"
#include "DataFormats/VertexReco/interface/VertexFwd.h"
#include "RecoVertex/VertexTools/interface/VertexDistance3D.h"
#include "DataFormats/BeamSpot/interface/BeamSpot.h"
#include "RecoVertex/AdaptiveVertexFit/interface/AdaptiveVertexFitter.h"
#include "RecoVertex/KalmanVertexFit/interface/KalmanVertexUpdator.h"
#include "RecoVertex/KalmanVertexFit/interface/KalmanVertexTrackCompatibilityEstimator.h"
#include "RecoVertex/KalmanVertexFit/interface/KalmanVertexSmoother.h"
#include "TrackingTools/GeomPropagators/interface/AnalyticalImpactPointExtrapolator.h"
#include "RecoVertex/VertexPrimitives/interface/ConvertToFromReco.h"
#include "DataFormats/Candidate/interface/CandidateFwd.h"
#include "RecoVertex/AdaptiveVertexFinder/interface/SVTimeHelpers.h"
#include "FWCore/Utilities/interface/isFinite.h"
#include "DataFormats/GeometryVector/interface/VectorUtil.h"

Go to the source code of this file.

Classes

class  TrackVertexArbitration< VTX >
 

Namespaces

 svhelper
 

Functions

double svhelper::cov33 (const reco::Vertex &sv)
 
double svhelper::cov33 (const reco::VertexCompositePtrCandidate &sv)
 
float trackWeight (const reco::Vertex &sv, const reco::TransientTrack &track)
 
float trackWeight (const reco::VertexCompositePtrCandidate &sv, const reco::TransientTrack &tt)
 

Function Documentation

float trackWeight ( const reco::Vertex sv,
const reco::TransientTrack track 
)
float trackWeight ( const reco::VertexCompositePtrCandidate sv,
const reco::TransientTrack tt 
)

Definition at line 125 of file TrackVertexArbitration.h.

References reco::TransientTrack::basicTransientTrack(), HltBtagPostValidation_cff::c, reco::CandidatePtrTransientTrack::candidate(), reco::CompositePtrCandidate::daughterPtrVector(), and spr::find().

125  {
127  dynamic_cast<const reco::CandidatePtrTransientTrack *>(tt.basicTransientTrack());
128  if (cptt == nullptr)
129  edm::LogError("DynamicCastingFailed") << "Casting of TransientTrack to CandidatePtrTransientTrack failed!";
130  else {
131  const reco::CandidatePtr &c = cptt->candidate();
132  if (std::find(sv.daughterPtrVector().begin(), sv.daughterPtrVector().end(), c) != sv.daughterPtrVector().end())
133  return 1.0;
134  else
135  return 0;
136  }
137  return 0;
138 }
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
virtual const daughters & daughterPtrVector() const
references to daughtes
CandidatePtr candidate() const override
const BasicTransientTrack * basicTransientTrack() const