1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
#ifndef CorrectJet_H
#define CorrectJet_H
#include <string>
#include "FWCore/Framework/interface/EventSetup.h"
#include "DataFormats/JetReco/interface/Jet.h"
#include "JetMETCorrections/JetCorrector/interface/JetCorrector.h"
/** \class CorrectJet
*
* Correct jets
*
*/
class CorrectJet {
public:
CorrectJet() {}
/// Returns the corrected jet
void setCorrector(const reco::JetCorrector *corrector) { m_corrector = corrector; }
reco::Jet operator()(const reco::Jet &jet) const {
reco::Jet correctedJet(jet.p4(), jet.vertex());
if (m_corrector)
correctedJet.scaleEnergy(m_corrector->correction(jet));
return correctedJet;
}
private:
const reco::JetCorrector *m_corrector;
};
#endif
|