Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:12:59

0001 #ifndef FWCore_PluginManager_PresenceFactory_h
0002 #define FWCore_PluginManager_PresenceFactory_h
0003 
0004 #include "FWCore/Utilities/interface/Presence.h"
0005 #include "FWCore/PluginManager/interface/PluginFactory.h"
0006 
0007 #include <string>
0008 #include <memory>
0009 
0010 namespace edm {
0011   typedef edmplugin::PluginFactory<Presence*()> PresencePluginFactory;
0012 
0013   typedef Presence*(PresenceFunc)();
0014 
0015   class PresenceFactory {
0016   public:
0017     ~PresenceFactory();
0018 
0019     static PresenceFactory* get();
0020 
0021     std::unique_ptr<Presence> makePresence(std::string const& presence_type) const;
0022 
0023   private:
0024     PresenceFactory();
0025     //static PresenceFactory singleInstance_;
0026   };
0027 }  // namespace edm
0028 #endif  // FWCore_PluginManager_PresenceFactory_h