File indexing completed on 2024-04-06 12:27:00
0001 #ifndef MuonIdentification_InterestingEcalDetIdProducer_h
0002 #define MuonIdentification_InterestingEcalDetIdProducer_h
0003
0004 #include <memory>
0005 #include "FWCore/Framework/interface/Frameworkfwd.h"
0006 #include "FWCore/Framework/interface/stream/EDProducer.h"
0007 #include "FWCore/Utilities/interface/InputTag.h"
0008 #include "FWCore/Utilities/interface/ESGetToken.h"
0009
0010 #include "DataFormats/MuonReco/interface/Muon.h"
0011 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0012 #include "Geometry/Records/interface/CaloTopologyRecord.h"
0013 #include "Geometry/CaloTopology/interface/CaloTopology.h"
0014
0015 class CaloTopology;
0016 class InterestingEcalDetIdProducer : public edm::stream::EDProducer<> {
0017 public:
0018 explicit InterestingEcalDetIdProducer(const edm::ParameterSet&);
0019 ~InterestingEcalDetIdProducer() override;
0020 void produce(edm::Event&, const edm::EventSetup&) override;
0021 void beginRun(const edm::Run&, const edm::EventSetup&) override;
0022
0023 private:
0024 edm::InputTag inputCollection_;
0025 edm::EDGetTokenT<reco::MuonCollection> muonToken_;
0026 edm::ESGetToken<CaloTopology, CaloTopologyRecord> caloTopoToken_;
0027 const CaloTopology* caloTopology_;
0028 };
0029
0030 #endif