CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
SmearedJetProducer_namespace::JetResolutionExtractorT< pat::Jet > Class Template Reference

Public Member Functions

 JetResolutionExtractorT (const edm::ParameterSet &cfg)
 
double operator() (const pat::Jet &jet) const
 
 ~JetResolutionExtractorT ()
 

Public Attributes

metsig::SignAlgoResolutions jetResolutions_
 

Detailed Description

template<>
class SmearedJetProducer_namespace::JetResolutionExtractorT< pat::Jet >

Definition at line 56 of file SmearedPATJetProducer.cc.

Constructor & Destructor Documentation

Definition at line 60 of file SmearedPATJetProducer.cc.

Definition at line 63 of file SmearedPATJetProducer.cc.

63 {}

Member Function Documentation

double SmearedJetProducer_namespace::JetResolutionExtractorT< pat::Jet >::operator() ( const pat::Jet jet) const
inline

Definition at line 65 of file SmearedPATJetProducer.cc.

References reco::LeafCandidate::energy(), edm::hlt::Exception, reco::Jet::getJetConstituents(), pat::Jet::isPFJet(), reco::LeafCandidate::p4(), pat::Jet::pfSpecific(), and reco::LeafCandidate::vertex().

66  {
67  if ( jet.isPFJet() ) {
68  reco::PFJet pfJet(jet.p4(), jet.vertex(), jet.pfSpecific(), jet.getJetConstituents());
69  metsig::SigInputObj pfJetResolution = jetResolutions_.evalPFJet(&pfJet);
70  if ( pfJetResolution.get_energy() > 0. ) {
71  return jet.energy()*(pfJetResolution.get_sigma_e()/pfJetResolution.get_energy());
72  } else {
73  return 0.;
74  }
75  } else {
76  throw cms::Exception("SmearedJetProducer::produce")
77  << " Jets of type other than PF not supported yet !!\n";
78  }
79  }
const PFSpecific & pfSpecific() const
retrieve the pf specific part of the jet
Definition: Jet.h:249
virtual const Point & vertex() const
vertex position
Jets made from PFObjects.
Definition: PFJet.h:22
virtual double energy() const
energy
bool isPFJet() const
check to see if the jet is a reco::PFJet
Definition: Jet.h:235
metsig::SigInputObj evalPFJet(const reco::PFJet *jet) const
virtual const LorentzVector & p4() const
four-momentum Lorentz vector
virtual Constituents getJetConstituents() const
list of constituents
Definition: Jet.cc:351

Member Data Documentation

Definition at line 81 of file SmearedPATJetProducer.cc.