JSON plugin metadata initial

* Added json files along with FILE macro for all drivers
* Get CSimulatorInfo from JSON rather than from ISimulatorFactory
This commit is contained in:
Michał Garapich
2015-02-11 18:54:11 +01:00
committed by Roland Winklmeier
parent c5a1a6048b
commit afc22397bb
10 changed files with 30 additions and 4 deletions

View File

@@ -573,13 +573,15 @@ namespace BlackCore
CLogMessage(this).info("Try to load plugin: %1") << fileName;
QString pluginPath = m_pluginsDir.absoluteFilePath(fileName);
QPluginLoader loader(pluginPath);
QJsonObject json = loader.metaData();
QObject *plugin = loader.instance();
if (plugin)
{
ISimulatorFactory *factory = qobject_cast<ISimulatorFactory *>(plugin);
if (factory)
{
CSimulatorInfo simulatorInfo = factory->getSimulatorInfo();
// CSimulatorInfo simulatorInfo = factory->getSimulatorInfo();
CSimulatorInfo simulatorInfo(json);
m_simulatorFactories.insert(factory);
ISimulatorListener *listener = factory->createListener(this);

View File

@@ -257,6 +257,7 @@ namespace BlackCore
//! Simulator listener instance
virtual ISimulatorListener *createListener(QObject *parent = nullptr) = 0;
};
//! Common base class with providers, interface and some base functionality