00001 #ifndef FWCore_PluginManager_PresenceFactory_h 00002 #define FWCore_PluginManager_PresenceFactory_h 00003 00004 #include "FWCore/Utilities/interface/Presence.h" 00005 #include "FWCore/PluginManager/interface/PluginFactory.h" 00006 00007 #include <string> 00008 #include <memory> 00009 00010 namespace edm { 00011 typedef edmplugin::PluginFactory<Presence* ()> PresencePluginFactory; 00012 00013 typedef Presence* (PresenceFunc)(); 00014 00015 class PresenceFactory { 00016 public: 00017 ~PresenceFactory(); 00018 00019 static PresenceFactory* get(); 00020 00021 std::auto_ptr<Presence> 00022 makePresence(std::string const & presence_type) const; 00023 00024 private: 00025 PresenceFactory(); 00026 //static PresenceFactory singleInstance_; 00027 }; 00028 } 00029 #endif // FWCore_PluginManager_PresenceFactory_h