本文整理汇总了C++中QPluginLoader::deleteLater方法的典型用法代码示例。如果您正苦于以下问题:C++ QPluginLoader::deleteLater方法的具体用法?C++ QPluginLoader::deleteLater怎么用?C++ QPluginLoader::deleteLater使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QPluginLoader
的用法示例。
在下文中一共展示了QPluginLoader::deleteLater方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: scanPlugins
void PluginManager::scanPlugins(bool initialScan) {
if (initialScan) {
QFileInfoList list = _pluginPath.entryInfoList();
for (QFileInfo info : list) {
QPluginLoader* loader = new QPluginLoader(info.absoluteFilePath(), this);
QJsonObject metaData = loader->metaData().value("MetaData").toObject();
const QString name = metaData.value("name").toString("Unknown");
const QString role = metaData.value("role").toString("Unknown");
// Ensure IID is inserted.
metaData.insert("IID", loader->metaData().value("IID"));
AdamantPluginInfo* data = new AdamantPluginInfo;
data->state = PluginState::Unknown;
data->name = name;
data->role = role;
data->metaData = metaData;
data->instance = nullptr;
data->script = nullptr;
data->loader = nullptr;
data->file = info;
data->lastModified = info.lastModified();
_pluginsByRole.insertMulti(role, data);
emit pluginDiscovered(name);
loader->deleteLater();
}
}
}