6 #ifndef KNOWROB_PLUGIN_LIBRARY_H_
7 #define KNOWROB_PLUGIN_LIBRARY_H_
12 #include "knowrob/plugins/PluginFactory.h"
19 class PluginLibrary :
public PluginFactory<T> {
59 create_ = (std::shared_ptr<T> (*)()) dlsym(
handle_,
"knowrob_createPlugin");
68 std::shared_ptr<NamedPlugin<T>>
create(std::string_view pluginID)
override {
73 std::string_view
name()
const override {
return name_; };
82 std::shared_ptr<T> (*
create_)();
std::shared_ptr< NamedPlugin< T > > create(std::string_view pluginID) override
const std::string dllPath_
~PluginLibrary() override
std::string_view name() const override
PluginLibrary(const PluginLibrary &)=delete
PluginLibrary(std::string_view dllPath)
std::shared_ptr< T >(* create_)()