JetCorrectionUncertainty

Macros

Line Code
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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
#ifndef JetCorrectionUncertainty_h
#define JetCorrectionUncertainty_h

#include <string>
#include <vector>
#include "CondFormats/JetMETObjects/interface/SimpleJetCorrectionUncertainty.h"

class JetCorrectorParameters;

class JetCorrectionUncertainty {
public:
  JetCorrectionUncertainty();
  JetCorrectionUncertainty(const std::string& fDataFile);
  JetCorrectionUncertainty(const JetCorrectorParameters& fParameters);
  JetCorrectionUncertainty(const JetCorrectionUncertainty&) = delete;
  JetCorrectionUncertainty& operator=(const JetCorrectionUncertainty&) = delete;
  JetCorrectionUncertainty& operator=(JetCorrectionUncertainty&&) = default;
  ~JetCorrectionUncertainty() = default;

  void setParameters(const std::string& fDataFile);
  void setJetEta(float fEta);
  void setJetPt(float fPt);
  void setJetE(float fE);
  void setJetPhi(float fE);
  void setJetEMF(float fEMF);
  void setLepPx(float fLepPx);
  void setLepPy(float fLepPy);
  void setLepPz(float fLepPz);
  void setAddLepToJet(bool fAddLepToJet) { mAddLepToJet = fAddLepToJet; }
  float getUncertainty(bool fDirection);

private:
  std::vector<float> fillVector(const std::vector<std::string>& fNames);
  float getPtRel();
  //---- Member Data ---------
  float mJetE;
  float mJetEta;
  float mJetPt;
  float mJetPhi;
  float mJetEMF;
  float mLepPx;
  float mLepPy;
  float mLepPz;
  bool mAddLepToJet;
  bool mIsJetEset;
  bool mIsJetPtset;
  bool mIsJetPhiset;
  bool mIsJetEtaset;
  bool mIsJetEMFset;
  bool mIsLepPxset;
  bool mIsLepPyset;
  bool mIsLepPzset;
  SimpleJetCorrectionUncertainty mUncertainty;
};

#endif