From 4d8a20aed74edc0c1c02fc21eaaa848c1f60f63a Mon Sep 17 00:00:00 2001 From: Dale Glass Date: Tue, 7 Mar 2023 00:13:22 +0100 Subject: [PATCH] Use logging categories everywhere in the base scripting engine code --- libraries/script-engine/src/ScriptEngineCast.h | 8 ++++---- libraries/script-engine/src/ScriptEngines.cpp | 2 +- libraries/script-engine/src/ScriptManager.cpp | 18 +++++++++--------- libraries/script-engine/src/ScriptManager.h | 2 +- libraries/script-engine/src/ScriptValue.h | 4 +++- .../script-engine/src/ScriptValueUtils.cpp | 4 ++-- libraries/script-engine/src/Vec3.cpp | 10 +++++----- 7 files changed, 25 insertions(+), 23 deletions(-) diff --git a/libraries/script-engine/src/ScriptEngineCast.h b/libraries/script-engine/src/ScriptEngineCast.h index b908348b06..ea8a9de312 100644 --- a/libraries/script-engine/src/ScriptEngineCast.h +++ b/libraries/script-engine/src/ScriptEngineCast.h @@ -70,7 +70,7 @@ inline QVariant scriptvalue_cast(const ScriptValue& value) { return value.toVariant(); } -//#define MARSHAL_MACRO(FUNCTION, TYPE) +[FUNCTION](ScriptEngine* engine, const void* p) -> ScriptValue { FUNCTION(engine, *(static_cast(p)) ); } +//#define MARSHAL_MACRO(FUNCTION, TYPE) +[FUNCTION](ScriptEngine* engine, const void* p) -> ScriptValue { FUNCTION(engine, *(static_cast(p)) ); } template ScriptValue toScriptValueWrapper(ScriptEngine* engine, const void *p) { @@ -153,12 +153,12 @@ ScriptValue scriptValueFromEnumClass(ScriptEngine* eng, const T& enumValue) { template bool scriptValueToEnumClass(const ScriptValue& value, T& enumValue) { if(!value.isNumber()){ - qDebug() << "ScriptValue \"" << value.toQObject()->metaObject()->className() << "\" is not a number"; + qCDebug(scriptengine) << "ScriptValue \"" << value.toQObject()->metaObject()->className() << "\" is not a number"; return false; } QMetaEnum metaEnum = QMetaEnum::fromType(); if (!metaEnum.isValid()) { - qDebug() << "Invalid QMetaEnum"; + qCDebug(scriptengine) << "Invalid QMetaEnum"; return false; } bool isValid = false; @@ -173,7 +173,7 @@ bool scriptValueToEnumClass(const ScriptValue& value, T& enumValue) { enumValue = static_cast(enumInteger); return true; } else { - qDebug() << "ScriptValue has invalid value " << value.toInteger() << " for enum" << metaEnum.name(); + qCDebug(scriptengine) << "ScriptValue has invalid value " << value.toInteger() << " for enum" << metaEnum.name(); return false; } } diff --git a/libraries/script-engine/src/ScriptEngines.cpp b/libraries/script-engine/src/ScriptEngines.cpp index 88c1c105a2..400a2fc415 100644 --- a/libraries/script-engine/src/ScriptEngines.cpp +++ b/libraries/script-engine/src/ScriptEngines.cpp @@ -360,7 +360,7 @@ void ScriptEngines::loadScripts() { void ScriptEngines::saveScripts() { // Do not save anything if we are in the process of shutting down if (qApp->closingDown()) { - qWarning() << "Trying to save scripts during shutdown."; + qCWarning(scriptengine) << "Trying to save scripts during shutdown."; return; } diff --git a/libraries/script-engine/src/ScriptManager.cpp b/libraries/script-engine/src/ScriptManager.cpp index 26d3e01d1b..4406aaf75e 100644 --- a/libraries/script-engine/src/ScriptManager.cpp +++ b/libraries/script-engine/src/ScriptManager.cpp @@ -1118,7 +1118,7 @@ void ScriptManager::timerFired() { _timerCallCounter++; if (_timerCallCounter % 100 == 0) { - qDebug() << "Script engine: " << _engine->manager()->getFilename() + qCDebug(scriptengine) << "Script engine: " << _engine->manager()->getFilename() << "timer call count: " << _timerCallCounter << " total time: " << _totalTimeInTimerEvents_s; } QElapsedTimer callTimer; @@ -1201,7 +1201,7 @@ void ScriptManager::stopTimer(QTimer *timer) { } QUrl ScriptManager::resolvePath(const QString& include) const { - //qDebug(scriptengine) << "ScriptManager::resolvePath: getCurrentScriptURLs: " << _engine->getCurrentScriptURLs(); + //qCDebug(scriptengine) << "ScriptManager::resolvePath: getCurrentScriptURLs: " << _engine->getCurrentScriptURLs(); QUrl url(include); // first lets check to see if it's already a full URL -- or a Windows path like "c:/" if (include.startsWith("/") || url.scheme().length() == 1) { @@ -1219,7 +1219,7 @@ QUrl ScriptManager::resolvePath(const QString& include) const { do { auto contextInfo = context->functionContext(); parentURL = QUrl(contextInfo->fileName()); - //qDebug(scriptengine) << "ScriptManager::resolvePath: URL get: " << parentURL << " backtrace: " << context->backtrace() << " " << _engine->getCurrentScriptURLs(); + //qCDebug(scriptengine) << "ScriptManager::resolvePath: URL get: " << parentURL << " backtrace: " << context->backtrace() << " " << _engine->getCurrentScriptURLs(); parentContext = context->parentContext(); context = parentContext.get(); } while (parentURL.isRelative() && context); @@ -1420,7 +1420,7 @@ ScriptValue ScriptManager::newModule(const QString& modulePath, const ScriptValu // module.require is a bound version of require that always resolves relative to that module's path auto boundRequire = _engine->evaluate("(function(id) { return Script.require(Script.require.resolve(id, this.filename)); })", "(boundRequire)"); module.setProperty("require", boundRequire, READONLY_PROP_FLAGS); - //qDebug() << "Module object contents" << _engine->scriptValueDebugListMembers(module); + //qCDebug(scriptengine) << "Module object contents" << _engine->scriptValueDebugListMembers(module); return module; } @@ -1818,12 +1818,12 @@ QVariant ScriptManager::cloneEntityScriptDetails(const EntityItemID& entityID) { map["errorInfo"] = "Error: getEntityScriptDetails -- invalid entityID"; } else { #ifdef DEBUG_ENTITY_STATES - qDebug() << "cloneEntityScriptDetails" << entityID << QThread::currentThread(); + qCDebug(scriptengine) << "cloneEntityScriptDetails" << entityID << QThread::currentThread(); #endif EntityScriptDetails scriptDetails; if (getEntityScriptDetails(entityID, scriptDetails)) { #ifdef DEBUG_ENTITY_STATES - qDebug() << "gotEntityScriptDetails" << scriptDetails.status << QThread::currentThread(); + qCDebug(scriptengine) << "gotEntityScriptDetails" << scriptDetails.status << QThread::currentThread(); #endif map["isRunning"] = isEntityScriptRunning(entityID); map["status"] = EntityScriptStatus_::valueToKey(scriptDetails.status).toLower(); @@ -1841,7 +1841,7 @@ QVariant ScriptManager::cloneEntityScriptDetails(const EntityItemID& entityID) { #endif } else { #ifdef DEBUG_ENTITY_STATES - qDebug() << "!gotEntityScriptDetails" << QThread::currentThread(); + qCDebug(scriptengine) << "!gotEntityScriptDetails" << QThread::currentThread(); #endif map["isError"] = true; map["errorInfo"] = "Entity script details unavailable"; @@ -2130,7 +2130,7 @@ void ScriptManager::entityScriptContentAvailable(const EntityItemID& entityID, c } // ENTITY SCRIPT WHITELIST ENDS HERE, uncomment below for original full disabling. - // qDebug() << "(disabled entity script)" << entityID.toString() << scriptOrURL; + // qCDebug(scriptengine) << "(disabled entity script)" << entityID.toString() << scriptOrURL; // exception = makeError("UNSAFE_ENTITY_SCRIPTS == 0"); } @@ -2421,7 +2421,7 @@ void ScriptManager::callEntityScriptMethod(const EntityItemID& entityID, const Q } } if (!callAllowed) { - qDebug() << "Method [" << methodName << "] not remotely callable."; + qCDebug(scriptengine) << "Method [" << methodName << "] not remotely callable."; } } diff --git a/libraries/script-engine/src/ScriptManager.h b/libraries/script-engine/src/ScriptManager.h index 968ec599cb..73fbb77e7d 100644 --- a/libraries/script-engine/src/ScriptManager.h +++ b/libraries/script-engine/src/ScriptManager.h @@ -259,7 +259,7 @@ public: * * ScriptManagerPointer sm = newScriptManager(ScriptManager::NETWORKLESS_TEST_SCRIPT, scriptSource, scriptFilename); * connect(sm.get(), &ScriptManager::printedMessage, [](const QString& message, const QString& engineName){ - * qDebug() << "Printed message from engine" << engineName << ": " << message; + * qCDebug(scriptengine) << "Printed message from engine" << engineName << ": " << message; * }); * * qInfo() << "Running script!"; diff --git a/libraries/script-engine/src/ScriptValue.h b/libraries/script-engine/src/ScriptValue.h index df4e9ea12c..2c1145df6a 100644 --- a/libraries/script-engine/src/ScriptValue.h +++ b/libraries/script-engine/src/ScriptValue.h @@ -26,6 +26,8 @@ #include #include +#include "ScriptEngineLogging.h" + class ScriptEngine; class ScriptValue; class ScriptValueIterator; @@ -210,7 +212,7 @@ ScriptValue ScriptValue::call(const ScriptValue& thisObject, const ScriptValueLi Q_ASSERT(_proxy != nullptr); ScriptEnginePointer scriptEngine = _proxy->engine(); if (scriptEngine == nullptr) { - qDebug() << "Call to deleted or non-existing script engine"; + qCDebug(scriptengine) << "Call to deleted or non-existing script engine"; return ScriptValue(); } return _proxy->call(thisObject, args); diff --git a/libraries/script-engine/src/ScriptValueUtils.cpp b/libraries/script-engine/src/ScriptValueUtils.cpp index 53367ebd76..a7641b9b87 100644 --- a/libraries/script-engine/src/ScriptValueUtils.cpp +++ b/libraries/script-engine/src/ScriptValueUtils.cpp @@ -933,7 +933,7 @@ ScriptValue meshesToScriptValue(ScriptEngine* engine, const MeshProxyList& in) { bool meshesFromScriptValue(const ScriptValue& value, MeshProxyList& out) { ScriptValueIteratorPointer itr(value.newIterator()); - qDebug(scriptengine) << "in meshesFromScriptValue, value.length =" << value.property("length").toInt32(); + qCDebug(scriptengine) << "in meshesFromScriptValue, value.length =" << value.property("length").toInt32(); while (itr->hasNext()) { itr->next(); @@ -941,7 +941,7 @@ bool meshesFromScriptValue(const ScriptValue& value, MeshProxyList& out) { if (meshProxy) { out.append(meshProxy); } else { - qDebug(scriptengine) << "null meshProxy"; + qCDebug(scriptengine) << "null meshProxy"; } } return true; diff --git a/libraries/script-engine/src/Vec3.cpp b/libraries/script-engine/src/Vec3.cpp index 0540848897..6b689d4c4c 100644 --- a/libraries/script-engine/src/Vec3.cpp +++ b/libraries/script-engine/src/Vec3.cpp @@ -26,7 +26,7 @@ #include "ScriptManager.h" Vec3::~Vec3() { - qDebug(scriptengine) << "ScriptMethodV8Proxy destroyed"; + qCDebug(scriptengine) << "ScriptMethodV8Proxy destroyed"; printf("ScriptMethodV8Proxy destroyed"); } @@ -55,14 +55,14 @@ glm::vec3 Vec3::toPolar(const glm::vec3& v) { if (glm::abs(radius) < EPSILON) { return glm::vec3(0.0f, 0.0f, 0.0f); } - + glm::vec3 u = v / radius; - + float elevation, azimuth; - + elevation = glm::asin(-u.y); azimuth = atan2(v.x, v.z); - + // Round off small decimal values if (glm::abs(elevation) < EPSILON) { elevation = 0.0f;