CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RegressionHelper.h
Go to the documentation of this file.
1 #ifndef __EgammaElectronAlgos_RegressionHelper_h__
2 #define __EgammaElectronAlgos_RegressionHelper_h__
3 
9 
13 
21 
24 
26 public:
27  struct Configuration {
28  // weight files for the regression
29  std::vector<std::string> ecalRegressionWeightLabels;
31  std::vector<std::string> ecalRegressionWeightFiles;
32  std::vector<std::string> combinationRegressionWeightLabels;
34  std::vector<std::string> combinationRegressionWeightFiles;
35  };
36 
37  struct ESGetTokens {
38  ESGetTokens(Configuration const& cfg, bool useEcalReg, bool useCombinationReg, edm::ConsumesCollector& cc);
39 
47  };
48 
49  RegressionHelper(Configuration const&, bool useEcalReg, bool useCombinationReg, edm::ConsumesCollector& cc);
50  void checkSetup(const edm::EventSetup&);
53  const EcalRecHitCollection& rechitsEB,
54  const EcalRecHitCollection& rechitsEE) const;
55 
57 
58 private:
61  const EcalRecHitCollection& rechitsEB,
62  const EcalRecHitCollection& rechitsEE,
63  double& energyFactor,
64  double& errorFactor) const;
65 
66 private:
69 
74 
80 };
81 
82 #endif
std::vector< std::string > ecalRegressionWeightFiles
void applyCombinationRegression(reco::GsfElectron &ele) const
std::vector< std::string > combinationRegressionWeightLabels
edm::ESGetToken< GBRForest, GBRWrapperRcd > ecalRegErrorBarrel
RegressionHelper(Configuration const &, bool useEcalReg, bool useCombinationReg, edm::ConsumesCollector &cc)
tuple cfg
Definition: looper.py:296
const GBRForest * ecalRegEndcap_
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeometry
edm::ESGetToken< GBRForest, GBRWrapperRcd > ecalRegEndcap
std::vector< std::string > ecalRegressionWeightLabels
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
edm::ESGetToken< CaloTopology, CaloTopologyRecord > caloTopology
const Configuration cfg_
const CaloTopology * caloTopology_
const GBRForest * ecalRegBarrel_
const GBRForest * ecalRegErrorBarrel_
const ESGetTokens esGetTokens_
void getEcalRegression(const reco::SuperCluster &sc, const reco::VertexCollection &vertices, const EcalRecHitCollection &rechitsEB, const EcalRecHitCollection &rechitsEE, double &energyFactor, double &errorFactor) const
edm::ESGetToken< GBRForest, GBRWrapperRcd > ecalRegBarrel
edm::ESGetToken< GBRForest, GBRWrapperRcd > combinationReg
ESGetTokens(Configuration const &cfg, bool useEcalReg, bool useCombinationReg, edm::ConsumesCollector &cc)
void applyEcalRegression(reco::GsfElectron &electron, const reco::VertexCollection &vertices, const EcalRecHitCollection &rechitsEB, const EcalRecHitCollection &rechitsEE) const
std::vector< std::string > combinationRegressionWeightFiles
const GBRForest * ecalRegErrorEndcap_
edm::ESGetToken< GBRForest, GBRWrapperRcd > ecalRegErrorEndcap
bool combinationRegressionInitialized_
void checkSetup(const edm::EventSetup &)
const CaloGeometry * caloGeometry_
const GBRForest * combinationReg_