CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MVAObjectCache.h
Go to the documentation of this file.
1 #ifndef __RecoEgamma_EgammaTools_MVAObjectCache_H__
2 #define __RecoEgamma_EgammaTools_MVAObjectCache_H__
3 
5 
7 
8 #include <memory>
9 #include <string>
10 #include <unordered_map>
11 
12 namespace egamma {
13 
14  class MVAObjectCache {
15  public:
16  typedef std::unique_ptr<const AnyMVAEstimatorRun2Base> MVAPtr;
17 
18  MVAObjectCache(const edm::ParameterSet& conf);
19 
20  const MVAPtr& getMVA(const std::string& mva) const;
21 
22  const std::unordered_map<std::string,MVAPtr>& allMVAs() const {
23  return mvas_;
24  }
25  private:
26  std::unordered_map<std::string,MVAPtr> mvas_;
27  };
28 
29 }
30 #endif
const std::unordered_map< std::string, MVAPtr > & allMVAs() const
std::unique_ptr< const AnyMVAEstimatorRun2Base > MVAPtr
MVAObjectCache(const edm::ParameterSet &conf)
const MVAPtr & getMVA(const std::string &mva) const
std::unordered_map< std::string, MVAPtr > mvas_