#include "context_manager.h" #include "native_bridge.h" #include "plugin/shader_plugin.h" Q_INVOKABLE void NativeBridge::function(int contextId, QString module, QString methodName, QString callbackId, QJSValue jsValue) { qDebug() << "contextId: " + QString::number(contextId) + ", " + "module: " + module + ", " + "methodName: " + methodName + ", " + "callbackId: " + callbackId + ", " + "arguments: " + jsValue.toString(); Context *context = ContextManager::getInstance()->getContext(contextId); QString value = context->driver->getRegistry()->acquirePluginInfo(module); qDebug() << value; if (value.contains("ShaderPlugin")) { ShaderPlugin shaderPlugin(context); QMetaObject::invokeMethod( &shaderPlugin, methodName.toStdString().c_str(), Qt::AutoConnection, Q_ARG(QJSValue, jsValue)); } }