PandaRoot
BSEmcThetaEnergyECF.h
Go to the documentation of this file.
1 #ifndef BSEMCTHETAENERGYECF_HH
2 #define BSEMCTHETAENERGYECF_HH
3 
4 #include <memory>
5 
6 #include "Rtypes.h"
7 #include "RtypesCore.h"
8 #include "TH2.h"
9 #include "TObject.h"
10 #include "TString.h"
11 
12 #include "BSEmcCorrection.h"
13 #include "BSEmcRecoHit.h"
14 
15 class BSEmcRecoHit;
16 class TBuffer;
17 class TClass;
18 class TMemberInspector;
19 
29  public:
35  virtual void Correct(BSEmcRecoHit *t_recoHit) const;
36  void SetVersion(Int_t t_version) { fVersion = t_version; }
37  Int_t GetVersion() const { return fVersion; }
38 
39  protected:
40  virtual Double_t GetCorrectedEnergy(Double_t t_energy, Double_t t_thetaRad, Double_t t_phiRad) const /*override*/;
41  void SetupLookUpMap(const TString &t_filename, const TString &t_histname);
42  Bool_t FindTheBin(Float_t t_value_x, Float_t t_value_y, Int_t &t_bin_x, Int_t &t_bin_y) const;
43  Double_t GetValueInZ(Float_t t_value_x, Float_t t_value_y) const;
44 
45  std::unique_ptr<TH2F> fHEnergyRatioPhoton{nullptr};
46 
47  Int_t fVersion{3};
49 };
50 
51 #endif /*BSEMCTHETAENERGYECF_HH*/
Resembles/Contains all information a particle hitting the EMC can provide for later use in the PID st...
Definition: BSEmcRecoHit.h:31
virtual void Correct(BSEmcRecoHit *t_recoHit) const
Apply corrections.
Double_t GetValueInZ(Float_t t_value_x, Float_t t_value_y) const
Energy correction factor/function interface.
ClassDef(BSEmcThetaEnergyECF, 1)
std::unique_ptr< TH2F > fHEnergyRatioPhoton
void SetVersion(Int_t t_version)
Bool_t FindTheBin(Float_t t_value_x, Float_t t_value_y, Int_t &t_bin_x, Int_t &t_bin_y) const
virtual Double_t GetCorrectedEnergy(Double_t t_energy, Double_t t_thetaRad, Double_t t_phiRad) const
void SetupLookUpMap(const TString &t_filename, const TString &t_histname)
Theta and Energy dependent energy correction factor.