aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlprofiler/qmlprofilerdata.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make QtQmlDebug independent of QtQmlUlf Hermann2018-04-241-57/+53
| | | | | | | | | | | | | | | | This means QtQmlDebug needs its own qqmlprofilerdefintions.h. This is a good thing because this way we notice if we change the definitions in an incompatible way. The test uses QtQmlDebug after all. Also, qqmldebugserviceinterfaces_p.h is not available anymore, which means the service names have to be spelled out. This, also, is beneficial as it prevents us from accidentally changing the names. In the context of QmlDebug we don't need to namespace the profiler definitions, either. This simplifies some code. Task-number: QTBUG-60996 Change-Id: Ibb39e48c9b758687d68b8ce4431f45eb26939a09 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Use better QmlProfiler client from Qt CreatorUlf Hermann2018-02-021-390/+337
| | | | | | | | | | | | This client can track locations itself, and thus doesn't require the server to send the event types over and over with each message. Once all our client implementations have this feature we can drop a lot of code. Furthermore, this way we can write regression tests for bugs that only occur when client side location tracking is active. Change-Id: I3735392452e20a7be98e92b900fadef04701d85f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/5.9' into devLars Knoll2017-05-021-0/+1
|\ | | | | | | Change-Id: I71275a2076c3d32ee2896571be882067320a2e9e
| * Run includemocs in qtdeclarativeThiago Macieira2017-04-261-0/+1
| | | | | | | | | | Change-Id: I84e363d735b443cb9beefffd14b8c023a37aa489 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Migrate to QRegularExpressionSamuel Gaist2017-04-091-5/+5
|/ | | | | | | | This patch updates the code base to use QRegularExpression in the place of the deprecated QRegExp class. Change-Id: I3231ac9f7902a1cd16cd4ef5f26e6cdc05e2fa4b Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* QRegExp include cleanupSamuel Gaist2017-03-171-0/+1
| | | | | | | | This patch adds missing include statement where the QRegExp class is used. Change-Id: I02d2995dd380f1e4db3777ae9759098c0e7757bd Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* tools: use const (and const APIs) moreAnton Kudryavtsev2016-08-221-5/+5
| | | | | | | For CoW types, prefer const methods to avoid needless detach()ing. Change-Id: If9018391c001eba3b4b2061d06c4caa8136811ab Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* tools: replace 'foreach' with 'range for'Anton Kudryavtsev2016-08-201-1/+1
| | | | | | | | | Mark some local variables or parameters as const to prevent detach()'ing. Use qAsConst where is not possible mark as const. Change-Id: I0a777c3bd855abd3bb1ad0907152360cf4a1050e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* tools: use QStringRef moreAnton Kudryavtsev2016-08-121-3/+3
| | | | | | Change-Id: I4fccbfb2b965daf3a31846d1d51d39eb74ad944d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Updated license headersJani Heikkinen2016-01-201-17/+12
| | | | | | | | | | | | From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) Change-Id: I04760a0801837cfc516d1c7c02d4f503f6bb70b6 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Tools: fix expensive iteration over QHash::keys()Anton Kudryavtsev2016-01-151-3/+6
| | | | | Change-Id: I902bafdbc2ddfceeacfc9ef274513a2b0a23aed7 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
* QtDeclarative: use prefix ++/-- for iterator typesAnton Kudryavtsev2016-01-091-2/+2
| | | | | | | | ... because it's useful for non-primitive types. These were the only two remaining instances in QtDeclarative. Change-Id: I52eba66313e953762d87313ccbd7ee0be9039be1 Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* QmlProfiler: Remove "Source code not available"Ulf Hermann2015-11-051-3/+1
| | | | | | | | | A missing tag is much better to express that piece of information. The original message would have to be parsed in order to figure out that it's actually not source code. Change-Id: I3cc7cad26c4fad84f5d1aa63c59a84523109dd2e Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Move QML profiler client to qmldebugUlf Hermann2015-10-301-15/+16
| | | | | Change-Id: I506909b68be6cbad631d1645673c2d38460aed33 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* QmlProfiler: Collect useful input eventsUlf Hermann2015-10-301-11/+37
| | | | | | | | | Just "Key" or "Mouse" as only attributes of input events are not very useful. This change adds some additional information and also collects input events from QQuickWindow. Change-Id: I062bbffeef3fa87776bc8be33f2321edf793faa2 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* QmlProfiler: Fix lookup of type stringsUlf Hermann2015-10-281-2/+2
| | | | | | | sizeof(QString) == sizeof(char *), but only incidentally. Change-Id: I1d39825746f5c6a74b540be7f254afbf0fb375d0 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-10-141-2/+2
|\ | | | | | | Change-Id: I11ea57222ba5aa683b7bfd7735fbc1d2cf86e875
| * Tools: Fix single-character string literals.Friedemann Kleint2015-10-131-2/+2
| | | | | | | | | | | | | | Use character literals where applicable. Change-Id: I55679dcc13c4c79567712c0dfaaabc2b84fee010 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
* | qmlprofiler: Improve output of event location and optional descriptionsUlf Hermann2015-09-151-4/+7
| | | | | | | | | | | | | | | | | | | | | | Line and column information can be useful even without a file name. The file name can sometimes be inferred from the function being run and doesn't have to be stated again. Empty displayName and details tags are pretty useless, though. Change-Id: I0a65696d391e00d56f04acf646e3179dca163883 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | qmlprofiler: Remove V8 profiler clientUlf Hermann2015-08-281-141/+1
|/ | | | | | | It's been a long time since the last Qt version with V8. Change-Id: Iae36dd1c5bb6275254c6a64a8e6b843454139e2b Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Ulf Hermann2015-08-181-0/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/debugger/qv4debugservice.cpp src/qml/jsruntime/qv4value_inl_p.h src/qml/jsruntime/qv4value_p.h src/qml/memory/qv4mm.cpp src/qml/memory/qv4mm_p.h src/qml/qml/qqmlnotifier_p.h src/qml/qml/qqmlproperty.cpp src/quick/items/qquickflickable.cpp src/quick/items/qquicktextedit.cpp tests/auto/quick/qquickwindow/BLACKLIST The extra changes in qqmlbinding.cpp are ported from changes to qqmlproperty.cpp that occurred in parallel with writeBinding() being moved to qqmlbinding.cpp. Change-Id: I16d1920abf448c29a01822256f52153651a56356
| * qmlprofiler: Add missing #include <limits>.Friedemann Kleint2015-07-281-0/+2
| | | | | | | | | | | | | | Fixes the build with VS 2008 (Desktop). Change-Id: I8c9682526754586ea6f597f540a4d5b42363f052 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
* | qmlprofiler: Use QQmlProfilerDefinitions for accessing definitionsUlf Hermann2015-07-231-47/+59
| | | | | | | | | | Change-Id: I6def7dd8a0ce0db22ad4829029d8510f5869c813 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Fix inefficient usages of qDeleteAll()Sérgio Martins2015-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | No reason to iterate through all items to create a temporary QList we don't need. Change-Id: I3c5388f026ded0290afb9dd35fc7934011c4998d Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | qmlprofiler: Record input eventsUlf Hermann2015-06-091-5/+35
| | | | | | | | | | Change-Id: Ib6413d97638b192377d7dbeb19ed0c2f733a06a1 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | qmlprofiler: Improve options for trace outputUlf Hermann2015-06-061-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | * Remove the auto-generation of file names. * Accept file names as parameters or from interactive commands * Output to stdout by default for better scripting and quick preview * Decouple output from clearing of data so that you can write the same data multiple times. Task-number: QTBUG-43066 Change-Id: Ia4cc3701cbac7c6f8948b11307130a5d6a2ff44c Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | qmlprofiler: Allow aggregation of multiple traces into one file.Ulf Hermann2015-05-211-4/+6
|/ | | | | Change-Id: Ifc9f9adafa3178e68212fb97914a6f4cae9a4c83 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-121-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* Update license headers and add new licensesJani Heikkinen2014-08-251-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0 Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Write memory events into tracefiles generated by qmlprofilerUlf Hermann2014-08-121-0/+23
| | | | | Change-Id: Ic01505194f29967ed1aad16fe36e14dc5532ae25 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Javascript heap profilerUlf Hermann2014-06-061-1/+2
| | | | | | | | | This profiler tracks every memory allocation and deallocation, by the MemoryManager as well as the V4 VM, and exposes them as a stream of events to the profiler service. Change-Id: I85297d498f0a7eb55df5d7829c4b7307de980519 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Properly support all events in trace files and clean up a bit.Ulf Hermann2014-06-061-67/+187
| | | | | | | | | In particular, use both message and range type to identify events so that we can get rid of the messy type aliasing. Task-number: QTBUG-36953 Change-Id: I691a7501aa285f78f7ce5b7017ef50628f44fcf7 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Save painting events in Qt5 style with thread ID from qmlprofilerUlf Hermann2014-03-181-18/+17
| | | | | | | | This is necessary to support https://codereview.qt-project.org/80391 and to make the trace files consistent with Qt Creator's. Change-Id: I45490c33ae9bd8fbbb6bace08bdc2f44c76bf966 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Remove qSort usages from declarativeGiuseppe D'Angelo2013-09-131-2/+4
| | | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: I8fa7d0186cc8f0ba562695974829e37f1eb87f2f Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-231-24/+24
| | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QmlProfiler: storing binding typeChristiaan Janssen2012-05-041-3/+8
| | | | | Change-Id: If1f02e1e6f6ce6aba9874a63d01a08d57571f991 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
* QmlProfiler: updated standalone appChristiaan Janssen2012-03-131-0/+602
Using a stripped-down version of the profiler data structure. Change-Id: I93a0b12462edea0ca8a1d0db42aa892aa2afc919 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>