CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/RecoMuon/L3MuonIsolationProducer/src/L3MuonIsolationProducer.h

Go to the documentation of this file.
00001 #ifndef L3MuonIsolationProducer_L3MuonIsolationProducer_H
00002 #define L3MuonIsolationProducer_L3MuonIsolationProducer_H
00003 
00007 #include "FWCore/Framework/interface/EDProducer.h"
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 
00010 #include "RecoMuon/MuonIsolation/interface/Cuts.h"
00011 #include "PhysicsTools/IsolationAlgos/interface/IsoDepositExtractor.h"
00012 
00013 #include <string>
00014 
00015 namespace edm { class Event; }
00016 namespace edm { class EventSetup; }
00017 
00018 class L3MuonIsolationProducer : public edm::EDProducer {
00019 
00020 public:
00021 
00023   L3MuonIsolationProducer(const edm::ParameterSet&);
00024   
00026   virtual ~L3MuonIsolationProducer(); 
00027 
00029   virtual void beginJob();
00030   
00032   virtual void produce(edm::Event&, const edm::EventSetup&);
00033 
00034 private:
00035 
00036   edm::ParameterSet theConfig;
00037 
00038   // Muon track Collection Label
00039   edm::InputTag theMuonCollectionLabel;
00040 
00041   // Isolation cuts
00042   muonisolation::Cuts theCuts;
00043 
00044   // Option to write MuIsoDeposits into the event
00045   double optOutputIsoDeposits;
00046 
00047   // MuIsoExtractor
00048   reco::isodeposit::IsoDepositExtractor * theExtractor;
00049 
00052   double theTrackPt_Min;
00053 
00056   int theMaxNTracks;
00057 
00059   bool theApplyCutsORmaxNTracks;
00060 
00061 };
00062 
00063 #endif