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
0026 };
0027 }
0028 #endif