CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/RecoVertex/ConfigurableVertexReco/interface/VertexRecoManager.h

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