CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2/src/RecoEgamma/EgammaHLTProducers/interface/EgammaHLTEcalRecIsolationProducer.h

Go to the documentation of this file.
00001 #ifndef EgammaHLTProducers_EgammaHLTEcalRecIsolationProducer_h
00002 #define EgammaHLTProducers_EgammaHLTEcalRecIsolationProducer_h
00003 
00004 //*****************************************************************************
00005 // File:      EgammaRecHitIsolationProducer.h
00006 // ----------------------------------------------------------------------------
00007 // OrigAuth:  Matthias Mozer, adapted from EgammaHcalIsolationProducer by S. Harper
00008 // Institute: IIHE-VUB, RAL
00009 //=============================================================================
00010 //*****************************************************************************
00011 
00012 // -*- C++ -*-
00013 //
00014 
00015 
00016 // system include files
00017 #include <memory>
00018 
00019 // user include files
00020 #include "FWCore/Framework/interface/Frameworkfwd.h"
00021 #include "FWCore/Framework/interface/EDProducer.h"
00022 
00023 #include "FWCore/Framework/interface/Event.h"
00024 #include "FWCore/Framework/interface/MakerMacros.h"
00025 
00026 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00027 #include "RecoEgamma/EgammaIsolationAlgos/interface/EgammaRecHitIsolation.h"
00028 
00029 //
00030 // class declaration
00031 //
00032 
00033 class EgammaHLTEcalRecIsolationProducer : public edm::EDProducer {
00034    public:
00035       explicit EgammaHLTEcalRecIsolationProducer(const edm::ParameterSet&);
00036       ~EgammaHLTEcalRecIsolationProducer();
00037 
00038 
00039       virtual void produce(edm::Event&, const edm::EventSetup&);
00040    private:
00041   // ----------member data ---------------------------
00042 
00043   edm::InputTag recoEcalCandidateProducer_;
00044   edm::InputTag ecalBarrelRecHitProducer_;
00045   edm::InputTag ecalBarrelRecHitCollection_;
00046   edm::InputTag ecalEndcapRecHitProducer_;
00047   edm::InputTag ecalEndcapRecHitCollection_;
00048   edm::InputTag rhoProducer_;
00049 
00050   double egIsoPtMinBarrel_; //minimum Et noise cut
00051   double egIsoEMinBarrel_;  //minimum E noise cut
00052   double egIsoPtMinEndcap_; //minimum Et noise cut
00053   double egIsoEMinEndcap_;  //minimum E noise cut
00054   double egIsoConeSizeOut_; //outer cone size
00055   double egIsoConeSizeInBarrel_; //inner cone size
00056   double egIsoConeSizeInEndcap_; //inner cone size
00057   double egIsoJurassicWidth_ ; // exclusion strip width for jurassic veto
00058   float effectiveAreaBarrel_;
00059   float effectiveAreaEndcap_;
00060 
00061   bool doRhoCorrection_;
00062   float rhoScale_;
00063   float rhoMax_;
00064 
00065   bool useIsolEt_; //switch for isolEt rather than isolE
00066   bool tryBoth_ ; // use rechits from barrel + endcap
00067   bool subtract_ ; // subtract SC energy (allows veto cone of zero size)
00068   bool useNumCrystals_;// veto cones are specified in number of crystals not eta
00069 
00070   edm::ParameterSet conf_;
00071 };
00072 
00073 #endif