CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
VertexRecoManager.h
Go to the documentation of this file.
1 #ifndef _VertexRecoManager_H_
2 #define _VertexRecoManager_H_
3 
5 #include <map>
6 #include <string>
7 #include <functional>
8 #include <memory>
9 
15 public:
16  static VertexRecoManager &Instance();
19  const std::string &description);
20  std::string describe(const std::string &) const;
21 
22  std::unique_ptr<AbstractConfReconstructor> get(const std::string &) const;
23  std::vector<std::string> getNames() const;
24 
26  VertexRecoManager *clone() const;
27 
28 private:
31  std::map<std::string, std::function<AbstractConfReconstructor *()> > theAbstractConfReconstructors;
32  std::map<std::string, std::string> theDescription;
33 };
34 
35 #endif // _VertexRecoManager_H_
VertexRecoManager * clone() const
std::string describe(const std::string &) const
static VertexRecoManager & Instance()
std::map< std::string, std::string > theDescription
std::map< std::string, std::function< AbstractConfReconstructor *()> > theAbstractConfReconstructors
std::vector< std::string > getNames() const
void registerReconstructor(const std::string &name, std::function< AbstractConfReconstructor *()> o, const std::string &description)