File indexing completed on 2024-05-02 05:10:04
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef TauAnalysis_MCEmbeddingTools_TrackerCleaner_H
0014 #define TauAnalysis_MCEmbeddingTools_TrackerCleaner_H
0015
0016 #include "DataFormats/Common/interface/Handle.h"
0017 #include "DataFormats/MuonReco/interface/MuonEnergy.h"
0018 #include "DataFormats/PatCandidates/interface/Muon.h"
0019 #include "FWCore/Framework/interface/Event.h"
0020 #include "FWCore/Framework/interface/MakerMacros.h"
0021 #include "FWCore/Framework/interface/stream/EDProducer.h"
0022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0023
0024 #include "TrackingTools/Records/interface/TrackingComponentsRecord.h"
0025 #include "TrackingTools/TrackAssociator/interface/TrackAssociatorParameters.h"
0026 #include "TrackingTools/TrackAssociator/interface/TrackDetectorAssociator.h"
0027
0028 #include "DataFormats/Common/interface/DetSetVectorNew.h"
0029 #include "DataFormats/Common/interface/SortedCollection.h"
0030 #include "DataFormats/TrackerRecHit2D/interface/BaseTrackerRecHit.h"
0031 #include "DataFormats/TrackerRecHit2D/interface/OmniClusterRef.h"
0032 #include "DataFormats/TrackerRecHit2D/interface/SiStripMatchedRecHit2D.h"
0033
0034 #include <iostream>
0035 #include <map>
0036 #include <string>
0037
0038 template <typename T>
0039 class TrackerCleaner : public edm::stream::EDProducer<> {
0040 public:
0041 explicit TrackerCleaner(const edm::ParameterSet &);
0042 ~TrackerCleaner() override;
0043
0044 private:
0045 void produce(edm::Event &, const edm::EventSetup &) override;
0046
0047 const edm::EDGetTokenT<edm::View<pat::Muon>> mu_input_;
0048 typedef edmNew::DetSetVector<T> TrackClusterCollection;
0049
0050 std::map<std::string, edm::EDGetTokenT<TrackClusterCollection>> inputs_;
0051
0052 bool match_rechit_type(const TrackingRecHit &murechit);
0053 };
0054
0055 #endif