From 2cb2290da37008dbe4a2d2199d33d90ac21faaf3 Mon Sep 17 00:00:00 2001 From: Christiaan Janssen Date: Mon, 13 Feb 2012 14:06:47 +0100 Subject: [PATCH] QmlProfiler: sending start profiling message Will be used by the client to show status in the GUI. When profiling is stopped, data is sent immediately, therefore no "stop profiling" message. Change-Id: Idd12069a9707296b87e305e8b3cbf8e324989a3f Reviewed-by: Kai Koehne --- .../debugger/qdeclarativeprofilerservice.cpp | 16 +++++++++++++++- .../debugger/qdeclarativeprofilerservice_p.h | 2 ++ 2 files changed, 17 insertions(+), 1 deletions(-) diff --git a/src/declarative/debugger/qdeclarativeprofilerservice.cpp b/src/declarative/debugger/qdeclarativeprofilerservice.cpp index c5b6b65..17ee3e5 100644 --- a/src/declarative/debugger/qdeclarativeprofilerservice.cpp +++ b/src/declarative/debugger/qdeclarativeprofilerservice.cpp @@ -124,6 +124,11 @@ bool QDeclarativeProfilerService::stopProfiling() return profilerInstance()->stopProfilingImpl(); } +void QDeclarativeProfilerService::sendStartedProfilingMessage() +{ + profilerInstance()->sendStartedProfilingMessageImpl(); +} + void QDeclarativeProfilerService::addEvent(EventType t) { profilerInstance()->addEventImpl(t); @@ -174,7 +179,7 @@ bool QDeclarativeProfilerService::startProfilingImpl() bool success = false; if (!profilingEnabled()) { setProfilingEnabled(true); - addEventImpl(StartTrace); + sendStartedProfilingMessageImpl(); success = true; } return success; @@ -191,6 +196,15 @@ bool QDeclarativeProfilerService::stopProfilingImpl() return success; } +void QDeclarativeProfilerService::sendStartedProfilingMessageImpl() +{ + if (!QDeclarativeDebugService::isDebuggingEnabled() || !m_enabled) + return; + + QDeclarativeProfilerData ed = {m_timer.nsecsElapsed(), (int)Event, (int)StartTrace, QString(), -1, -1, 0, 0}; + QDeclarativeDebugService::sendMessage(ed.toByteArray()); +} + void QDeclarativeProfilerService::addEventImpl(EventType event) { if (!QDeclarativeDebugService::isDebuggingEnabled() || !m_enabled) diff --git a/src/declarative/debugger/qdeclarativeprofilerservice_p.h b/src/declarative/debugger/qdeclarativeprofilerservice_p.h index f5ca8ec..d29690b 100644 --- a/src/declarative/debugger/qdeclarativeprofilerservice_p.h +++ b/src/declarative/debugger/qdeclarativeprofilerservice_p.h @@ -130,6 +130,7 @@ public: static bool startProfiling(); static bool stopProfiling(); + static void sendStartedProfilingMessage(); static void addEvent(EventType); static void startRange(RangeType); static void rangeData(RangeType, const QString &); @@ -151,6 +152,7 @@ protected: private: bool startProfilingImpl(); bool stopProfilingImpl(); + void sendStartedProfilingMessageImpl(); void addEventImpl(EventType); void startRangeImpl(RangeType); void rangeDataImpl(RangeType, const QString &); -- 1.7.2.5