CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/RecoMuon/L2MuonIsolationProducer/src/L2MuonIsolationProducer.h

Go to the documentation of this file.
00001 #ifndef RecoMuon_L2MuonIsolationProducer_H
00002 #define RecoMuon_L2MuonIsolationProducer_H
00003 
00011 #include "FWCore/Framework/interface/EDProducer.h"
00012 #include "DataFormats/Common/interface/Handle.h"
00013 #include "FWCore/Framework/interface/ESHandle.h"
00014 #include "FWCore/Framework/interface/Event.h"
00015 
00016 #include "PhysicsTools/IsolationAlgos/interface/IsoDepositExtractor.h"
00017 #include "RecoMuon/MuonIsolation/interface/MuIsoBaseIsolator.h"
00018 
00019 class L2MuonIsolationProducer : public edm::EDProducer {
00020 
00021  public:
00022 
00024   L2MuonIsolationProducer(const edm::ParameterSet&);
00025   
00027   virtual ~L2MuonIsolationProducer(); 
00028 
00030   virtual void beginJob();
00031 
00033   virtual void produce(edm::Event&, const edm::EventSetup&);
00034   // ex virtual void reconstruct();
00035 
00036  private:
00037   
00038   // Muon track Collection Label
00039   edm::InputTag theSACollectionLabel;
00040 
00041   // Option to write MuIsoDeposits into the event
00042   bool optOutputDecision;
00043 
00044   // Option to write MuIsoDeposit sum into the event
00045   bool optOutputIsolatorFloat;
00046 
00047   // MuIsoExtractor
00048   reco::isodeposit::IsoDepositExtractor* theExtractor;
00049 
00050   // muon isolator 
00051   muonisolation::MuIsoBaseIsolator * theDepositIsolator;
00052 
00053 };
00054 
00055 #endif