#include <RecoEgamma/EgammaHLTProducers/interface/EgammaHLTHcalIsolationDoubleConeProducers.h>
Public Member Functions | |
EgammaHLTHcalIsolationDoubleConeProducers (const edm::ParameterSet &) | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
~EgammaHLTHcalIsolationDoubleConeProducers () | |
Private Attributes | |
edm::ParameterSet | conf_ |
double | egHcalExclusion_ |
double | egHcalIsoConeSize_ |
double | egHcalIsoPtMin_ |
edm::InputTag | hbRecHitProducer_ |
edm::InputTag | hfRecHitProducer_ |
edm::InputTag | recoEcalCandidateProducer_ |
EgammaHLTHcalIsolationDoubleCone * | test_ |
Definition at line 36 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
EgammaHLTHcalIsolationDoubleConeProducers::EgammaHLTHcalIsolationDoubleConeProducers | ( | const edm::ParameterSet & | config | ) | [explicit] |
Definition at line 36 of file EgammaHLTHcalIsolationDoubleConeProducers.cc.
References conf_, egHcalExclusion_, egHcalIsoConeSize_, egHcalIsoPtMin_, edm::ParameterSet::getParameter(), hbRecHitProducer_, hfRecHitProducer_, recoEcalCandidateProducer_, and test_.
00036 : conf_(config) 00037 { 00038 // use configuration file to setup input/output collection names 00039 recoEcalCandidateProducer_ = conf_.getParameter<edm::InputTag>("recoEcalCandidateProducer"); 00040 00041 hbRecHitProducer_ = conf_.getParameter<edm::InputTag>("hbRecHitProducer"); 00042 hfRecHitProducer_ = conf_.getParameter<edm::InputTag>("hfRecHitProducer"); 00043 00044 egHcalIsoPtMin_ = conf_.getParameter<double>("egHcalIsoPtMin"); 00045 egHcalIsoConeSize_ = conf_.getParameter<double>("egHcalIsoConeSize"); 00046 egHcalExclusion_ = conf_.getParameter<double>("egHcalExclusion"); 00047 00048 test_ = new EgammaHLTHcalIsolationDoubleCone(egHcalIsoPtMin_,egHcalIsoConeSize_,egHcalExclusion_); 00049 00050 00051 //register your products 00052 produces < reco::RecoEcalCandidateIsolationMap >(); 00053 }
EgammaHLTHcalIsolationDoubleConeProducers::~EgammaHLTHcalIsolationDoubleConeProducers | ( | ) |
Definition at line 56 of file EgammaHLTHcalIsolationDoubleConeProducers.cc.
References test_.
00056 {delete test_;}
void EgammaHLTHcalIsolationDoubleConeProducers::produce | ( | edm::Event & | iEvent, | |
const edm::EventSetup & | iSetup | |||
) | [virtual] |
Implements edm::EDProducer.
Definition at line 65 of file EgammaHLTHcalIsolationDoubleConeProducers.cc.
References begin, edm::EventSetup::get(), edm::Event::getByLabel(), hbRecHitProducer_, hfRecHitProducer_, edm::AssociationMap< Tag >::insert(), EgammaHLTHcalIsolationDoubleCone::isolPtSum(), edm::ESHandle< T >::product(), edm::Handle< T >::product(), edm::Event::put(), recoEcalCandidateProducer_, and test_.
00066 { 00067 // std::cout << "YYY" << egHcalIsoConeSize_ << " " << egHcalExclusion_ <<std::endl; 00068 // Get the HLT filtered objects 00069 edm::Handle<reco::RecoEcalCandidateCollection> recoecalcandHandle; 00070 iEvent.getByLabel(recoEcalCandidateProducer_,recoecalcandHandle); 00071 00072 // Get the barrel hcal hits 00073 edm::Handle<HBHERecHitCollection> hhitBarrelHandle; 00074 iEvent.getByLabel(hbRecHitProducer_, hhitBarrelHandle); 00075 const HBHERecHitCollection* hcalhitBarrelCollection = hhitBarrelHandle.product(); 00076 // Get the forward hcal hits 00077 edm::Handle<HFRecHitCollection> hhitEndcapHandle; 00078 iEvent.getByLabel(hfRecHitProducer_, hhitEndcapHandle); 00079 const HFRecHitCollection* hcalhitEndcapCollection = hhitEndcapHandle.product(); 00080 //Get Calo Geometry 00081 edm::ESHandle<CaloGeometry> pG; 00082 iSetup.get<CaloGeometryRecord>().get(pG); 00083 const CaloGeometry* caloGeom = pG.product(); 00084 00085 reco::RecoEcalCandidateIsolationMap isoMap; 00086 00087 00088 for(reco::RecoEcalCandidateCollection::const_iterator iRecoEcalCand = recoecalcandHandle->begin(); iRecoEcalCand != recoecalcandHandle->end(); iRecoEcalCand++){ 00089 00090 reco::RecoEcalCandidateRef recoecalcandref(recoecalcandHandle,iRecoEcalCand -recoecalcandHandle ->begin()); 00091 00092 const reco::RecoCandidate *tempiRecoEcalCand = &(*recoecalcandref); 00093 float isol = test_->isolPtSum(tempiRecoEcalCand,hcalhitBarrelCollection,hcalhitEndcapCollection,caloGeom); 00094 00095 isoMap.insert(recoecalcandref, isol); 00096 // std::cout << isol << std::endl; 00097 } 00098 00099 std::auto_ptr<reco::RecoEcalCandidateIsolationMap> isolMap(new reco::RecoEcalCandidateIsolationMap(isoMap)); 00100 iEvent.put(isolMap); 00101 00102 }
Definition at line 54 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers().
double EgammaHLTHcalIsolationDoubleConeProducers::egHcalExclusion_ [private] |
Definition at line 52 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers().
double EgammaHLTHcalIsolationDoubleConeProducers::egHcalIsoConeSize_ [private] |
Definition at line 51 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers().
double EgammaHLTHcalIsolationDoubleConeProducers::egHcalIsoPtMin_ [private] |
Definition at line 50 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers().
Definition at line 47 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers(), and produce().
Definition at line 48 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers(), and produce().
Definition at line 46 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers(), and produce().
Definition at line 56 of file EgammaHLTHcalIsolationDoubleConeProducers.h.
Referenced by EgammaHLTHcalIsolationDoubleConeProducers(), produce(), and ~EgammaHLTHcalIsolationDoubleConeProducers().