File indexing completed on 2024-04-06 12:31:07
0001 #ifndef VertexAssociatorByTracks_h
0002 #define VertexAssociatorByTracks_h
0003
0004 #include "SimDataFormats/Associations/interface/TrackAssociation.h"
0005 #include "SimDataFormats/Associations/interface/VertexToTrackingVertexAssociatorBaseImpl.h"
0006
0007 class TrackingParticleSelector;
0008
0009 class VertexAssociatorByTracks : public reco::VertexToTrackingVertexAssociatorBaseImpl {
0010 public:
0011 VertexAssociatorByTracks(const edm::EDProductGetter *productGetter,
0012 double R2SMatchedSimRatio,
0013 double R2SMatchedRecoRatio,
0014 double S2RMatchedSimRatio,
0015 double S2RMatchedRecoRatio,
0016 const TrackingParticleSelector *selector,
0017 reco::TrackBase::TrackQuality trackQuality,
0018 const reco::RecoToSimCollection *trackRecoToSimAssociation,
0019 const reco::SimToRecoCollection *trackSimToRecoAssociation);
0020
0021 ~VertexAssociatorByTracks() override;
0022
0023
0024 reco::VertexRecoToSimCollection associateRecoToSim(const edm::Handle<edm::View<reco::Vertex>> &vCH,
0025 const edm::Handle<TrackingVertexCollection> &tVCH) const override;
0026
0027 reco::VertexSimToRecoCollection associateSimToReco(const edm::Handle<edm::View<reco::Vertex>> &vCH,
0028 const edm::Handle<TrackingVertexCollection> &tVCH) const override;
0029
0030 private:
0031
0032 const edm::EDProductGetter *productGetter_;
0033
0034 const double R2SMatchedSimRatio_;
0035 const double R2SMatchedRecoRatio_;
0036 const double S2RMatchedSimRatio_;
0037 const double S2RMatchedRecoRatio_;
0038
0039 const TrackingParticleSelector *selector_;
0040 const reco::TrackBase::TrackQuality trackQuality_;
0041
0042 const reco::RecoToSimCollection *trackRecoToSimAssociation_;
0043 const reco::SimToRecoCollection *trackSimToRecoAssociation_;
0044 };
0045
0046 #endif