CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch2/src/RecoBTag/SoftLepton/plugins/SoftPFElectronProducer.h

Go to the documentation of this file.
00001 #ifndef RecoBTag_SoftLepton_SoftPFElectronProducer_h
00002 #define RecoBTag_SoftLepton_SoftPFElectronProducer_h
00003 
00004 
00005 #include <vector>
00006 
00007 #include "FWCore/Framework/interface/EDProducer.h"
00008 #include "FWCore/Framework/interface/Event.h"
00009 #include "FWCore/Framework/interface/EventSetup.h"
00010 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00011 #include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
00012 
00013 // SoftPFElectronProducer:  the SoftPFElectronProducer takes
00014 // a PFCandidateCollection as input and produces a RefVector
00015 // to the likely soft electrons in this collection.
00016 
00017 class SoftPFElectronProducer : public edm::EDProducer
00018 {
00019 
00020   public:
00021 
00022     SoftPFElectronProducer (const edm::ParameterSet& conf);
00023     ~SoftPFElectronProducer();
00024 
00025   private:
00026 
00027     virtual void produce(edm::Event& iEvent, const edm::EventSetup& iSetup);
00028     bool isClean(const reco::GsfElectron& gsfcandidate);
00029 
00030     edm::InputTag gsfElectronTag_;
00031 
00032     std::vector<double> barrelPtCuts_;
00033     std::vector<double> barreldRGsfTrackElectronCuts_;
00034     std::vector<double> barrelEemPinRatioCuts_;
00035     std::vector<double> barrelMVACuts_;
00036     std::vector<double> barrelInversedRFirstLastHitCuts_;
00037     std::vector<double> barrelRadiusFirstHitCuts_;
00038     std::vector<double> barrelZFirstHitCuts_;
00039 
00040     std::vector<double> forwardPtCuts_;
00041     std::vector<double> forwardInverseFBremCuts_;
00042     std::vector<double> forwarddRGsfTrackElectronCuts_;
00043     std::vector<double> forwardRadiusFirstHitCuts_;
00044     std::vector<double> forwardZFirstHitCuts_;
00045     std::vector<double> forwardMVACuts_;
00046 };
00047 
00048 #endif