HAL
plugin_relay.cpp
Go to the documentation of this file.
2 
4 #include <QDebug>
5 
6 namespace hal
7 {
8  PluginRelay::PluginRelay(QObject* parent) : QObject(parent), mGuiPluginTable(nullptr)
9  {
10  mCallbackId = plugin_manager::add_model_changed_callback(std::bind(&PluginRelay::pluginManagerCallback, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));
11  }
12 
14  {
16  }
17 
18  void PluginRelay::pluginManagerCallback(bool is_load, const std::string& plugin_name, const std::string& plugin_path)
19  {
20  QString name = QString::fromStdString(plugin_name);
21  QString path = QString::fromStdString(plugin_path);
22 
23  if (is_load)
24  Q_EMIT pluginLoaded(name, path);
25  else
26  Q_EMIT pluginUnloaded(name, path);
27  }
28 }
PluginRelay(QObject *parent=nullptr)
Definition: plugin_relay.cpp:8
void pluginManagerCallback(bool is_load, const std::string &plugin_name, const std::string &plugin_path)
void pluginUnloaded(const QString &name, const QString &path)
void pluginLoaded(const QString &name, const QString &path)
u64 add_model_changed_callback(std::function< void(bool, std::string const &, std::string const &)> callback)
void remove_model_changed_callback(u64 id)
std::string name
Q_EMITQ_EMIT
QString fromStdString(const std::string &str)