00001 // -*- C++ -*- 00002 // 00003 // Package: EgammaHLTProducers 00004 // Class: EgammaHLTHcalIsolationProducersRegional 00005 // 00008 // 00009 // Original Author: Monica Vazquez Acosta (CERN) 00010 // Created: Tue Jun 13 14:48:33 CEST 2006 00011 // $Id: EgammaHLTHcalIsolationProducersRegional.h,v 1.4 2011/12/20 09:43:03 sani Exp $ 00012 // 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 00028 class EgammaHLTHcalIsolation; 00029 00030 // 00031 // class declaration 00032 // 00033 00034 class EgammaHLTHcalIsolationProducersRegional : public edm::EDProducer { 00035 public: 00036 explicit EgammaHLTHcalIsolationProducersRegional(const edm::ParameterSet&); 00037 ~EgammaHLTHcalIsolationProducersRegional(); 00038 00039 //now we need to disable (or even define) copy, assignment operators as we own a pointer 00040 private: 00041 EgammaHLTHcalIsolationProducersRegional(const EgammaHLTHcalIsolationProducersRegional& rhs){} 00042 EgammaHLTHcalIsolationProducersRegional& operator=(const EgammaHLTHcalIsolationProducersRegional& rhs){return *this;} 00043 00044 public: 00045 virtual void produce(edm::Event&, const edm::EventSetup&); 00046 00047 private: 00048 // ----------member data --------------------------- 00049 00050 edm::InputTag recoEcalCandidateProducer_; 00051 edm::InputTag hbheRecHitProducer_; 00052 edm::InputTag rhoProducer_; 00053 bool doRhoCorrection_; 00054 float rhoScale_; 00055 float rhoMax_; 00056 bool doEtSum_; 00057 float effectiveAreaBarrel_; 00058 float effectiveAreaEndcap_; 00059 00060 EgammaHLTHcalIsolation* isolAlgo_; 00061 }; 00062