00001 #ifndef MuonIsolationProducers_MuIsoDepositProducer_H 00002 #define MuonIsolationProducers_MuIsoDepositProducer_H 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 00007 #include "PhysicsTools/IsolationAlgos/interface/IsoDepositExtractor.h" 00008 #include <string> 00009 00010 namespace edm { class Event; } 00011 namespace edm { class EventSetup; } 00012 00013 class MuIsoDepositProducer : public edm::EDProducer { 00014 00015 public: 00016 00018 MuIsoDepositProducer(const edm::ParameterSet&); 00019 00021 virtual ~MuIsoDepositProducer(); 00022 00024 virtual void produce(edm::Event&, const edm::EventSetup&); 00025 00026 private: 00028 edm::ParameterSet theConfig; 00029 00032 std::string theInputType; 00033 00034 bool theExtractForCandidate; 00035 00036 std::string theMuonTrackRefType; 00037 edm::InputTag theMuonCollectionTag; 00038 std::vector<std::string> theDepositNames; 00039 bool theMultipleDepositsFlag; 00040 reco::isodeposit::IsoDepositExtractor * theExtractor; 00041 00042 }; 00043 #endif