CMS 3D CMS Logo

L2ResScaleCalculator.h
Go to the documentation of this file.
1 #ifndef JetMETCorrections_FFTJetObjects_L2ResScaleCalculator_h
2 #define JetMETCorrections_FFTJetObjects_L2ResScaleCalculator_h
3 
4 #include <cassert>
5 
9 
11 public:
12  inline explicit L2ResScaleCalculator(const edm::ParameterSet& ps)
13  : m_radiusFactor(ps.getParameter<double>("radiusFactor")) {}
14 
15  inline ~L2ResScaleCalculator() override {}
16 
17  inline void mapFFTJet(const reco::Jet& /* jet */,
18  const reco::FFTJet<float>& fftJet,
19  const math::XYZTLorentzVector& current,
20  double* buf,
21  const unsigned dim) const override {
22  if (dim != 2)
23  throw cms::Exception("FFTJetBadConfig") << "In L2ResScaleCalculator::mapFFTJet: "
24  << "invalid table dimensionality: " << dim << std::endl;
25  assert(buf);
26  const double radius = fftJet.f_recoScale();
27  buf[0] = radius * m_radiusFactor;
28  buf[1] = current.eta();
29  }
30 
31 private:
33 };
34 
35 #endif // JetMETCorrections_FFTJetObjects_L2ResScaleCalculator_h
reco::Jet
Base class for all types of Jets.
Definition: Jet.h:20
AbsFFTSpecificScaleCalculator.h
L2ResScaleCalculator::~L2ResScaleCalculator
~L2ResScaleCalculator() override
Definition: L2ResScaleCalculator.h:15
L2ResScaleCalculator::L2ResScaleCalculator
L2ResScaleCalculator(const edm::ParameterSet &ps)
Definition: L2ResScaleCalculator.h:12
L2ResScaleCalculator
Definition: L2ResScaleCalculator.h:10
reco::FFTJet< float >
cms::cuda::assert
assert(be >=bs)
L2ResScaleCalculator::mapFFTJet
void mapFFTJet(const reco::Jet &, const reco::FFTJet< float > &fftJet, const math::XYZTLorentzVector &current, double *buf, const unsigned dim) const override
Definition: L2ResScaleCalculator.h:17
L2ResScaleCalculator::m_radiusFactor
double m_radiusFactor
Definition: L2ResScaleCalculator.h:32
edm::ParameterSet
Definition: ParameterSet.h:47
reco::FFTJet::f_recoScale
Real f_recoScale() const
Definition: FFTJet.h:85
visDQMUpload.buf
buf
Definition: visDQMUpload.py:160
AbsFFTSpecificScaleCalculator
Definition: AbsFFTSpecificScaleCalculator.h:13
math::XYZTLorentzVector
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
Exception
Definition: hltDiff.cc:245
CosmicsPD_Skims.radius
radius
Definition: CosmicsPD_Skims.py:135
Exception.h
ParameterSet.h