CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 
27  void calibrate(SimplePhoton &photon, edm::StreamID const &id = edm::StreamID::invalidStreamID()) const;
28 
31  void calibrate(reco::Photon &photon,
32  unsigned int runNumber,
33  edm::StreamID const &id = edm::StreamID::invalidStreamID()) const;
34 
35 protected:
36  // whatever data will be needed
38  TRandom *rng_;
39  std::vector<double> smearings_;
40  std::vector<double> scales_;
41 
45  double gauss(edm::StreamID const &id) const;
47 };
48 
49 #endif
static StreamID invalidStreamID()
Definition: StreamID.h:45
double gauss(edm::StreamID const &id) const
tuple correctionFile
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.