CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2_patch1/src/RecoVertex/ConfigurableVertexReco/interface/VertexFitterManager.h

Go to the documentation of this file.
00001 #ifndef _VertexFitterManager_H_
00002 #define _VertexFitterManager_H_
00003 
00004 #include "RecoVertex/ConfigurableVertexReco/interface/AbstractConfFitter.h"
00005 #include <map>
00006 #include <string>
00007 
00012 class VertexFitterManager {
00013 
00014 public:
00015   static VertexFitterManager & Instance();
00016   void registerFitter ( const std::string & name, AbstractConfFitter * o,
00017                           const std::string & description );
00018   std::string describe ( const std::string & );
00019 
00020   AbstractConfFitter * get ( const std::string & );
00021   std::map < std::string, AbstractConfFitter * > get ();
00022 
00023   ~VertexFitterManager();
00024   VertexFitterManager * clone() const;
00025 
00026 private:
00027   VertexFitterManager ( const VertexFitterManager & );
00028   VertexFitterManager ();
00029   std::map < std::string, AbstractConfFitter * > theAbstractConfFitters;
00030   std::map < std::string, std::string > theDescription;
00031 };
00032 
00033 #endif // _VertexFitterManager_H_