зі. если кому интересно, стоит задача построить график по заданной формуле. Для построения графика использую Qwt, а чтобы не писать парсер, решил просто вызывать функцию Lua, где будет записана форуме по которой считать.
вы эту задачу пытаетесь решить?
погрузите в скриптовый движок объект который будет связующим звеном между вашей программой и скриптом.
У объекта пусть будет сигнал calculate(int x), и слот result(int x, int y)
class myProxy(.... )
: QObject(..... )
{
Q_OBJECT
...
public:
...
callF(int x) {emit calculate(x);};
signals:
void calculate(int x);
...
public slots:
void result(int x, int y)
}
QScriptEngine myEngine;
myProxy myObject;
myEngine.globalObject().setProperty("myObj", myEngine.newQObject(&myObject));
QString myScript = " function myCalculate(x) { myObj.result(x, x*2); return 0; }; myObj.calculate.connect(myCalculate);"
myEngine.evaluate(myScript);
Теперь, в принципе пока вы не уничтожите myEngine, вызов в основной программе myObject.callF() будет приводить к обмену сигналами и вызову у вашего объекта слота result()...
там надо перечитать насчет того, с какой момент скриптовый движок считает что скрипт закончил работу, и как его убедить не прерывать "исполнение" скрипта пока нам надо...
Как я понимаю, через qScriptConnect() можно подключить сигнал непосредственно к функции внутри скрипта, но с этим я не эксперементировал.
Может что-то и напутал... не обессудьте, писал по быстрому...