CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
JetCorrectorImpl.h
Go to the documentation of this file.
1 #ifndef JetMETCorrections_JetCorrector_JetCorrectorImpl_h
2 #define JetMETCorrections_JetCorrector_JetCorrectorImpl_h
3 // -*- C++ -*-
4 //
5 // Package: JetMETCorrections/JetCorrector
6 // Class : JetCorrectorImpl
7 //
16 //
17 // Original Author: Christopher Jones
18 // Created: Fri, 29 Aug 2014 15:42:44 GMT
19 //
20 
21 // system include files
22 
23 // user include files
26 
27 // forward declarations
28 
29 namespace reco {
30 
32  {
33 
34  public:
36  virtual ~JetCorrectorImpl();
37 
39 
40  // ---------- const member functions ---------------------
42  virtual double correction (const LorentzVector& fJet) const = 0;
43 
45  virtual double correction (const reco::Jet& fJet) const = 0;
46 
48  virtual double correction (const reco::Jet& fJet,
49  const edm::RefToBase<reco::Jet>& fJetRef) const ;
50 
52  virtual double correction ( const reco::Jet& fJet,
53  const edm::RefToBase<reco::Jet>& fJetRef,
54  LorentzVector& corrected ) const ;
55 
57  virtual bool refRequired () const = 0;
58 
60  virtual bool vectorialCorrection () const ;
61 
62  // ---------- static member functions --------------------
63 
64  // ---------- member functions ---------------------------
65 
66  private:
67  JetCorrectorImpl(const JetCorrectorImpl&) = delete;
68 
69  const JetCorrectorImpl& operator=(const JetCorrectorImpl&) = delete;
70 
71  // ---------- member data --------------------------------
72 
73  };
74 }
75 
76 #endif
virtual double correction(const LorentzVector &fJet) const =0
get correction using Jet information only
virtual bool vectorialCorrection() const
if vectorial correction is provided
Base class for all types of Jets.
Definition: Jet.h:20
reco::Particle::LorentzVector LorentzVector
const JetCorrectorImpl & operator=(const JetCorrectorImpl &)=delete
virtual bool refRequired() const =0
if correction needs the jet reference
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Particle.h:21