History

Add entity PPS per script configuration

Ryan Huffman committed 9 years ago

Commit f75eced1 parent 534d3c55 files · +106 −2Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 5 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+17−0
@@ -1393,6 +1393,16 @@ void ScriptEngine::forwardHandlerCall(const EntityItemID& entityID, const QStrin · 1392 unmodified lines
13931393 }
13941394 }
13951395
1396+int ScriptEngine::getNumRunningEntityScripts() const {
1397+ int sum = 0;
1398+ for (auto& st : _entityScripts) {
1399+ if (st.status == RUNNING) {
1400+ ++sum;
1401+ }
1402+ }
1403+ return sum;
1404+}
1405+
13961406 bool ScriptEngine::getEntityScriptDetails(const EntityItemID& entityID, EntityScriptDetails &details) const {
13971407 auto it = _entityScripts.constFind(entityID);
13981408 if (it == _entityScripts.constEnd()) {
@@ -1456,6 +1466,7 @@ void ScriptEngine::entityScriptContentAvailable(const EntityItemID& entityID, co · 57 unmodified lines
14561466 newDetails.status = ERROR_LOADING_SCRIPT;
14571467 newDetails.errorInfo = "Failed to load script";
14581468 _entityScripts[entityID] = newDetails;
1469+ emit entityScriptDetailsUpdated();
14591470 return;
14601471 }
14611472
@@ -1467,6 +1478,7 @@ void ScriptEngine::entityScriptContentAvailable(const EntityItemID& entityID, co · 5 unmodified lines
14671478 newDetails.status = ERROR_RUNNING_SCRIPT;
14681479 newDetails.errorInfo = "Bad syntax";
14691480 _entityScripts[entityID] = newDetails;
1481+ emit entityScriptDetailsUpdated();
14701482 return; // done processing script
14711483 }
14721484
@@ -1497,6 +1509,7 @@ void ScriptEngine::entityScriptContentAvailable(const EntityItemID& entityID, co · 24 unmodified lines
14971509 newDetails.status = ERROR_RUNNING_SCRIPT;
14981510 newDetails.errorInfo = exceptionMessage;
14991511 _entityScripts[entityID] = newDetails;
1512+ emit entityScriptDetailsUpdated();
15001513
15011514 return;
15021515 }
@@ -1523,6 +1536,7 @@ void ScriptEngine::entityScriptContentAvailable(const EntityItemID& entityID, co · 20 unmodified lines
15231536 newDetails.status = ERROR_RUNNING_SCRIPT;
15241537 newDetails.errorInfo = "Could not find constructor";
15251538 _entityScripts[entityID] = newDetails;
1539+ emit entityScriptDetailsUpdated();
15261540
15271541 return; // done processing script
15281542 }
@@ -1544,6 +1558,7 @@ void ScriptEngine::entityScriptContentAvailable(const EntityItemID& entityID, co · 15 unmodified lines
15441558 newDetails.lastModified = lastModified;
15451559 newDetails.definingSandboxURL = sandboxURL;
15461560 _entityScripts[entityID] = newDetails;
1561+ emit entityScriptDetailsUpdated();
15471562
15481563 if (isURL) {
15491564 setParentURL("");
@@ -1575,6 +1590,7 @@ void ScriptEngine::unloadEntityScript(const EntityItemID& entityID) { · 25 unmodified lines
15751590 }
15761591 _entityScripts.remove(entityID);
15771592 stopAllTimersForEntityScript(entityID);
1593+ emit entityScriptDetailsUpdated();
15781594 }
15791595 }
15801596
@@ -1596,6 +1612,7 @@ void ScriptEngine::unloadAllEntityScripts() { · 15 unmodified lines
15961612 }
15971613 }
15981614 _entityScripts.clear();
1615+ emit entityScriptDetailsUpdated();
15991616
16001617 #ifdef DEBUG_ENGINE_STATE
16011618 qCDebug(scriptengine) << "---- CURRENT STATE OF ENGINE: --------------------------";