-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSimpleJetCorrector.h
More file actions
42 lines (33 loc) · 1.25 KB
/
SimpleJetCorrector.h
File metadata and controls
42 lines (33 loc) · 1.25 KB
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
34
35
36
37
38
39
40
#ifndef SimpleJetCorrector_h
#define SimpleJetCorrector_h
#include <string>
#include <vector>
#include <TFormula.h>
class JetCorrectorParameters;
class SimpleJetCorrector
{
public:
//-------- Constructors --------------
SimpleJetCorrector();
SimpleJetCorrector(const std::string& fDataFile, const std::string& fOption = "");
SimpleJetCorrector(const JetCorrectorParameters& fParameters);
//-------- Destructor -----------------
~SimpleJetCorrector();
//-------- Member functions -----------
void setInterpolation(bool fInterpolation) {mDoInterpolation = fInterpolation;}
float correction(const std::vector<float>& fX,const std::vector<float>& fY) const;
const JetCorrectorParameters& parameters() const {return *mParameters;}
private:
//-------- Member functions -----------
SimpleJetCorrector(const SimpleJetCorrector&);
SimpleJetCorrector& operator= (const SimpleJetCorrector&);
float invert(std::vector<float> fX) const;
float correctionBin(unsigned fBin,const std::vector<float>& fY) const;
unsigned findInvertVar();
//-------- Member variables -----------
bool mDoInterpolation;
unsigned mInvertVar;
TFormula* mFunc;
JetCorrectorParameters* mParameters;
};
#endif