GammaRay is a software introspection tool for Qt applications developed by KDAB. Leveraging the QObject introspection mechanism it allows you to observe and manipulate your application at runtime. This works both locally on your workstation and remotely on an embedded target.
Augmenting your instruction-level debugger, GammaRay allows you to work on a much higher level, with the same concepts as the frameworks you use. This is especially useful for the more complex Qt frameworks such as model/view, state machines or scene graphs.
Among other things GammaRay can:
QObject
tree with live updates.QObject
, and monitor its signals.QObject
inbound and outbound signal/slot connections.QWidget
and QtQuick2
applications.QPainter
operations used to draw a specific widget.QtQuick2
item tree and scenegraph.QAbstractProxyModel
hierarchy and inspect intermediate results in a proxy model chain.QGraphicsView
scene.QGraphicsView
items, including showing their coordinate system,
transformation origin, rotate/zoom/pan, etc.QStyle
.QScriptEngine
(including the usually not accessible one used by QtQuick1 internally).See installation notes
Stay up-to-date with KDAB product announcements:
If you want to contribute, please check out: https://github.com/KDAB/GammaRay/wiki/Get-Involved
Please submit your contributions or issue reports from our GitHub space at https://github.com/KDAB/GammaRay.
KDAB will happily accept external contributions; however, all contributions require a signed KDAB Copyright Assignment Agreement.
Individual contributors (non-employees) are required to electronically agree to the KDAB CLA using the GitHub cla-assistant hook.
Employees, representing their company, must email a completed and signed KDAB Copyright Assignment Agreement to [email protected].
This is needed so we can continue to dual-license GammaRay. Contact [email protected] for more information.
Thanks to our contributors.
The GammaRay Software is © Klarälvdalens Datakonsult AB (KDAB), and is available under the terms of the GPL version 2 (or any later version, at your option). See GPL-2.0-or-later.txt for license details.
Contact KDAB at [email protected] to inquire about commercial licensing.
For terms of redistribution, refer to the corresponding license agreement.
Note that this software relies on 3rd party MIT-licensed projects and various other freely distributable files some of which are unused only for testing and not part of the application itself.
For convenience, GammaRay source bundles (.tar.gz or .zip files) contain code for the graphviz library which is licensed according to the Eclipse Public License v1.0.
GammaRay is supported and maintained by Klarälvdalens Datakonsult AB (KDAB).
The KDAB Group is the global No.1 software consultancy for Qt, C++ and OpenGL applications across desktop, embedded and mobile platforms.
The KDAB Group provides consulting and mentoring for developing Qt applications from scratch and in porting from all popular and legacy frameworks to Qt. We continue to help develop parts of Qt and are one of the major contributors to the Qt Project. We can give advanced or standard trainings anywhere around the globe on Qt as well as C++, OpenGL, 3D and more.
If you would like to have a custom plugin for GammaRay to visualize, profile or debug your own specific components or applications, get in touch with us via https://www.kdab.com/contact. KDAB engineers know how to write GammaRay plugins and can be contracted to help you get yours working and improve your development efficiency.
GammaRay and the GammaRay logo are registered trademarks of Klarälvdalens Datakonsult AB in the European Union, the United States and/or other countries. Other product and company names and logos may be trademarks or registered trademarks of their respective companies.