klayout 通过宏提供调用脚本的功能。
下面举例说明:
类Macro定义在lymMacro.h
lym::Macro macro;
macro.set_interpreter(lym::Macro::Python);
QString file_path = QCoreApplication::applicationDirPath() +"/python/test.py";
macro.set_file_path(file_path.toStdString()); //设置脚本路径
macro.load_from(file_path.toStdString()); //加载脚本
try
{
macro.run (); //运行脚本
}
catch (tl::ExitException &)
{
}
catch (tl::ScriptError &error)
{
QMessageBox::warning(nullptr, "error!",QString::fromStdString(error.msg())); //显示脚本出错信息
}