本文整理汇总了C++中Plugin::getInitFunction方法的典型用法代码示例。如果您正苦于以下问题:C++ Plugin::getInitFunction方法的具体用法?C++ Plugin::getInitFunction怎么用?C++ Plugin::getInitFunction使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Plugin
的用法示例。
在下文中一共展示了Plugin::getInitFunction方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: load
int PluginManager::load(const std::string& path)
{
// TODO: Resolve symbolic links and make path absolute
// Don't load the same dynamic library twice
if (dynPluginMap_.find(std::string(path)) != dynPluginMap_.end()) {
DEBUG("plugin: already loaded");
return -1;
}
std::string error;
Plugin *plugin = Plugin::load(std::string(path), error);
if (!plugin) {
DEBUG("plugin: %s", error.c_str());
return -1;
}
SFLPluginInitFunc init_func;
init_func = (SFLPluginInitFunc)(plugin->getInitFunction());
if (!init_func) {
DEBUG("plugin: no init symbol");
return -1;
}
if (initPlugin(init_func))
return -1;
dynPluginMap_[path] = std::shared_ptr<Plugin>(plugin);
return 0;
}