#include <RecoTauTag/HLTProducers/interface/L2TauRelaxingIsolationSelector.h>
Public Member Functions | |
L2TauRelaxingIsolationSelector (const edm::ParameterSet &) | |
~L2TauRelaxingIsolationSelector () | |
Private Member Functions | |
virtual void | beginJob (const edm::EventSetup &) |
virtual void | endJob () |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
Private Attributes | |
edm::InputTag | associationInput_ |
std::vector< double > | drRMS_ |
std::vector< double > | ecalIsolEt_ |
double | et_ |
std::vector< double > | etaRMS_ |
std::vector< double > | nClusters_ |
std::vector< double > | phiRMS_ |
double | seedTowerEt_ |
std::vector< double > | towerIsolEt_ |
Definition at line 21 of file L2TauRelaxingIsolationSelector.h.
L2TauRelaxingIsolationSelector::L2TauRelaxingIsolationSelector | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 7 of file L2TauRelaxingIsolationSelector.cc.
00007 : 00008 associationInput_(iConfig.getParameter<edm::InputTag>("L2InfoAssociation")), 00009 ecalIsolEt_(iConfig.getParameter<std::vector<double> >("EcalIsolationEt")), 00010 towerIsolEt_(iConfig.getParameter<std::vector<double> >("TowerIsolationEt")), 00011 nClusters_(iConfig.getParameter<std::vector<double> >("NumberOfClusters")), 00012 phiRMS_(iConfig.getParameter<std::vector<double> >("ClusterPhiRMS")), 00013 etaRMS_(iConfig.getParameter<std::vector<double> >("ClusterEtaRMS")), 00014 drRMS_(iConfig.getParameter<std::vector<double> >("ClusterDRRMS")), 00015 et_(iConfig.getParameter<double>("MinJetEt")), 00016 seedTowerEt_(iConfig.getParameter<double>("SeedTowerEt")) 00017 { 00018 produces<CaloJetCollection>("Isolated"); 00019 }
L2TauRelaxingIsolationSelector::~L2TauRelaxingIsolationSelector | ( | ) |
void L2TauRelaxingIsolationSelector::beginJob | ( | const edm::EventSetup & | ) | [private, virtual] |
Reimplemented from edm::EDProducer.
Definition at line 69 of file L2TauRelaxingIsolationSelector.cc.
Reimplemented from edm::EDProducer.
Definition at line 75 of file L2TauRelaxingIsolationSelector.cc.
void L2TauRelaxingIsolationSelector::produce | ( | edm::Event & | iEvent, | |
const edm::EventSetup & | iSetup | |||
) | [private, virtual] |
Implements edm::EDProducer.
Definition at line 33 of file L2TauRelaxingIsolationSelector.cc.
References associationInput_, drRMS_, reco::L2TauIsolationInfo::ECALClusterDRRMS, reco::L2TauIsolationInfo::ECALClusterEtaRMS, reco::L2TauIsolationInfo::ECALClusterNClusters, reco::L2TauIsolationInfo::ECALClusterPhiRMS, reco::L2TauIsolationInfo::ECALIsolConeCut, ecalIsolEt_, reco::Particle::et(), et_, etaRMS_, edm::Event::getByLabel(), metsig::jet, nClusters_, p, phiRMS_, edm::Event::put(), reco::L2TauIsolationInfo::SeedTowerEt, seedTowerEt_, reco::L2TauIsolationInfo::TowerIsolConeCut, and towerIsolEt_.
00034 { 00035 using namespace edm; 00036 Handle<L2TauInfoAssociation> Imap; 00037 00038 std::auto_ptr<CaloJetCollection> l2IsolCaloJets( new CaloJetCollection ); 00039 iEvent.getByLabel(associationInput_ ,Imap); 00040 00041 if(Imap->size()>0) 00042 for(L2TauInfoAssociation::const_iterator p = Imap->begin();p!=Imap->end();++p) 00043 { 00044 //Retrieve The L2TauIsolationInfo Class from the AssociationMap 00045 const L2TauIsolationInfo l2info = p->val; 00046 //Retrieve the Jet 00047 const CaloJet jet =*(p->key); 00048 00049 //If The Cuts are Satisfied 00050 if(jet.et()>et_) 00051 if(l2info.SeedTowerEt>seedTowerEt_) 00052 if(l2info.ECALIsolConeCut< ecalIsolEt_[0]+ecalIsolEt_[1]*jet.et()+ecalIsolEt_[2]*jet.et()*jet.et()) 00053 if(l2info.ECALClusterNClusters <(int)(nClusters_[0]+nClusters_[1]*jet.et()+nClusters_[2]*jet.et()*jet.et())) 00054 if(l2info.ECALClusterEtaRMS <etaRMS_[0]+etaRMS_[1]*jet.et()+etaRMS_[2]*jet.et()*jet.et()) 00055 if(l2info.ECALClusterPhiRMS <phiRMS_[0]+phiRMS_[1]*jet.et()+phiRMS_[2]*jet.et()*jet.et()) 00056 if(l2info.ECALClusterDRRMS <drRMS_[0]+drRMS_[1]*jet.et()+drRMS_[2]*jet.et()*jet.et()) 00057 if(l2info.TowerIsolConeCut<towerIsolEt_[0]+towerIsolEt_[1]*jet.et()+towerIsolEt_[2]*jet.et()*jet.et()) 00058 { 00059 l2IsolCaloJets->push_back(jet); 00060 } 00061 00062 } 00063 00064 iEvent.put(l2IsolCaloJets, "Isolated"); 00065 }
std::vector<double> L2TauRelaxingIsolationSelector::drRMS_ [private] |
std::vector<double> L2TauRelaxingIsolationSelector::ecalIsolEt_ [private] |
double L2TauRelaxingIsolationSelector::et_ [private] |
std::vector<double> L2TauRelaxingIsolationSelector::etaRMS_ [private] |
std::vector<double> L2TauRelaxingIsolationSelector::nClusters_ [private] |
std::vector<double> L2TauRelaxingIsolationSelector::phiRMS_ [private] |
double L2TauRelaxingIsolationSelector::seedTowerEt_ [private] |
std::vector<double> L2TauRelaxingIsolationSelector::towerIsolEt_ [private] |