CMS 3D CMS Logo

PhotonEnergyCalibratorRun2.h
Go to the documentation of this file.
1 #ifndef PhotonEnergyCalibratorRun2_h
2 #define PhotonEnergyCalibratorRun2_h
3 
4 #include <TRandom.h>
8 
9 #include <vector>
10 
12  public:
13  // dummy constructor for persistence
15 
16  // further configuration will be added when we will learn how it will work
17  PhotonEnergyCalibratorRun2(bool isMC, bool synchronization, std::string correctionFile);
18 
20 
23  void initPrivateRng(TRandom *rnd) ;
24 
28 
31  void calibrate(reco::Photon &photon, unsigned int runNumber, edm::StreamID const & id = edm::StreamID::invalidStreamID()) const ;
32 
33  protected:
34  // whatever data will be needed
36  TRandom *rng_;
37  std::vector<double> smearings_;
38  std::vector<double> scales_;
39 
43  double gauss(edm::StreamID const& id) const ;
45 
46 };
47 
48 #endif
static StreamID invalidStreamID()
Definition: StreamID.h:48
double gauss(edm::StreamID const &id) const
EnergyScaleCorrection_class _correctionRetriever
void calibrate(SimplePhoton &photon, edm::StreamID const &id=edm::StreamID::invalidStreamID()) const
Read and get energy scale and smearings from .dat files.