File indexing completed on 2025-01-09 23:33:51
0001 #ifndef RecoMuon_CosmicMuonProducer_CosmicMuonLinksProducer_H
0002 #define RecoMuon_CosmicMuonProducer_CosmicMuonLinksProducer_H
0003
0004
0005
0006
0007
0008
0009 #include "FWCore/Framework/interface/stream/EDProducer.h"
0010 #include "FWCore/Utilities/interface/InputTag.h"
0011 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0012 #include "DataFormats/TrackReco/interface/TrackToTrackMap.h"
0013
0014 class MuonServiceProxy;
0015
0016 class CosmicMuonLinksProducer : public edm::stream::EDProducer<> {
0017 public:
0018 explicit CosmicMuonLinksProducer(const edm::ParameterSet&);
0019
0020 ~CosmicMuonLinksProducer() override;
0021
0022 void produce(edm::Event&, const edm::EventSetup&) override;
0023
0024 private:
0025 reco::TrackToTrackMap mapTracks(const edm::Handle<reco::TrackCollection>&,
0026 const edm::Handle<reco::TrackCollection>&) const;
0027
0028 int sharedHits(const reco::Track& track1, const reco::Track& track2) const;
0029
0030 MuonServiceProxy* theService;
0031
0032 std::vector<std::pair<edm::EDGetTokenT<reco::TrackCollection>, edm::EDGetTokenT<reco::TrackCollection> > >
0033 theTrackLinks;
0034 std::vector<std::pair<std::string, std::string> > theTrackLinkNames;
0035
0036 std::string category_;
0037 };
0038
0039 #endif