Index: source/ps/scripting/JSInterface_Profiler2.h
===================================================================
--- source/ps/scripting/JSInterface_Profiler2.h
+++ source/ps/scripting/JSInterface_Profiler2.h
@@ -0,0 +1,30 @@
+/* Copyright (C) 2021 Wildfire Games.
+ * This file is part of 0 A.D.
+ *
+ * 0 A.D. is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 0 A.D. is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with 0 A.D. If not, see .
+ */
+
+#ifndef INCLUDED_JSI_PROFILER2
+#define INCLUDED_JSI_PROFILER2
+
+#include "scriptinterface/ScriptInterface.h"
+
+namespace JSI_Profiler2
+{
+ void Toggle(ScriptInterface::CmptPrivate* pCmptPrivate);
+ void SaveToFile(ScriptInterface::CmptPrivate* pCmptPrivate);
+ void RegisterScriptFunctions(const ScriptInterface& scriptInterface);
+}
+
+#endif // INCLUDED_JSI_PROFILER2
Index: source/ps/scripting/JSInterface_Profiler2.cpp
===================================================================
--- source/ps/scripting/JSInterface_Profiler2.cpp
+++ source/ps/scripting/JSInterface_Profiler2.cpp
@@ -0,0 +1,39 @@
+/* Copyright (C) 2021 Wildfire Games.
+ * This file is part of 0 A.D.
+ *
+ * 0 A.D. is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 0 A.D. is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with 0 A.D. If not, see .
+ */
+
+#include "precompiled.h"
+
+#include "JSInterface_Profiler2.h"
+
+#include "ps/Profiler2.h"
+#include "scriptinterface/ScriptInterface.h"
+
+void JSI_Profiler2::Toggle(ScriptInterface::CmptPrivate* UNUSED(pCmptPrivate))
+{
+ g_Profiler2.Toggle();
+}
+
+void JSI_Profiler2::SaveToFile(ScriptInterface::CmptPrivate* UNUSED(pCmptPrivate))
+{
+ g_Profiler2.SaveToFile();
+}
+
+void JSI_Profiler2::RegisterScriptFunctions(const ScriptInterface& scriptInterface)
+{
+ scriptInterface.RegisterFunction("Profiler2_Toggle");
+ scriptInterface.RegisterFunction("Profiler2_SaveToFile");
+}