CMS 3D CMS Logo

Public Member Functions | Private Attributes

HLTHFRecoEcalCandidateProducer Class Reference

#include <HLTHFRecoEcalCandidateProducer.h>

Inheritance diagram for HLTHFRecoEcalCandidateProducer:
edm::EDProducer edm::ProducerBase edm::ProductRegistryHelper

List of all members.

Public Member Functions

 HLTHFRecoEcalCandidateProducer (edm::ParameterSet const &conf)
virtual void produce (edm::Event &e, edm::EventSetup const &iSetup)

Private Attributes

HFRecoEcalCandidateAlgo algo_
double Cut2D_
std::vector< double > defaultDB_
double defaultSlope2D_
bool doPU_
edm::InputTag hfclusters_
std::vector< double > HFDBvector_
int HFDBversion_
reco::HFValueStruct hfvars_
edm::InputTag vertices_

Detailed Description

Definition at line 24 of file HLTHFRecoEcalCandidateProducer.h.


Constructor & Destructor Documentation

HLTHFRecoEcalCandidateProducer::HLTHFRecoEcalCandidateProducer ( edm::ParameterSet const &  conf) [explicit]

Definition at line 31 of file HLTHFRecoEcalCandidateProducer.cc.

                                                                                         :
  hfclusters_(conf.getParameter<edm::InputTag>("hfclusters")),
  HFDBversion_(conf.existsAs<bool>("HFDBversion") ? conf.getParameter<int>("HFDBversion"):99),//do nothing
  HFDBvector_(conf.existsAs<bool>("HFDBvector") ? conf.getParameter<std::vector<double> >("HFDBvector"):defaultDB_),
  Cut2D_(conf.getParameter<double>("intercept2DCut")),
  defaultSlope2D_((Cut2D_<=0.83)?(0.475):((Cut2D_>0.83 && Cut2D_<=0.9)?(0.275):(0.2))),//fix for hlt unable to add slope variable now
  hfvars_(HFDBversion_,HFDBvector_),
  algo_(conf.existsAs<bool>("Correct") ? conf.getParameter<bool>("Correct") :true,
        conf.getParameter<double>("e9e25Cut"),
        conf.getParameter<double>("intercept2DCut"),
        conf.existsAs<bool>("intercept2DSlope") ? conf.getParameter<double>("intercept2DSlope") : defaultSlope2D_,
        conf.getParameter<std::vector<double> >("e1e9Cut"),
        conf.getParameter<std::vector<double> >("eCOREe9Cut"),
        conf.getParameter<std::vector<double> >("eSeLCut"),
        hfvars_
) {

  produces<reco::RecoEcalCandidateCollection>();

} 

Member Function Documentation

void HLTHFRecoEcalCandidateProducer::produce ( edm::Event e,
edm::EventSetup const &  iSetup 
) [virtual]

Implements edm::EDProducer.

Definition at line 52 of file HLTHFRecoEcalCandidateProducer.cc.

References algo_, edm::Event::getByLabel(), hfclusters_, HFRecoEcalCandidateAlgo::produce(), and edm::Event::put().

                                                                                      {  
  
  
  edm::Handle<reco::SuperClusterCollection> super_clus;
  edm::Handle<reco::HFEMClusterShapeAssociationCollection> hf_assoc;
 
  e.getByLabel(hfclusters_,super_clus);
  e.getByLabel(hfclusters_,hf_assoc);
 
  int nvertex = 1;
   
  // create return data
  std::auto_ptr<reco::RecoEcalCandidateCollection> retdata1(new reco::RecoEcalCandidateCollection());

  
  algo_.produce(super_clus,*hf_assoc,*retdata1,nvertex);
 
  e.put(retdata1);

}

Member Data Documentation

Definition at line 37 of file HLTHFRecoEcalCandidateProducer.h.

Referenced by produce().

Definition at line 34 of file HLTHFRecoEcalCandidateProducer.h.

std::vector<double> HLTHFRecoEcalCandidateProducer::defaultDB_ [private]

Definition at line 33 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 35 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 32 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 29 of file HLTHFRecoEcalCandidateProducer.h.

Referenced by produce().

std::vector<double> HLTHFRecoEcalCandidateProducer::HFDBvector_ [private]

Definition at line 31 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 30 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 36 of file HLTHFRecoEcalCandidateProducer.h.

Definition at line 29 of file HLTHFRecoEcalCandidateProducer.h.