summaryrefslogtreecommitdiffstats
path: root/src/runtime/q3dsprofiler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/q3dsprofiler.cpp')
-rw-r--r--src/runtime/q3dsprofiler.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/runtime/q3dsprofiler.cpp b/src/runtime/q3dsprofiler.cpp
index 727229a..1a02084 100644
--- a/src/runtime/q3dsprofiler.cpp
+++ b/src/runtime/q3dsprofiler.cpp
@@ -121,6 +121,22 @@ void Q3DSProfiler::trackNewObject(QObject *obj, ObjectType type, const QByteArra
va_end(ap);
}
+void Q3DSProfiler::trackNewObject(QObject *obj, ObjectType type, const QByteArray &id,
+ const QString &info)
+{
+ if (!m_enabled)
+ return;
+
+ ObjectData objd(obj, type, id);
+ objd.info = info;
+ m_objectData.insert(type, objd);
+
+ m_objectDestroyConnections.append(QObject::connect(obj, &QObject::destroyed,
+ [this, obj, type, id]() {
+ m_objectData.remove(type, ObjectData(obj, type, id));
+ }));
+}
+
void Q3DSProfiler::vtrackNewObject(QObject *obj, ObjectType type, const QByteArray &id, const char *info, va_list args)
{
if (!m_enabled)