All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
larsim/larsim/EventWeight/Base/WeightCalcFactory.h
Go to the documentation of this file.
1 #ifndef _WEIGHTCALCFACTORY_H_
2 #define _WEIGHTCALCFACTORY_H_
3 
4 #include <map>
5 #include <string>
6 
7 namespace evwgh {
8  class WeightCalc;
9  class WeightCalcCreator;
10 
12  {
13  public:
14  static WeightCalc* Create(const std::string& classname);
15  static void Register(const std::string& wghcalcname,
16  WeightCalcCreator* creator);
17 
18  private:
19  static std::map<std::string, WeightCalcCreator*>& GetTable();
20  };
21 }
22 
23 #endif // _WEIGHTCALCFACTORY_H_
static WeightCalc * Create(const std::string &classname)
static std::map< std::string, WeightCalcCreator * > & GetTable()
static void Register(const std::string &wghcalcname, WeightCalcCreator *creator)