History

Report ScriptableResource memory cost to engine

Zach Pomerantz committed 10 years ago

Commit 1a0a6231 parent 5ec82fa4 files · +37 −11Browse files

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

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+7−0
@@ -274,6 +274,7 @@ static void resultHandlerFromScriptValue(const QScriptValue& value, AnimVariantR · 273 unmodified lines
274274 using ScriptableResourceRawPtr = ScriptableResource*;
275275
276276 static QScriptValue scriptableResourceToScriptValue(QScriptEngine* engine, const ScriptableResourceRawPtr& resource) {
277+ resource->updateMemoryCost(engine);
277278 auto object = engine->newQObject(
278279 const_cast<ScriptableResourceRawPtr>(resource),
279280 QScriptEngine::ScriptOwnership);
@@ -809,6 +810,12 @@ void ScriptEngine::callAnimationStateHandler(QScriptValue callback, AnimVariantM · 529 unmodified lines
809810 }
810811 }
811812
813+void ScriptEngine::updateMemoryCost(const qint64& deltaSize) {
814+ if (deltaSize > 0) {
815+ reportAdditionalMemoryCost(deltaSize);
816+ }
817+}
818+
812819 void ScriptEngine::timerFired() {
813820 QTimer* callingTimer = reinterpret_cast<QTimer*>(sender());
814821 CallbackData timerData = _timerFunctionMap.value(callingTimer);