diff --git a/interface/src/scripting/TestScriptingInterface.cpp b/interface/src/scripting/TestScriptingInterface.cpp index 22a33ae858..a8901365e5 100644 --- a/interface/src/scripting/TestScriptingInterface.cpp +++ b/interface/src/scripting/TestScriptingInterface.cpp @@ -134,3 +134,9 @@ void TestScriptingInterface::startTraceEvent(QString name) { void TestScriptingInterface::endTraceEvent(QString name) { tracing::traceEvent(trace_test(), name, tracing::DurationEnd); } + +void TestScriptingInterface::profileRange(const QString& name, QScriptValue fn) { + PROFILE_RANGE(script, name); + fn.call(); +} + diff --git a/interface/src/scripting/TestScriptingInterface.h b/interface/src/scripting/TestScriptingInterface.h index 9539493b51..73b8f0ac93 100644 --- a/interface/src/scripting/TestScriptingInterface.h +++ b/interface/src/scripting/TestScriptingInterface.h @@ -13,6 +13,8 @@ #include #include +class QScriptValue; + class TestScriptingInterface : public QObject { Q_OBJECT @@ -69,6 +71,7 @@ public slots: void endTraceEvent(QString name); + Q_INVOKABLE void profileRange(const QString& name, QScriptValue function); private: bool waitForCondition(qint64 maxWaitMs, std::function condition);